Software has become the multiplier for business growth: When tech teams are working on what matters, companies thrive. When they aren’t, it can cost millions. But in our fascination with tech’s potential to change the world, it’s easy to overlook the people behind it. In the tech industry, we often say that ‘software is eating the world’ which makes it sound like it’s a passive thing that just happens. In reality, it’s a very active process that’s driven by people who spend their days building the future.
Ultimately, people are the foundation of winning software teams. So even if companies know how to build great tech, and know how to navigate the tech industry, it really matters to know what the people in tech want, need, and look for in their careers.
As a tech talent marketplace, our Talent Advisors speak to hundreds of individual software makers every week. In these one-on-one conversations, software makers share their dream jobs, what they want from their work life and how they are hoping to progress in their tech careers.
In order to shed light on what we see playing out in our marketplace every day, we sent out a survey to the developer community. Thousands of developers responded, and shared with us what it’s like to work in South Africa, what programming languages and tech stacks they most enjoy working with, and what's most important to them when looking for a job.
We’re super excited to share these survey insights with you in this report. We’ll be deep-diving into other key insights over the coming months, so make sure to subscribe to our newsletter if you want to stay in the loop. You can also share your thoughts with us in-person at our MERGE conferences in Cape Town and Johannesburg where we’ll be exploring these insights even further.
I hope you find the survey results as fascinating and insightful as I did!
Most developers learned to code by hitting the books in formal education streams.
However, a significant portion of developers – just over a quarter – are self-taught coders.
Turns out, if someone is working as a developer, they don’t need a university degree to get a solid paycheck.
It seems that self-taught developers actually start out earning slightly more than those with a formal qualification: With one year or less of work experience, self-taught developers earn an average of R19 418 whereas their degreed peers earn an average of R18 274.
Hitting the keyboard early on in life can make a big difference later on in a tech career.
Take developers who have 1-2 years of experience, for example: Those who started coding before the age of 12 currently earn the biggest salaries.
In fact, just over half of the developers who started coding before they started high school now earn more than R60k per month, while 60% of those who only started in their late 20s earn less than R30k per month.
It looks like male developers typically start to code earlier than female developers: More male than female developers started coding during their school years, with a whopping 51% of male developers starting before they turned 19, compared to 33.2% of female developers. But, then again, more female than male developers indicated that they picked up coding between the ages of 19 and 24.
Interestingly, things start to even out later in life: Roughly the same number of male and female developers get into coding in their 30s. It’s never too late to learn something new, right?
Developers identified online tutorials as the number one way to keep their tech skills on point. Here’s looking at you, YouTube!
Working on side projects came in as a close second, followed by Udemy-style courses.
Maybe unsurprisingly, developers with 1-2 years of experience typically identify as junior. Those considering themselves intermediate mostly have 2-4 years of experience, and seniors have 6-10 years of experience or more.
However, of developers with 2-4 years of experience, 26% still identify as junior whereas 6% identify as senior.
Intermediate developers in FinTech seem to earn the highest average salary, raking in R39 291 every month. On the other end of the spectrum, developers with the same level of experience working in web development or design take home the least - with an average salary of R28 211.
That said, junior developers seem to earn the most working in data and analytics, at an average salary of R25 638, while senior developers earn the most in cloud-based solutions, taking home R67 276 on average.
When you’re first starting out, Cape Town is the place to be. Mountains, beaches and good money… ah bliss.
For example, developers with 1-4 years of experience in Cape Town get paid roughly R4 000 more than developers with the same level of experience in Gauteng.
However, after ten years in the industry, you might want to relocate to the City of Gold: Developers with 10-15 years of experience based in Gauteng reported earning an average salary of R68 000 per month, while those in Cape Town at the same level earn about 5% less at R64 735 on average.
46% of developers reported that they would like to work in a more specialised technical role in the next five years. 39% said they would like to found their own companies.
Venturing into something new seems to be much more popular amongst developers at the beginning of their coding career, while those who have been working for longer periods of time are more interested in staying put in their current role.
Good news! When asked if they feel respected and valued by their teammates at work, 79% of developers said ‘yes!’.
This was the same across genders, races, and age groups. Yay!
Rise and shine! More than 50% of developers in Gauteng wake up before 6am, while only 30% of Capetonian developers are early birds.
In fact, about half of developers who wake up after 8am are based in the Mother City. Hmmm, do we smell coffee?
For developers who are just starting out, badly written documentation is the absolute worst.
It seems like this matters less to a developer as their years of experience increase though. What hacks off senior developers are estimates pushed as actual deadlines and a lack of prioritisation. Urg, yuck.
The majority of developers use JavaScript as one of their primary languages. Then, in a shiny second place, is C# for both Cape Town and Gauteng.
However, the two locations differ on their third most used language with Python as third in Cape Town and Java in Gauteng.
JavaScript is still in the lead – but only just! Python is slithering up the charts across South Africa at a rapid rate in 2020. It moves into second place on developers' want to learn list, after being the fifth most used language in 2019. Did someone say data sssscience?
Java takes a major hit, falling into fifth place behind C# and TypeScript despite being the third most widely used language in 2019.
Given the wide scale use of JavaScript in 2019, it's unsurprising that three out of the top five most used frameworks are JavaScript frameworks. Node.js and Angular come in at first and second place respectively, while React is not far behind in fourth place.
When looking at location, it seems like there are more Angular developers based in Gauteng than there are in Cape Town. On the other hand, the opposite is true for React developers.
JavaScript frameworks are set up to dominate in 2020 with Angular and Node.js neck-and-neck as the number one framework that developers want to work with next year.
React also joins the podium in third place, replacing .NET Core, which was 2019’s third most used framework by developers.
Of the most popular languages developers chose, Go and Ruby are amongst the languages that pay the most across all levels of experience.
Developers who know Python earn the third highest salary at junior and intermediate level. However, at senior level, developers who know Java earn about R1.5k more than those who know TypeScript or Python.
PHP developers earn the lowest salaries, no matter how much experience they have.
Well, well, well. That solves that then.
No matter the industry, salary is the number one thing developers consider when considering a job offer.
That said, the second and third most highly ranked perks are flexi-hours and the option to work remotely.
While these top three perks apply across the board, preferences diverge for location: Developers in Cape Town care more about flexi-hours whereas developers in Gauteng are more interested in having a conference budget.
Beyond perks, company culture was listed as the number one factor that developers take into consideration when choosing a job. This was closely followed by the opportunity to grow professionally.
This seems to be particularly true for junior and intermediate developers who also rank growth opportunities as their number one, compared to senior developers who rank flexi-hours as tops.
Interestingly, when looking at different locations, company diversity appears to be more important to developers in Gauteng.
Developers seem to care a lot about professional growth. If they’re not convinced that a role can offer this opportunity, there’s a good chance that they’ll turn it down.
The second biggest reason seems to be alignment: If they felt that a company’s values or culture didn’t align with their own, developers are likely to say ‘no’ to a role.
Turns out, more experienced developers drink more coffee.
While developers across all experience levels seem to like their caffeine kick, most developers with 15+ years of experience under their belts are sipping more than three cups per day.
86% of developers are open to moving abroad.
Of these, one quarter are actively exploring their options right now while the rest aren’t packing their bags just yet.
It looks like Europe is the favourite destination amongst developers who are looking to leave South Africa.
This is followed by the United Kingdom and United States of America, which are the second and third most popular places respectively for developers who are considering moving abroad.
Developers who are actively pursuing international opportunities name personal safety as their number one reason for looking. This is followed by the opportunity for professional growth, and the potential to earn more money.
Developers who are interested in moving, but haven’t taken any steps yet, report higher earning potential as their number one reason.
OfferZen’s Co-founder, Philip Joubert, will deep-dive into these insights at our MERGE conferences in Johannesburg and Cape Town. Grab your tickets and join the discussion!
Book my ticketThe data in this report does not claim to be representative of the entire South African developer population. Any time the word ‘developer’ is used, it refers to the group of developers who took our #SADevNation survey. In some instances outliers were removed, especially where slicing occurs by variables like age or gender. In terms of location, we only used Johannesburg, Pretoria and Cape Town in our location comparisons, but grouped Johannesburg and Pretoria as Gauteng for simplicity reasons. As a result of rounding or simplification, totals may not add up to 100%.
In cases where no data slicing occurs, all 3 389 valid responses were included. In order to shed light on survey participant characteristics, we’ve included the demographic breakdown of all 3 389 valid responses below. In some cases, we decided to exclude insights on gender and ethnicity because we felt that we could not do these important topics justice in the short-form format of this report. We are, however, planning to deep-dive into these demographics in coming months.
OfferZen conducted a survey to find out more about developers’ skills, work experience and opportunities. A total of 4049 people took the online survey between 19 August and 3 September 2019. Of these responses, 3 389 responses were counted as valid because they were from developers who are currently employed or have work experience in South Africa. We hosted the survey itself on Typeform and recruited respondents via emails sent to more than 30 000 software makers in the OfferZen community and social media posts to the public. Data was analysed using Looker and percentages may not always add to 100% due to rounding. Age averages were calculated using the start of the range, for example 20 of the range 20-25, and salary averages were calculated using the midpoint of the range, for example 15 000 of the range 10 001 - 20 000. Salary in this report refers to gross salary before tax.
OfferZen is an online tech marketplace that connects South Africa's top tech talent with over 1000 companies who are building winning tech teams. We flip the normal recruitment process on its head: Companies reach out to candidates who are actively looking for new opportunities.