The Stack Overflow Survey is one of the most comprehensive polls undertaken every year since 2011. Before we discover more, there are …
The Usual Caveats
Forty million people visit Stack Overflow every month, and an estimated 42% are professional developers or university students. The survey is detailed and was completed by more than 64,000 respondents (51,392 were usable). It’s an impressive sample size, but be wary about making assumptions when demanding your next pay rise! …
Stack Overflow is used worldwide, but will be heavily biased toward western English-speaking countries. Respondent country proportions are generally comparable to Stack Overflow’s user demographic:
Proportionally few developers came from Africa, Asia and South America. China accounts for 0.5% and Russia is 1.7%.
The survey could only be completed by those who use Stack Overflow, were aware of the survey’s existence, understood the questions, and had the time to complete it.
The satisfaction spectrum
Surveys appeal to those at either end of the satisfaction spectrum:
- you’re willing to share your experiences when you’re happy with your job, salary and skill-set
- you’re willing to complain about your company, remuneration and working conditions when you’re dissatisfied.
The 80%+ of people who think “meh, life could be better but it could be much worse” may be less inclined to comment.
Regional salary differences
The survey collates salaries based on US dollar amounts. The US is typically better paid than elsewhere which can skew results. However, salaries are not re-based according to taxation and purchasing power in the country of work. For example, a developer may struggle on $30,000 per year in the US but live comfortably in India.
Past surveys are not indicative of future trends
The results highlight what developers have been using and their general level of satisfaction. Their opinions will change over time.
Previous surveys asked for occupation titles, which can be a little ambiguous. In 2017, the majority of respondents identified themselves as web developers:
63.7% of web developers claim to have full-stack experience. This seems high, but it’s difficult to avoid switching disciplines …
- a back-end developer will have to write HTML at some point, even if it’s purely for logging purposes
- a front-end developer will become involved in back-end work if they’re making Ajax calls or optimizing server performance.
Despite this, 24.4% claim to be back-end only and 11.9% were front-end only.
70.3% are employed full-time and 10.2% are freelance. Only 6.7% of US respondents are freelancers, which is noticeably lower than Canada, the UK and Germany. Almost half work in a software or a web-related sector with fewer than one hundred employees.
Experience levels vary, but almost 92% of respondents had been programming for more than two years and 80% are doing so professionally. 17.2% had been developing code for more than 20 years.
Stack Overflow dispels the misconception about developers starting to program during childhood. There is a wide range of experience levels, and you can start at any point in your life, but most developers I know were bitten by the programming bug in their early years.
32% of developers stated formal education had not been important to their career success. 90% considered themselves self taught. I’m surprised it wasn’t higher; you can only learn to program by doing it. Half of us will also cut code in our own time.
88.6% of respondents identified themselves as male. Female participation has risen a few points in the US and Europe, but industry diversity remains a concern for 89% of people.
Java and Python remain popular because they’re widely used in education. Python is also the most-wanted language (20.6%).
PHP seems surprisingly low given its predominance on the web. I would expect it to be above C#, especially when looking at languages for web developers? Perhaps PHP developers need less assistance from Stack Overflow because problems are easier to solve and assistance is ubiquitous?!
Frameworks, Libraries and Runtimes
Strangely, there’s no mention of jQuery? Perhaps it wasn’t an option.
Despite its momentum, React is significantly lower than reported on Ashley Nolan’s recent front-end survey. 66.9% of developers love React and it’s the third-most wanted technology. Yet more developers want Angular?
Unsurprisingly, MySQL comes out on top:
The chart is dominated by SQL databases. However, they’re also the most dreaded! Developers seem to prefer NoSQL databases such as Redis, MongoDB and Cassandra, and are eager to gain those skills.
|Visual Studio Code||24.0%|
The popularity of the commercial edition of Visual Studio leads me to conclude there is a relatively large proportion of .NET developers on Stack Overflow. That would also explain why C# is above PHP.
It’s great we have so many editors to choose from, and many are free or open source. I’ve recently switched to VS Code following a couple of years on Atom, a few months on Sublime Text and a decade of Notepad++ which I still use for quick and dirty editing.
The undisputed champion is Git with 69.2% of respondents using it for projects. The once-mighty Subversion has fallen to 9.1%.
6% use a manual back-up process, while one in twenty don’t use any version control system or check in just a few times per year. They will learn the hard way!
The days of ‘code until it’s done’ are long gone. The top five development methodologies:
Around one third of developers want to ship immediately. Another third think it should be optimized first, and the remaining third make their own judgement depending on how well — or how badly — the project fared!
Of course, all methodologies break down as soon as your boss deems it necessary.
Despite the rise of web recruitment and social networking, a surprising 74% of developers find jobs through traditional methods such as recruiters and colleagues. Human contact remains an important factor.
The top five job assessment priorities are:
- opportunities for professional development
- the compensation and benefits
- the office environment
- the technologies
- commuting time.
If you’re looking to employ new developers, the top benefits they prefer are:
|expected work hours||44.3%|
However, it depends on the country. Lower-paid countries such as Brazil and Mexico put more importance on pay than benefits.
If you’re looking to land your next job, these are the key skills your fellow developers consider important:
- track record of getting things done
- knowledge of algorithms and data structures
- experience with specific technologies
- experience with specific project management tools
I hope your company doesn’t rate your effectiveness by the number of hours worked, lines of code or bugs squished. The top five preferred performance metrics:
|on time/in budget||66.4%|
|benchmarked product performance||41.4%|
When asked to rate their job from 0 (not satisfied) to 10 (completely satisfied) almost half gave a rating of eight or more. Levels of satisfaction are lower for those working in finance, retail, wholesale or logistics, but I suspect development ranks well against other industries.
Despite being a happy bunch, only 25% are eager to stay in their current role. 13% are actively looking elsewhere and 59% would consider job hopping and spend up to five hours per week browsing the market. Those involved in machine learning and data analysis are most eager to move on, despite having the highest salaries …
The biggest bucks are earned by data scientists working in the US, who receive more than $100,000 per year.
It’s difficult to make comparisons because worldwide pay varies considerably. That said, most of us receive a reasonable wage compared to other industries. You can expect an initial salary of $33,000 followed by pay rises of $5,000 for every additional year of experience. Yet, 57% consider themselves to be underpaid.
The development language has a salary influence, with PHP developers earning around half of what Clojure developers can expect. However, be wary about these comparisons:
- Clojure jobs are rare.
- There are many millions of PHP developers working worldwide, which pushes averages lower. 62% consider themselves underpaid, which is little different to other technologies.
More than a third of developers can work remotely from home a few days every month. Almost a fifth can spend at least half their time working remotely, but 32% are permanently tied to their office desk.
Full-time remote working varies considerably across the world. It’s surprisingly low in countries such as Sweden, Switzerland and the Netherlands, which are often rated as the happiest places to live.
Momentous Miscellaneous Matters
Tabs or spaces? 43% use tabs, 38% use spaces. 19% use them interchangeably and don’t care one way or the other. I suppose they have more important matters to worry about?
Battles have been fought over the correct pronunciation of ‘GIF’. Only 26% use the creator’s preference of “jiff” with a soft ‘g’. Almost 66% (me included) prefer a hard ‘g’ as in “gift”. Another 6% prefer to spell out “gee-eye-eff”, while 2% use some other weird and wonderful pronunciation. “Jeff”?
60% of developers code to music, while 24% prefer deathly silence. 7% want ambient sounds like whale songs, forest sounds or the screech of a fork on a blackboard.
Almost 54% of developers are happy for others to use a noisy keyboard. I’m going to attach an amplifier to mine.
It’s worth browsing the Stack Overflow Survey, which provides more detail and is easy to navigate. But please remember: 96.4% of all statistics are wrong.
Craig is a freelance UK web consultant who built his first page for IE2.0 in 1995. Since that time he's been advocating standards, accessibility, and best-practice HTML5 techniques. He's created enterprise specifications, websites and online applications for companies and organisations including the UK Parliament, the European Parliament, the Department of Energy & Climate Change, Microsoft, and more. He's written more than 1,000 articles for SitePoint and you can find him @craigbuckler.