As 2020 draws to a close, I figured it would be useful to take a look at all the lucrative career choices that are currently out there in the job market.
All Covid-19 pandemic related disturbances aside - a major switch has happened. Just a year ago, remote work was not as common. We still had stigma about the employer not trusting you enough to get the job done at your house or outside the office, we had companies like Atlassian push Remote Work as the next thing. Though we didn't see it come about fast enough.
I'd call this year a major society update, where those who can't get behind it, are left to the throes of circumstance. Like usually with technology.
All this talk about "going back to normal" doesn't entertain me at all, because that means we can't let go of what doesn't benefit us. Not to diminish the losses we have endured globally, but Planet Earth doesn't care about you personally, it does what is best for it. If we cannot seem to get our heads straight and align to the ways of our planet, then what choice does it have?
So obviously we learn skills to participate in society. What programmers are currently in demand and what choices do you have career wise?
At the beginning of this year, Stackoverflow conducted a survey, where 65000 developers have provided their input on the current state of affairs. It's a very good read, they conduct these surveys annually so you can even compare how it has changed since 2019, 2018, 2017 and even further than that. I wouldn't suggest looking further back than a few years though.
You can also just look at what one of the biggest code repositories (think - collections), GitHub has to say on their "The 2020 State of the OCTOVERSE" reports.
And also what could be more contextual to your specific situation, than checking the vacancies on the employers around you? Even way before considering applying for a job, it's very valuable to know what they actually are willing to pay for. On the vacancy descriptions you can already see a draft of what your daily life could involve. Especially take note of the keywords for technologies they require.
An interesting thing is when a company is hiring for multiple languages, that means that they probably could have a cross-training opportunity for you too. As I've already mentioned, programming languages share a lot of the general principles and design patterns.
You also will see exactly what to highlight in your CV and portfolio. A lot of people start from the wrong end - learning some random language, have some portfolio and then they get frustrated, that they've done "everything" they could, but noone wants them.
Which is wrong. Which is why a blog like this has to exist to eliminate redundant confusion.
If you're at the beginning of your software developer career and you're as naive as I was, pehaps the idea of having your portfolio as a webpage will serve as the perfect example of showcasing your portfolio.
Not so fast. Doing it this way means you risk the chance of breaking something while doing the "finishing touches", or your site might get blacklisted due to SSL errors (like mine was, imagine the amounts of sweat on my palms in the interview. I only found out the reason afterwards. Not a cool feeling.) or probably a giant list of other things that can happen.
So I strongly advise against having a website as your only CV option.
Instead, do a .pdf first and you can link to your site in the CV itself. Remember, keep it concise, the person reading it has no reason to hire you from all the applicants. Keep yourself detached from any reply you get, until you're in the room and you get the "When can you start?" handshake.
Don't let non-existing vacancies for the company you love hold you back. Maybe you just can't find them. Maybe they haven't published them yet. Maybe they literally have a new opening today. So be sure to e-mail them and ask anyways. Or you can sit idle and let others do it.
Even though job market needs change all of the time, don't forget who you're doing this for in the first place.
If you get a gut feeling about something in particular, go for it. The worst thing you can do is not try. Disregard anything anyone says, before you structure your own opinion, because we're all currently on the technology evolution wave. Everything changes all the time, so forget about finding "your single and only thing that will keep you safe and fed for life", it doesn't exist.
Once that basket hits a bump, all of the eggs will come flying out. So be sure to not store them all in one basket in the first place.
In my opinion: specialization is for insects. Once you step into the software development world, you're an artist and artists that only maneuver in one frequency are very, boring and probably frustrated once change comes around.
In the next post, we will take a look at actually writing code.