As one of the biggest growth areas of the past decade, software development skills remain in high demand, even in today’s economy. But some skills are more desirable than others.
Choosing the right ones to concentrate on is particularly important as the COVID-19 pandemic continues to impact the global job market. In the UK alone, the number of advertised software developer and software engineering roles were both down 33% in July compared to the previous year, according to job board CV-Library.
So which developer skills are the most valuable in today’s market? We’ve 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 a fraught job market.
Don’t put all your eggs in one basket
Developers are often judged and assessed on their proficiency with certain programming languages and frameworks, but it’s 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, the ability to demonstrate transferrable skills is 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 gained popularity among developers, topping the list of fast-growing programming languages on GitHub between 2018 and 2019. As the GitHub State of the Octoverse report observed:
With Flutter in our trending repositories, it’s not surprising that Dart gained contributors this year. We also saw trends toward statically typed languages focused on type safety and interoperability: the Rust, Kotlin, and TypeScript communities are still growing fast.
Similarly, Google’s Go programming language is booming in popularity according to tech hiring marketplace Hired, which saw Go-skilled engineers earning an average of nine or more interview requests per candidate, with Scala and Ruby close behind at more than eight interview requests per candidate in 2019.
Then there is Python, which has quickly risen up the skills ranks in the past decade. Python is popular with data scientists and stands as the third most-in-demand language, according to millions of US job postings on Indeed.com between 2014 and 2019.
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.
Again, the 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.
Last year also marked the first time that Python outranked Java as the second most popular language on GitHub by repository contributors. The king is dead, long live the king.
Going cloud native
More broadly, one clear direction of travel can be seen in the trend toward containers and cloud native development.
General cloud computing skills tend to align with the key vendors: Amazon Web Services (AWS), Microsoft Azure, and Google Cloud Platform (GCP). Hiring managers tend to hire against experience with these cloud environments, so that developers can be onboarded quickly as part of a team.
If you are looking to align with a particular cloud, 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 went 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 that Docker was listed in more than 5% of all US tech jobs in 2019.
Demand for proficiency with container orchestration tool Kubernetes — which is available on all three major clouds — and the service mesh Istio has naturally followed, as both have become standard ways to manage containerized environments.
Kubernetes remains one of the top 10 most popular open source projects by contributors according to GitHub’s latest State of the Octoverse report. Similarly, Istio was among the fastest growing projects by contributors, with a 194% uptick of contributions during 2019.
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-end and back-end coding required to build and run web applications.
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 is 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 operations, the data engineer, has also seen several languages and skills steadily rise up the popularity ranks.
Streaming data tools like Apache Kafka, modern data warehouses like Amazon Redshift and Snowflake, and big data platforms like Apache Spark have all seen increasing demand in the past few years. Jobs that ask for proficiency in Python and the R language are also part of the hunger for data science skills.
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 machine learning platforms and frameworks such as TensorFlow and 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 2020.
“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.
In fact, Google and Microsoft have both launched alternatives to standard university degrees this year, with Google’s Career Certificates scheme and Microsoft’s global skilling initiative.
“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 say 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, and how well it equips one to become a successful engineer. But what is certain is that the traditional route may not be accessible for everyone, and that shouldn’t exclude those people from the jobs market.