Average salaries for South African entry-level and junior developers have decreased by roughly 3.6% since 2021. The reason? Demand for junior developers has dropped – here, we’ll unpack this trend.
Overall, demand for software developers remains strong. Companies in every industry need developers to compete. That means more players, different problems to solve, as well as new industries, tech stacks and roles. Companies want to hit the ground running and so look to hire senior developers. This demand for senior developers is raising their salaries.
Unfortunately, entry-level engineers or juniors have not benefited from this trend. In fact, they’re struggling to get a foot in the door. Lower demand for junior developers led to a decline in their average salaries. Let’s take a closer look at the reasons behind this trend.
New problems and new solutions
A major contributor to lower demand for junior developers is that new software problems have increased the skills requirements for all developer roles.
During the Dotcom Boom, technical requirements were much simpler. Companies could take on less experienced developers and equip them with the skills needed to meet their needs, like building and maintaining websites.
Now, abstraction in software development has reached a point where low-code platforms can and are being used at scale in production. That means that computers can now perform work which junior developers did.
Abstraction also means that software problems are becoming increasingly complex: Most technical solutions require substantially more data processing and machine learning elements. Companies have vastly bigger scaling requirements, and their systems require knowledge ranging from cloud technology and cybersecurity to mobile app design.
Traditional industries like retail and agriculture entering the tech space have further increased the complexity of software problems. When new industries move into tech, they require expertise in problem-solving, software architecture, and product design, the combination of which are typically found among senior developers.
Unfortunately for junior developers, it’s becoming more challenging to gain the skills needed to meet the demands of modern software development, especially as fewer companies are willing to invest in training them in a remote world.
The shift to remote work
The Covid-19 pandemic accelerated the shift toward remote work, and it is now the dominant workplace set-up. More than 90% of South African developers now work in a remote set-up, which shows no sign of changing anytime soon.
Why is this relevant? Because it’s harder to onboard and train new team members in a remote setup. At the office, juniors had access to more experienced team members who could provide mentorship and guidance. This helped junior developers get up to speed quicker.
Now, more companies opt to hire senior developers instead of figuring out how to onboard and train junior developers remotely. This lowers the demand for juniors and makes it harder for less experienced developers to progress in their careers.
More juniors are entering the market
Every year, more people realise that tech is a great career choice. Bootcamps and online tutorials have made it easier for people to learn the skills needed to build a career in software development. They also provide aspiring developers with more affordable alternatives to a university degree and are quite common: Over a quarter of South African developers are self-taught, and 1 in 5 don’t have a university degree.
This resulted in an oversupply of entry-level and junior developers on the market and is another big reason why so many are finding it hard to kick-start their careers.
Perceptions around juniors’ lower competence levels only add to this challenge, as companies become less inclined to take a chance on junior and entry-level developers.
It’s going to be hard for entry-level and junior developers to get a tech job with fewer positions open to less experienced developers. So what can you do to bolster your tech career despite these factors?
Build experience while you job hunt: Working on a side project and building a portfolio is one way to build experience while job hunting with limited work experience. A portfolio of projects you’ve built shows companies your growth as a developer and your commitment to developing your skills. It also demonstrates your ability to find creative solutions to problems.
Contribute to open-source projects: Contributing to open-source projects allows you to develop your technical skills and familiarise yourself with coding best practices. Showcasing your foundational knowledge will help you stand out among other candidates.
Develop your soft skills: It takes more than technical knowledge to get ahead; hiring managers are looking for soft skills that show if you’ll be a good fit for the team and company.
Take a look at some of the most important soft skills for landing a tech job here.
Get a mentor: Mentors can provide ongoing support, constructive feedback, real-world insights and tips on who to network with. This support can speed up your levelling-up process considerably. In addition, mentioning your mentoring relationship during the hiring process can help you stand out among other applicants. This shows initiative, self-improvement and that you’re part of the developer community.
Join a formal mentoring program or reach out to a member of your professional network whose opinions you trust.