How to keep yourself relevant
As a software engineer where things are changing at a rapid rate and there is still so much uncertainty with layoffs
I was in a situation where the tech stack I was using was basically obsolete in a startup that was looking to keep their tech stack in order to build new features for their customers to bring in more money.
While that startup was in survival mode and it made sense to keep using their tech stack, it was effectively a shot in the foot for my career.
When it came to interviewing for new roles, I was often overlooked as a candidate just because my tech stack was not relevant.
This could be a very common scenario especially for those of us in a situation where the technology we are using is very industry-specific or simply just proprietary technology.
Here are some of the things I did and what I would do again if I was put in this situation (which will more than likely happen).
đ§ Mindset
Before getting into what I actually did, I want to address your mindset because I feel it is an important aspect to consider when you are in this scenario.
Itâs really easy for us to think that the odds are stacked up against us because of things that are not necessarily in our control.
Itâs really easy to shift the blame on our employers or the companies that we are interviewing for.
But the reality is that this will keep happening throughout your career and is common as innovation happens within the industry and new trends emerge to make software engineering more efficient.
Think about it like this, it was only 70 years ago where programming was effectively typing out instructions on punch cards.
Fast forward a little more when programming languages like FORTRAN and COBOL ruled software engineering.
Fast forward even more when Angular was the framework of choice for building your systemâs Frontend.
Iâve skipped a few steps along the way, but you get the idea.
Things are always changing. The only constant we have is change.
So the best thing you can do for yourself is to build a mindset of adaptability.
This will be really useful when you start taking the steps to keep yourself relevant in this industry.
đȘPractical steps
Now that weâve addressed the mindset aspect, let me tell you about the practical things that I have done to keep myself relevant in the industry.
So, the first thing I would be doing is understand what I want to be doing as a software engineer.
Would that be a frontend engineer, a backend engineer, a mobile app engineer, a DevOps engineer or a data engineer?
From there, I would try to learn the common principles that are being applied in that stream. For example, if I wanted to be a backend engineer, I would be learning architecture styles like REST, GraphQL and RPC
Now when I say learning, I donât mean deep-diving.
I mean just create a simple application that would take a weekend at most and understand the architecture styles in a language / framework youâre familiar with. Try to identify advantages and disadvantages of each style.
After that, I would be identifying the companies I want to be a part of. I would have a look at their tech stack and list down what languages, framework and technologies (such as databases they are using).
Once Iâve got this list, I would try to learn the most common languages / framework these companies are using. (This is how you identify trends).
Again, this doesnât have to be a deep dive - just a quick tutorial. For example, if you want to learn Go, pick up the âA tour of Goâ - aka the official Go tutorial.
Most modern languages and frameworks offer an official tutorial alongside their docs which makes it really easy to get started and build a decent knowledge-base with them.
After that, itâs just a case of listing these technologies on my CV and applying for these positions.
Iâm going to be honest and say that most companies are looking for industry experience in their particular technologies.
Regardless of this, I have found that the approach that I have listed is good enough to get my foot in the door.Â
Often, I have found that after going through the phone-screening, I was presented with a take-home technical test. This is where I have been able to put the skills that I have learnt on display.
This is also a really good opportunity to expose yourself to different problems and build your knowledge as you go on.
Most importantly, this is an ongoing process. You may not pass on the first technical test, but you could receive feedback to help you improve for the next technical test.
But this is where you really ramp up your knowledge as a software engineer by continuously learning and solving problems.
đ Key Takeaways
Adjust your mindset to embrace change because things are always changing.
Try and pick a stream of software engineering (e.g. backend).
Identify what âmodernâ looks like in the stream and build a project around that.
Identify common languages and frameworks from a list of companies that you want to work for and learn those.
Trust in the process. This is what real growth looks like.
Thank you for reading this article!
If you enjoyed this article, please give it a â€ïž. It is very much appreciated!
If you think someone else would gain value from this, then feel free to share this post. đ