The start of 2017 has seen immense growth in demand for developers, as front end developers, full stack developers, mobile developers, and back end developers are all currently in the top 10 hardest to fill tech jobs, according to data from job search site Indeed.com.
Meanwhile, the US Bureau of Labor and Statistics predicts that software developer jobs will grow 17% between 2014 and 2024—much faster than the average rate of other professions, the bureau noted. Application developer jobs are projected to grow 19% in that time, and systems developers are forecast to grow 13%.
"The growth in searches for software developers, designers, and engineers is very positive, considering those positions are the ones we see having some of the the biggest mismatches in supply and demand," said Terence Chiu, vice president of Indeed Prime. "Considering how many more companies across industries are being disrupted by software, 2017 is more than likely to remain a job seeker's market for technical talent."
Here are the top 10 types of developers and skillsets that will be in demand as we move further into 2017.
1. Ruby developers
Ruby is one of the most in-demand languages to have experience with, as it is used for the popular web application framework Ruby on Rails, said Harj Taggar, CEO of Triplebyte. Ruby developers experienced a staggering 656% jump in searches by job seekers on Indeed.com between 2015 and 2016—among the fastest growing searches on the site, according to a recent report.
Using Ruby, Ruby on Rails has become one of the most powerful and popular web application frameworks for both startups and existing software houses, with users including Basecamp, Twitter, Shopify, Github, Groupon, Hulu, and Airbnb.
2. Mobile app developers
Mobile engineers for both iOS and Android are in very high demand, as more companies such as Uber and Instacart are now mobile first, Taggar said.
"The skills needed for these types of positions include understanding the variety of mobile hardware platforms that are available, and how the software ports to these different platforms provide the same quality user experience," said Karen Panetta, IEEE fellow and associate dean of the Tufts University School of Engineering. "Also, knowing how to interface and utilize all the sensors, like cameras and GPS, available on mobile devices, and learning the variety of operating systems these programs execute on, is essential."
3. Information security software developers
Information security software developers are needed to ensure that digital products are not breached, Panetta said. "Today, developers must attempt to create bullet proof code that can't be broken into by unauthorized users, who may want to modify it for phishing or spoofing schemes, or attempt to access protected data for identity theft or other fraudulent behaviors," she said. "In previous developer generations, a major concern focused more on ensuring licenses were not being violated and that illegal copies were not distributed. Today's top developers are competent with programming skills, but also anticipating usage scenarios far beyond the intended uses of the product."
"There should be a person responsible for designing and evaluating security measures in all phases of the software development lifecycle," said Alexander Polyakov, CTO at ERPScan. A person in this position must be capable of assessing security using both manual and automated techniques, he added.
4. IoT developers
As the Internet of Things (IoT) begins to gain traction among businesses and consumers, IoT developers are in increasingly high demand, said Mendix CTO Johan den Haan. "To be marketable as an IoT software developer, a person needs to demonstrate that they are business savvy and have an understanding of how an IoT application can impact a business," den Haan said.
Another growing area is IoT developers specifically for smart homes and cars, and voice-operated applications, said Tom Coughlin, IEEE senior member and founder of Coughlin Associates.
Python and C# are other in-demand languages this year, a number of experts said.
6. Cloud developers
"The hottest skillset is in cloud development with either AWS or Azure," said Mark McFarland, technical recruitment lead at kCura. "The candidates pursuing their career in software engineering are expected to have either .NET experience (C#, ASP.NET, MVC, SQL Server) or open systems experience, in particular Java (J2EE or Spring or native Java coding) and SQL."
There is also growing demand for "developing applications to manage the cloud and hyperscale resources—in particular those that can speed applications by moving processing closer to the memory and storage," Coughlin said.
7. Full stack developers
"Now more than ever, companies are looking for full stack developers," said Dan Miller, manager of business development at Addison Group. "Software now affects all areas of business, and there are expectations to provide excellent customer service and interface with the business so everyone understands how everything functions."
8. Machine learning developers
Aaron Ho, a technical recruiter at Riviera Partners, said he's seen a large increase in demand for machine learning experience this year. "As the world is producing more and more data, it's becoming harder for humans to understand what it all means," Ho said. "Many companies are turning to machine learning, artificial intelligence, and natural language processing techniques to help them explore and leverage data in incredible new ways."
9. DevOps engineers
"DevOps is in high demand on the development front," said Megan McCann, CEO and founder of McCann Partners. This skillset is among the most sought after in the industry, according to a report from the Linux Foundation, with 58% of hiring managers seeking DevOps professionals. DevOps engineers ranked no. 3 on Indeed's job seeker interest list.
10. UX/UI developers
To become a UX/UI developer, you must be able to write agnostic code for operating systems, browsers, and devices, according to Hugo Borda, senior vice president of technology and engineering at Corcentric.
"Interdisciplinary skills, including psychology and human factors, are very important for
developers to understand the audience that will use the product and how the product will be used," Panetta said. "Customers want access to specific information quickly, without the hassle of excessive clicking to dig down and search. Today's web savvy customers will abandon a website if it takes them more than three clicks to get to what they are seeking."
Empathy is an important personality trait for developers, according to Bradley Holt, developer advocate and senior software engineer at IBM Watson Data Platform. "At the end of the day, they're building software that will be used by people," Holt said. "To be effective, software developers must be able to understand who these people are, what challenges they face, and what sorts of tools they need."
- Coding school graduates: Are they worth hiring? (TechRepublic)
- Six ways to fix the IT skills shortage (ZDNet)
- Top 10 hottest IT jobs for 2017 (TechRepublic)
- Microsoft's new online certification program kicks off with data science specialization (ZDNet)
- How to become a Unity developer for VR and AR (TechRepublic)