Logo

dev-resources.site

for different kinds of informations.

Switch tech stacks: boost your career growth

Published at
10/31/2021
Categories
careeradvice
softwareengineering
careergrowth
softwaredevelopment
Author
dejavo
Author
6 person written this
dejavo
open
Switch tech stacks: boost your career growth

Photo by Joshua Aragon on Unsplash

My humble effort on managing your career

A few months ago, I switched jobs. As part of this move, I have changed my daily programming language from C#, which I have been using for over eight years, to Java. It might confuse some people and raise a few eyebrows here and there asking why I would drop my experience just to start with a new language.

In what follows, I will explain the rationale for doing so and the process involved.

Are you insane? Why did you do that?

whyyyyyβ€Šβ€”β€Šsrc

What made me abandon a language (re-hyped in recent years) that I'm familiar with all the bits and bytes in favor of a completely different one that I'll have to learn from scratch?

tl;dr I was up for the challenge, going out of my comfort zone to learn new concepts and grow, and no imposter syndrome will stop me!

Imposter syndrome -src

From my point of view, C# and Java are almost similar, the gap between them appears trivial compared to other languages, but that's geeking out (I won't dive into the differences):

Comparison of C Sharp and Java - Wikipedia

The real reason is that I wanted to have experience in a different programming ecosystem. JVM comes with an almost identical language, which means I could relatively fast gain a very marketable skill, that in the future, will open up opportunities in other JVM-based languages such as Scala, Kotlin, Clojure, etc. It gave me that sense of freshness that comes with learning something new and being back the newbie for a period of time (which is not always easy emotionally).

Furthermore, I used it as an excuse to start developing stuff over a different OS; if you haven't read about that switch, go ahead:

Developer story: Getting used to macOS as long time Windows’s user

As a side note, until recently, the demarcation line between the OSes is well aligned with the technologies. But, nowadays, you can even use Linux over Windows too:

Finally, from my perspective, the JVM community is more dynamic. It creates more valuable tools and plugins than the .NET community, which I may use on a daily basis. Saying that, as a result of Microsoft's strategy shift, there has been a massive change in .NET over the last few years, and I assume the .NET community will close the gap.

So, How did you do that?

Did I do that?

The switch from C# to Java programming language was simple. Gaining experience in the tricks, limitations, and so on… is just a matter of time, and my years of software development will sure come in handy.

On the other hand, going from .NET to Java SE ("The java platform") and from CLR to JVM is a bigger leap. While some concepts are similar, it is actually an entirely different set of APIs that are organized differently. Besides that, I also changed from working on monoliths to using something that is based on microservice architecture, so the language and platform themselves have to be added to the OS, the tools (like Docker), and the inherent difficulties that come with distributed systems. That's quite a challenge. That's exactly what I was hoping for.

A big hurdle is the multitude of libraries/frameworks that make similar things and various sets of Java APIs attempting to handle some of this mess. The .NET universe is much simpler in this regard (there is a clear choice of a tool for whatever you want to do). A sort of "what does not kill you makes you stronger" situation.

To wrap it up

Overall, the experience of switching programming ecosystems is an essential milestone in your growth. It paves the road for potential career changes in the future (since You prove to yourself that "I can do it!"). Doing so is really mind-stretching, unleashing your mind from the borders established by the tech stack you've used to.

People react in different ways when they hear about switching technologies. In my opinion, many people place far too much weight on languages, platforms, and tools, and not enough on the purpose of using them, the actual development of the product, and the experience gained from developing it.

Or in other words, the code is the mean for the business and not the end (goal).

if you liked it…

careergrowth Article's
28 articles in total
Favicon
Leveraging Your Personal Brand to Connect with Industry Leaders
Favicon
Reflecting on 2024: A Year of Growth, Challenges, and New Beginnings
Favicon
Key behaviors that got me promoted to Senior developer
Favicon
The Hidden Cost of True Leadership: A Twenty-Year Journey in the Trenches
Favicon
Unlock Extra Income: 12 Proven Ways Developers Can Cash In on Their Skills!
Favicon
Efficient Shortlisting in Programming (Software Development) hiring
Favicon
Exploring the World of Development and Project Management: A Memorable Visit to Pearson Lanka
Favicon
How Contributing to Open Source Can Supercharge Your Tech Career
Favicon
Become a Trailblazer: How to Build a Reputation for Innovation and Expertise in Web Development
Favicon
πŸ“ˆ Understanding the Critical Role of Product Management: A Tutorial for Technical Professionals
Favicon
Investing in Tech Skills for Software Developers
Favicon
πŸš€ Journey to Senior Developer πŸš€
Favicon
Diving Deep into DSA on My Journey to L5-L6! πŸš€
Favicon
Building LEGO without instructions
Favicon
Climbing the Ladder: How to Become a Staff Software Engineer from Junior Engineer
Favicon
Embracing the Digital Age: An Introvert's Perspective on Professional Social Engagement
Favicon
Data Science for Beginners: 2023 - 2024 Complete Roadmap by Dominic A. Waite.
Favicon
Numbers and stats of my side-project
Favicon
The Power of Soft Skills in Career Growth
Favicon
Here's Why You Need a Mentor
Favicon
Are you Jumping into a New Job?
Favicon
Switch tech stacks: boost your career growth
Favicon
Possible Career Goals for Software Developers
Favicon
Promotion in Action: What everyone should know to get to the next level
Favicon
My success list 2020
Favicon
My Fail List of 2020
Favicon
How To Deal With Not Being Promoted?
Favicon
Owe your own career growth!!

Featured ones: