As one of the few true growth areas of the past decade, software development is a constantly in-demand skill which spans a whole host of roles, disciplines and frameworks. Deciding which of those will place you in the best possible position to reap the benefits can feel a little like shaking a Magic 8 Ball, but there are some industry trends that will help you make shrewd skills investments.
This is especially important as the COVID-19 pandemic continues to badly impact the global job market. As of September 2020, more than 14 million Americans had filed for unemployment benefits and the US IT sector shed more than 320,000 jobs in July and August, according to a report by CompTIA.
In the UK alone, the number of advertised software developer and software engineering roles were both down 33% in July 2020 compared to the previous year, according to job board CV-Library.
Looking beyond the pandemic, the number of software developers globally should rebound, meaning the competition for talent is only due to get fiercer. There were 23 million software developers in 2018 according to Evans Data Corporation analysis, with that number expected to reach 27.7 million by 2023, before being adjusted for the pandemic.
With that being the lay of the land, which developer skills are the most valuable in today’s market? We have pored through the data to find the most bankable developer skills for the coming years and how best to set yourself up for success in the fraught current job market.
Don’t put your eggs in one basket
Developers are often judged and assessed on their proficiency with certain programming languages and frameworks, but it is important to remember that these are transferrable skills.
Stack Overflow asked thousands of developers how frequently they learn a new language or framework for its 2020 Developer Survey, with around 75% of respondents saying they learn a new technology at least once a year.
“Languages and frameworks are very similar, so the differences between programming languages are much smaller than the spoken word. Moving from PHP to Python is not like learning French,” Hew Ingram, engineering lead at recruitment technology specialist Applied says.
In software development, like many career paths, demonstrable transferrable skills are more valuable than a laundry list of proficiencies, and many hiring managers are growing increasingly language agnostic, according to HackerRank.
Some skills are hotter than others
Rust and Dart are both lightweight programming languages that have quickly gained popularity amongst developers, topping the list of fast-growing programming languages on GitHub between 2018-2019.
Similarly, Google’s own Go programming language is booming in popularity according to tech hiring marketplace Hired, which saw Go-skilled engineers earning an average of 9+ interview requests per candidate, with Scala and Ruby close behind with more than eight interview request per candidate in 2019.
[ Tune into Serdar Yegulalp’s Smart Python video tutorials to learn smart Python tricks in 5 minutes or less ]
Then there is Python, which has quickly risen up the skills ranks in the past decade. The programming language, which is popular with data scientists, is now the third most in-demand skill according to millions of US job postings on Indeed.com between 2014 and 2019.
It was also named Tiobe’s programming language of the year for 2020 after jumping 2.01 percentage points last year in the Tiobe Index of language popularity, edging out C++, which increased 1.99 percentage points.
The money can be good too, with the average salary for a Python-proficient developer at $91,000, according to PayScale. By way of comparison, a Java developer averages $74,000, showing more supply for that skill set.
The 2019 GitHub State of the Octoverse report offers some context:
Behind Python’s growth is a speedily—expanding community of data science professionals and hobbyists—and the tools and frameworks they use every day. These include the many core data science packages powered by Python that are both lowering the barriers to data science work and proving foundational to projects in academia and companies alike.
In 2019 Python also outranked Java as the second most popular language on GitHub by repository contributors for the first time. The king is dead, long live the king.
The changing nature of back end skills
Focusing on the back end, there is one clear direction of travel from a skills perspective: containers and cloud native.
General cloud computing skills tend to align with the key vendors: Amazon Web Services (AWS), Microsoft Azure and Google Cloud Platform. Hiring managers tend to hire against these specific skill sets so that developers can quickly be onboarded into the team.
If you are looking to align with one of these, AWS continues to prove the most popular, as many companies have built their services on the AWS stack. Analysis by Indeed showed job postings for AWS-proficient developers go up fivefold from 2014 to 2019, far outpacing Azure and GCP demand.
On the container side, research from Indeed shows that demand for Docker skills continues to surge, up 4,162% since 2014 and it was listed in more than 5% of all US tech jobs in 2019.
Demand for proficiency with container orchestration tool Kubernetes and the service mesh Istio has naturally followed, as both have become something of an industry standard way to manage containerized environments.
Kubernetes remains one of the top ten most popular open source projects by contributors according to GitHub’s 2019 State of the Octoverse report. Similarly, Istio was amongst the fastest growing projects by contributors, with a 194% uptick of contributions during 2019.
[ Also on InfoWorld: The best free programming courses during quarantine | The best free data science courses during quarantine ]
Ordering the full-stack
One major development for software developers over the past few years has been the rise of the so-called ‘full-stack’ developer, a jack of all trades who can handle both the front and back end coding required to build and run applications end-to-end.
According to HackerRank’s 2020 Developer Skills Report hiring managers at companies of all sizes “agree that full-stack developers are top priority,” with 38% of them saying it was the number one role for them to fill in 2020.
Data is still the new oil
The rise of data science and its partner in crime, the data engineer, has also seen several languages and skills steadily rise up the popularity ranks.
Streaming data tools like Kafka, modern data warehouses like Redshift and Snowflake and the popular machine learning library Tensorflow have all seen demand spike in the past few years.
Python, R and Spark are all quickly rising skills that all point towards the hunger for data science skills from organisations today also.
That’s before we even wade into the complicated waters of what entails machine learning and artificial intelligence skills. This has seen the rise of really targeted ML tools like Pytorch.
Of course, not everyone can be a data scientist, and many developers won’t have that skill set, but having complementary skills certainly won’t hurt your employability.
Formal education isn’t everything
Finally, it is important to remember that a formal computer science degree isn’t a necessity to get a job as a software developer in 2021.
“It’s critical for hiring managers to focus on assessing a candidate’s skills rather than over indexing on education. While 50% of software engineers have a computer science degree, another 32% either taught themselves to code or learned through a coding bootcamp—and they may very well have the same set of programming skills,” Hired CEO Mehul Patel wrote in the 2020 State of Software Engineers report by the tech recruiter.
“Gen Z is more likely than any previous generation to utilize bootcamps. Nearly one in six say they’ve leveraged bootcamps to learn new skills,” according to HackerRank’s 2020 Developer Skills Report. Furthermore, 32% of hiring managers are bringing on bootcamp grads and 72% of them saying those hires “were equally or better equipped for the job than other[s].”
The debate will continue over the true value of a traditional computer science degree is to be a successful engineer, but what is for certain is that route may not be accessible for everyone, and that shouldn’t exclude those people from the jobs market.