DEV Community

Discussion on: Always a beginner: Jumping from one programming language to another

Collapse
 
ssimontis profile image
Scott Simontis

Work for a consultancy for a few years...that's where I learned the broadest set of skills throughout my career. If you can find the right start up, you can gain exposure to some really unique experiences as well. My first job was doing Windows embedded work in C# and it was a blast.

Also, concepts > languages. I remember trying to learn functional programming two years ago and it was a total waste of time. I wrote all the code in tutorials and books, doing so multiple times and it never stuck with me. A few weeks ago I found myself applying some of those concepts without even having to think about it! The more ideas you can expose yourself to and the more perspectives you can learn to appreciate, the more you will be able to adapt as a developer.

Collapse
 
defgrav04 profile image
Mina Oh

Thank you for your insight and for sharing your experience. In a way, I think we're on the same boat. Being a "jack of all trades, master of none" will hurt you -- and it is most emphasized when recruiters try to categorize you.

Focusing on one thing truly is a formidable challenge. I wish it were that easy to just 'pick a stack'. My heart says mobile development but my skills say C#. If I "follow my heart", I'll be stuck in a junior position with less than half my asking price. And I can't afford that -- with bills to pay and family to support.

When I tried to delve back into Java, no one will hire me for a mid-level position because my work experience in my past job is only C#. Side hustles don't seem to count in the corporate world -- or at least in my country. It's actually frowned upon in some cultures because it implicitly means you can't get a job so you freelance -- but this is another issue altogether. Haha.

"I derive too much of my identity from my job."
This is so true. It's paralyzing. There will always be someone better.

I think the best thing we can do is to stop comparing. That's why I eschew social media, bearing in mind that we each have different paces and different times. And our time is yet to come.

Collapse
 
ssimontis profile image
Scott Simontis

There is still hope! I just got back from a company where the CTO wants everyone to be generalists. It sounded like an amazing DEV culture...you're basically free to implement things however you please, but if you break something it's up to you to fix your cleverness. I think a lot of it comes down to company culture and attitudes, and unfortunately the majority of companies out there have pretty shitty views on how the world works. I would rather have someone who is overall smart, regardless of what languages they know, than an expert in a language. Smart people can pick up new things quickly and relate their past experiences to new concepts. There's people out there who can tell you every condition in the C Standard which leads to Undefined Behavior, but can't write a line of useful code.

You're totally on point with your last paragraph. I struggle with some pretty severe mental health issues which make it difficult for me to feel a consistent sense of identity, so it's really easy to rely on my job for a sense of self-worth instead of working on accepting the hand I was dealt in life. I have a lot to be grateful for and it's a blessing I can so something I love in spite of my disabilities, and I can remember that instead of getting caught up in the rat race :)

I am extremely biased but I would say C#. You can still use Xamarin for mobile apps, I don't know how big Xamarin is now that React Native is out.

Thread Thread
 
defgrav04 profile image
Mina Oh

That's awesome. There's only a select few that adopt such culture. Big companies usually adhere to strict processes and rules that leave little room for growth, creativity, and inspiration.

You're in great company and culture.

I can still do my best on both, but it won't be easy. I guess I will focus on one for now, then eventually let C# go and focus on React Native next year. Since I want to get out of the rat race and build something of my own, React Native is the way to go, I believe. It's easier to build products with react, and therefore, making it easier to validate to customers.

Our discourse has been insightful. I'm loving Dev.to and the community it has. Everyone is supportive, professional, and respectful. :)

Collapse
 
laurieontech profile image
Laurie

A consultancy is a wonderful way to learn a variety of skills surrounding the full lifecycle of software development. However, I think it will likely only further compound this issue of jumping around and being in the shallow end of a lot of topics at the same time.

I'm not sure what the best advice is. However, trying to pick a focus and stick in that stack for a period of time either in work or outside of it, is a good start.

Collapse
 
ssimontis profile image
Scott Simontis

You bring up a really valid point I forgot to mention, thank you! My current career hunt has been really difficult psychologically. I would consider myself a senior-level dev, but with six years of experience and an incomplete education, a lot of places are trying to get me to see myself as a mid-level developer. It's especially frustrating with recruiters who refuse to even submit me for senior positions because they think that I will give in and just apply for the jobs they recommend.

I have been a generalist my whole career. I know the basics of React, I can read a query execution plan with a little bit of Google assistance, I'm proficient in a few CMS systems but don't care enough about them to dig deeper, and know enough DevOps concepts that people try to submit me for those positions. For the first time ever, I have felt like being a generalist is hurting me...maybe it only becomes a problem once you reach a certain point in your career.

I derive too much of my identity from my job, so it makes me feel worthless when I start questioning if I am a decent dev or if I have suddenly fallen years behind everyone else. I compare out to other people my age. I wish I could master everything, but I 'm going to have to find something to commit too with much greater intensity. I'm thinking about focusing on cloud technologies...I guess wherever I end up getting my next job will heavily influence what I specialize in.

Thank you for that insight!

Thread Thread
 
laurieontech profile image
Laurie

I completely understand that fear and insecurity! I think some of that is a failure of the hiring practices and how we view developer skills and value. All the best to you and your search!