Overview
This year, over 64,000 developers told us how they learn and level up, which tools they’re using, and what they want.
Each year since 2011, Stack Overflow has asked developers about their favorite technologies, coding habits, and work preferences, as well as how they learn, share, and level up. This year represents the largest group of respondents in our history: 64,000 developers took our annual survey in January.
As the world’s largest and most trusted community of software developers, we run this survey and share these results to improve developers’ lives: We want to empower developers by providing them with rich information about themselves, their industry, and their peers. And we want to use this information to educate employers about who developers are and what they need.
We learn something new every time we run our survey. This year is no exception:
- A common misconception about developers is that they've all been programming since childhood. In fact, we see a wide range of experience levels. Among professional developers, 11.3% got their first coding jobs within a year of first learning how to program. A further 36.9% learned to program between one and four years before beginning their careers as developers.
- Only 13.1% of developers are actively looking for a job. But 75.2% of developers are interested in hearing about new job opportunities.
- When we asked respondents what they valued most when considering a new job, 53.3% said remote options were a top priority. A majority of developers, 63.9%, reported working remotely at least one day a month, and 11.1% say they’re full-time remote or almost all the time.
- A majority of developers said they were underpaid. Developers who work in government and non-profits feel the most underpaid, while those who work in finance feel the most overpaid.
Want to dive into the results yourself? In a few weeks, we’ll make the anonymised results of the survey available for download under the Open Database License (ODbL). We look forward to seeing what you find!
Developer Profile
Who codes? More people in more places than ever before.
Geography
Each month, about 40 million people visit Stack Overflow to learn, share, and level up. We estimate that 16.8 million of these people are professional developers and university-level students.
Our estimate on professional developers comes from the things people read and do when they visit Stack Overflow. We collect data on user activity to help surface jobs we think you might find interesting and questions we think you can answer. You can download and clear this data at any time.
Developer Roles
Developer Type
Desktop applications developer
- 28.9%
Database administrator
- 14.4%
Developer with a statistics or mathematics background
- 11.3%
Systems administrator
- 11.3%
Embedded applications/devices developer
- 9.3%
Graphics programming
- 4.8%
Machine learning specialist
- 3.8%
Quality assurance engineer
- 3.5%
36,125 responses; select all that apply
About three-quarters of respondents identify as web developers, although many also said they are working to build desktop apps and mobile apps.
Specific Developer Types
Full stack Web developer
- 63.7%
Back-end Web developer
- 24.4%
Front-end Web developer
- 11.9%
10,696 responses; select all that apply
1,558 responses; select all that apply
Analyst or consultant
- 38.8%
Educator or academic
- 15.0%
Designer or illustrator
- 12.3%
Marketing or sales manager
- 3.1%
4,890 responses; select all that apply
Compared to the rest of the world, the United States has a higher proportion of people who identify as full stack web developers, whereas Germany has a comparatively lower proportion. As for mobile developers, the U.S. and United Kingdom have proportionally more iOS developers and fewer Android developers than the rest of the world.
People other than full-time developers also write code as part of their jobs, and they come to Stack Overflow for help and community. This year, we gave additional occupation options to respondents who are not full-time developers, but who occasionally code as part of their work. These roles include analyst, data scientist, and educator.
Experience
Years Since Learning to Code
A common misconception about developers is that they've all been programming since childhood. In fact, we see a wide range of experience levels. Among professional developers, one-eighth (12.5%) learned to code less than four years ago, and an additional one-eighth (13.3%) learned to code between four and six years ago. Due to the pervasiveness of online courses and coding bootcamps, adults with little to no programming experience can now more easily transition to a career as a developer.
Years Coding Professionally
40,890 responses
Web and mobile developers have significantly less professional coding experience, on average, than developers in other technical disciplines such as systems administration and embedded programming. Across all developer kinds, the software industry acts as the primary incubator for new talent, but sees a relatively low proportion of more experienced developers. For example, 60% of mobile developers at software firms have fewer than five years of professional coding experience, compared to 45% of mobile developers in other industries.
Among professional developers, 11.3% got their first coding jobs within a year of first learning how to program. A further 36.9% learned to program between one and four years before beginning their careers as developers. Globally, developers in Southern Asia had the lowest average amount of prior coding experience when beginning their careers; those in continental Europe had the highest.
Years Coded Professionally in the Past
974 responses; among respondents who indicated they no longer program as part of their job
Respondents who indicated that they had worked as professional developers in the past, but now did something else for a living, were asked how long they had coded as part of their jobs.
Demographics
Gender
Gender non-conforming
- 0.9%
35,990 responses
Gender non-conforming
- 0.7%
26,762 responses
Gender non-conforming
- 1.6%
4,545 responses
We asked respondents for their gender identity. Specifically, we asked them to select each of the following options that apply to them:
- Male
- Female
- Transgender
- Non-binary, genderqueer, or gender non-conforming
- A different identity (write-in option)
According to Quantcast, women account for 10% of Stack Overflow’s U.S. traffic. Similarly, 10% of survey respondents from the U.S. identify as women. In our survey last year, 6.6% of respondents from the U.S. identified as women.
Meanwhile, women account for 9% of Stack Overflow’s UK traffic, while 7.3% of survey respondents from the UK were women. Finally, women account for 8% of Stack Overflow’s traffic from both France and Germany, while 5.1% and 5.6% of respondents from those countries, respectively, identify as women.
We will publish additional analysis related to respondents’ gender identities in the coming weeks.
Ethnicity
White or of European descent
- 74.4%
Hispanic or Latino/Latina
- 5.6%
Black or of African descent
- 2.5%
Native American, Pacific Islander, or Indigenous Australian
- 0.9%
33,033 responses; select all that apply
White or of European descent
- 76.2%
Hispanic or Latino/Latina
- 5.7%
Black or of African descent
- 2.3%
Native American, Pacific Islander, or Indigenous Australian
- 0.9%
24,652 responses; select all that apply
White or of European descent
- 64.4%
Hispanic or Latino/Latina
- 5.3%
Black or of African descent
- 3.7%
Native American, Pacific Islander, or Indigenous Australian
- 0.8%
4,097 responses; select all that apply
This was the first year we asked respondents for their ethnic identity. We asked them to select each option that applied.
We asked respondents this question to add an important dimension to what we can learn about developers. In addition, public policy researchers and employers frequently look to us for information on how they can reach out to and better understand underrepresented groups among developers.
We will publish additional analysis related to respondents’ ethnic identities in the coming weeks.
Disability Status
None or prefer not to say
- 96.3%
1,755 responses identified as having a disability
Similar to our question about ethnicity, this was the first year we asked respondents for their disability status. Of the 3.4% of respondents who identified as having a disability, we asked them to select each option that applied, and we included a write-in option. We know developers can experience many forms of disability. For this survey, we confined our list of standard options on this question to disabilities that require some physical accommodation by employers.
We will publish additional analysis related to respondents’ disability status in the coming weeks.
Parents' Education Level
A bachelor’s degree
- 29.1%
Some college/university study, no bachelor's degree
- 13.7%
A professional degree
- 4.4%
Primary/elementary school
- 3.9%
I don't know/not sure
- 2.1%
I prefer not to answer
- 1.8%
34,938 responses
A bachelor’s degree
- 30.2%
Some college/university study, no bachelor's degree
- 13.6%
A professional degree
- 4.3%
Primary/elementary school
- 3.9%
I don't know/not sure
- 1.6%
I prefer not to answer
- 1.4%
26,066 responses
A bachelor’s degree
- 26.0%
Some college/university study, no bachelor's degree
- 13.3%
A professional degree
- 4.5%
I don't know/not sure
- 4.3%
Primary/elementary school
- 4.3%
I prefer not to answer
- 3.3%
4,338 responses
We asked respondents, “What is the highest level of education received by either of your parents?” Similar to ethnicity and disability status, this is the first year we asked this question. We asked this question in part because public policy researchers and some employers seek information about first-generation college students to improve their efforts to support them.
We will publish additional analysis on this in the coming weeks.
Developer Role and Gender
The dashed line shows the average ratio of men's to women's participation
While the sample as a whole skewed heavily male, women were more likely to be represented in some developer roles than others. They were proportionally more represented among data scientists, mobile and web developers, quality assurance engineers, and graphic designers. The dashed line shows the average ratio for all of these developer roles.
Developer Role and Ethnicity
Desktop applications developer
- 30.8%
Database administrator
- 14.5%
Systems administrator
- 12.4%
Developer with a statistics or mathematics background
- 11.5%
Embedded applications/devices developer
- 9.7%
Graphics programming
- 4.9%
Quality assurance engineer
- 3.5%
Machine learning specialist
- 3.5%
18,770 responses
Desktop applications developer
- 22.4%
Developer with a statistics or mathematics background
- 11.7%
Database administrator
- 11.3%
Embedded applications/devices developer
- 7.2%
Systems administrator
- 7.0%
Machine learning specialist
- 3.8%
Quality assurance engineer
- 3.1%
Graphics programming
- 2.8%
2,009 responses
Desktop applications developer
- 29.0%
Database administrator
- 17.0%
Systems administrator
- 14.8%
Developer with a statistics or mathematics background
- 10.2%
Embedded applications/devices developer
- 8.2%
Graphics programming
- 4.7%
Machine learning specialist
- 4.4%
Quality assurance engineer
- 4.0%
1,412 responses
Desktop applications developer
- 25.0%
Database administrator
- 12.9%
Developer with a statistics or mathematics background
- 11.4%
Systems administrator
- 10.4%
Embedded applications/devices developer
- 7.7%
Machine learning specialist
- 4.8%
Graphics programming
- 4.5%
Quality assurance engineer
- 3.8%
1,063 responses
Respondents who identified as White or of European descent were less likely to report being a mobile developer than those who identified as South Asian, Hispanic or Latino/Latina, or East Asian. A higher proportion of respondents who identified as Hispanic or Latino/Latina selected “web developer” as an option compared to those who selected White or of European descent, South Asian, or East Asian.
Important note: We didn't receive enough responses from developers of some ethnicities to include them here with reliable percentages. However, we do see that many developers who identify as Black or of African descent work as web developers and mobile developers, and many developers with Middle Eastern ethnic backgrounds work as web developers and desktop applications developers. Developers who identified as Native American, Pacific Islander, or Indigenous Australian work as web developers at a high rate.
Years of Coding Experience and Demographics
Less than a year
- 10.7%
- 6.0%
20 or more years
- 5.4%
- 8.7%
29,255 responses
White or of European descent
- 12.5
Native American, Pacific Islander, or Indigenous Australian
- 12.1
Hispanic or Latino/Latina
- 10.6
Black or of African descent
- 8.8
Mean of 33,004 responses
Between respondents who identified as men or women, nearly twice the number of women said they had been coding for less than a year. On average, respondents who identified as White or of European descent and those who identified as Pacific Islander or Indigenous Australian had the highest average number of years experience coding.
Education
Educational Attainment
I never completed any formal education
- 0.8%
Primary/elementary school
- 2.0%
Some college/university study without earning a bachelor’s degree
- 15.8%
I prefer not to answer
- 2.2%
51,392 responses
I never completed any formal education
- 0.7%
Primary/elementary school
- 0.6%
Some college/university study without earning a bachelor’s degree
- 14.9%
I prefer not to answer
- 1.1%
36,131 responses
Among current professional developers globally, 76.5% of respondents said they had a bachelor’s degree or higher, such as a Master’s degree or equivalent.
Undergraduate Major
Computer science or software engineering
- 50.0%
Computer engineering or electrical/electronics engineering
- 10.2%
Computer programming or Web development
- 9.1%
Information technology, networking, or system administration
- 5.0%
A non-computer-focused engineering discipline
- 4.2%
Mathematics or statistics
- 3.8%
A humanities discipline
- 2.1%
A business discipline
- 2.1%
Management information systems
- 1.5%
Fine arts or performing arts
- 1.5%
I never declared a major
- 1.4%
42,841 responses; select all that apply
Computer science or software engineering
- 54.2%
Computer engineering or electrical/electronics engineering
- 10.0%
Computer programming or Web development
- 9.1%
Information technology, networking, or system administration
- 4.3%
A non-computer-focused engineering discipline
- 3.6%
Mathematics or statistics
- 3.4%
A humanities discipline
- 1.9%
A business discipline
- 1.7%
Fine arts or performing arts
- 1.5%
Management information systems
- 1.4%
I never declared a major
- 1.3%
32,958 responses; select all that apply
Computer science or software engineering
- 48.3%
Computer programming or Web development
- 12.5%
Computer engineering or electrical/electronics engineering
- 10.2%
Information technology, networking, or system administration
- 6.8%
A non-computer-focused engineering discipline
- 3.1%
Mathematics or statistics
- 2.8%
A business discipline
- 2.4%
A humanities discipline
- 1.6%
I never declared a major
- 1.6%
Fine arts or performing arts
- 1.2%
Management information systems
- 1.0%
3,945 responses; select all that apply
More than half (54.2%) of professional developers who had studied at a college or university said they had concentrated their studies on computer science or software engineering, and an additional quarter (24.9%) majored in a closely-related discipline such as computer programming, computer engineering, or information technology. The remaining 20.9% said they had majored in other fields such as business, the social sciences, natural sciences, non-computer engineering, or the arts.
Among current students who responded to the survey, 48.3% said they were majoring in computer science or software engineering, and 30.5% said they were majoring in closely-related fields. Finally, 21.2% said they were focusing on other fields.
Importance of Formal Education
Not at all important
- 11.5%
23,355 responses
Of current professional developers, 32% said their formal education was not very important or not important at all to their career success. This is not entirely surprising given that 90% of developers overall consider themselves at least somewhat self-taught: a formal degree is only one aspect of their education, and so much of their practical day-to-day work depends on their company’s individual tech stack decisions.
However, computer science majors and computer engineering majors were the most likely (49.4%) to say their formal education was important or very important.
Compared to computer science majors, respondents who majored in less theoretical computer-related disciplines (such as IT, web development, or computer programming) were more likely to say their formal educations were unimportant.
Other Types of Education
On-the-job training
- 41.2%
Open source contributions
- 37.0%
Part-time/evening course
- 15.3%
Industry certification
- 14.7%
30,354 responses; select all that apply
On-the-job training
- 46.6%
Open source contributions
- 38.9%
Industry certification
- 16.4%
Part-time/evening course
- 15.0%
22,407 responses; select all that apply
Developers love to learn: 90% say they are at least partially self-taught. Among current professional developers, 55.9% say they’ve taken an online course, and 53.4% say they’ve received on-the-job training.
Ways Developers Teach Themselves
Official documentation
- 80.2%
Non-Stack online communities
- 50.7%
Stack Overflow Docs
- 27.5%
Company internal community
- 18.5%
26,735 responses; select all that apply
Official documentation
- 82.2%
Non-Stack online communities
- 50.5%
Stack Overflow Docs
- 26.0%
Company internal community
- 18.3%
20,018 responses; select all that apply
By far, reading official documentation and using Stack Overflow Q&A are the two most common ways developers level up their skills.
Bootcamp Success
I already had a job as a developer when I started the program
- 45.8%
I got a job as a developer before completing the program
- 9.7%
Immediately upon graduating
- 11.3%
Six months to a year
- 3.0%
I haven't gotten a job as a developer yet
- 8.1%
2,602 responses
Due to the high demand for professional developers, coding bootcamps have exploded in popularity in the past few years. Although commonly perceived as a way for non-developers to transition into a new career, we found that 45.8% of those who said they’d gone through a bootcamp were already developers when they started the program. This is likely because many developers decide at various parts in their career that they need to upgrade their skills or learn new technologies to stay relevant in the job market.
Program as a Hobby
Yes, I program as a hobby
- 48.3%
Yes, I contribute to open source projects
- 5.9%
51,392 responses
Yes, I program as a hobby
- 45.2%
Yes, I contribute to open source projects
- 6.2%
36,131 responses
Coding isn’t just a career; it can be a passion. Among all developers, 75.0% code as a hobby; even among professional developers a similar proportion (73.9%) do so. Additionally, 32.7% of developers said they contribute to open source projects.
What Kind of Learning Do Developers Recommend?
Take online courses
- 64.7%
Buy books and work through the exercises
- 49.9%
Part-time/evening courses
- 31.9%
Contribute to open source
- 31.5%
Conferences/meet-ups
- 22.3%
Participate in online coding competitions
- 15.3%
Get a job as a QA tester
- 14.3%
Participate in hackathons
- 11.7%
23,568 responses; select all that apply
Take online courses
- 64.5%
Buy books and work through the exercises
- 50.2%
Part-time/evening courses
- 32.1%
Contribute to open source
- 31.7%
Conferences/meet-ups
- 23.4%
Get a job as a QA tester
- 15.8%
Participate in online coding competitions
- 14.0%
Participate in hackathons
- 11.1%
17,025 responses; select all that apply
Want to learn to code but don’t know where to start? More developers say you should take an online course than any other method, followed by getting a book and working through the exercises.
As an important side note, we received great feedback on how we phrased this question, specifically the option, “Get a job as a QA tester and work your way into a developer role.” Although some developers start their careers as QA testers, the phrasing made it sound as if we saw QA as just a stepping stone, rather than a vital function and career option. QA professionals are our heroes (and QA engineers are 3.5% of our respondents this year!), and we apologize for not more carefully crafting our language.
Technology
The tools and trends of the trade.
Most Popular Technologies
Programming Languages
36,625 responses; select all that apply
36,935 responses; select all that apply. Shown as a percentage of the respondents who chose at least one language, framework, database, or platform.
27,612 responses; select all that apply. Shown as a percentage of the respondents who chose at least one language, framework, database, or platform.
For the fifth year in a row, JavaScript was the most commonly used programming language. And once again, SQL takes second place, and Java third. However, the use of Python overtook PHP for the first time in five years.
Frameworks, Libraries, and Other Technologies
20,229 responses; select all that apply
36,935 responses; select all that apply. Shown as a percentage of the respondents who chose at least one language, framework, database, or platform.
27,612 responses; select all that apply. Shown as a percentage of the respondents who chose at least one language, framework, database, or platform.
Node.js and AngularJS continue to be the most commonly used technologies in this category.
Databases
29,452 responses; select all that apply
36,935 responses; select all that apply. Shown as a percentage of the respondents who chose at least one language, framework, database, or platform.
27,612 responses; select all that apply. Shown as a percentage of the respondents who chose at least one language, framework, database, or platform.
This is the first year we specifically asked developers what database technology they're using. MySQL and SQL Server were the most commonly used.
Platforms
Amazon Web Services (AWS)
- 28.1%
29,114 responses; select all that apply
Amazon Web Services (AWS)
- 22.2%
36,935 responses; select all that apply. Shown as a percentage of the respondents who chose at least one language, framework, database, or platform.
Amazon Web Services (AWS)
- 25.6%
27,612 responses; select all that apply. Shown as a percentage of the respondents who chose at least one language, framework, database, or platform.
Windows Desktop was the most commonly used platform by developers, followed by Linux Desktop.
Languages Over Time
In the five years we've been collecting the Developer Survey, we've seen languages such as Python and Node.js grow in popularity, while the usage of languages like C# and C has been shrinking.
Most Loved, Dreaded, and Wanted
Most Loved, Dreaded, and Wanted Languages
% of developers who are developing with the language or technology and have expressed interest in continuing to develop with it
% of developers who are developing with the language or technology but have not expressed interest in continuing to do so
% of developers who are not developing with the language or technology but have expressed interest in developing with it
For the second year in a row, Rust was the most loved programming language. This means that proportionally, more developers wanted to continue working with it than any other language. Swift, last year's second most popular language, ranked as fourth.
For the second year in a row, Visual Basic (for 2017, Visual Basic 6, specifically) ranked as the most dreaded language. Most dreaded means that a high percentage of developers who are currently using the technology express no interest in continuing to do so.
Python shot to the most wanted language this year (as in, the language developers want to use this year more than any other), after ranking fourth last year.
Most Loved, Dreaded, and Wanted Frameworks, Libraries and Other Technologies
% of developers who are developing with the language or technology and have expressed interest in continuing to develop with it
% of developers who are developing with the language or technology but have not expressed interest in continuing to do so
% of developers who are not developing with the language or technology but have expressed interest in developing with it
React is the most loved among developers, whereas Cordova is the most dreaded. However, Node.js is the most wanted.
Most Loved, Dreaded, and Wanted Databases
% of developers who are developing with the language or technology and have expressed interest in continuing to develop with it
% of developers who are developing with the language or technology but have not expressed interest in continuing to do so
% of developers who are not developing with the language or technology but have expressed interest in developing with it
Redis was the most loved database, meaning that proportionally, more developers wanted to continue working with it than any other database. Meanwhile, Oracle is the most dreaded. Finally, more developers wanted to work with MongoDB this year than any other database.
Most Loved, Dreaded, and Wanted Platforms
Amazon Web Services (AWS)
- 65.2%
% of developers who are developing with the language or technology and have expressed interest in continuing to develop with it
Amazon Web Services (AWS)
- 34.8%
% of developers who are developing with the language or technology but have not expressed interest in continuing to do so
Amazon Web Services (AWS)
- 18.6%
% of developers who are not developing with the language or technology but have expressed interest in developing with it
Linux Desktop was the most loved platform. Sharepoint was the most dreaded. And finally, more developers wanted to work with Android this year than any other platform.
Technologies and Occupations
Most Popular Languages by Occupation
20,091 responses; select all that apply
8,155 responses; select all that apply
5,258 responses; select all that apply
4,779 responses; select all that apply
JavaScript and SQL are the most popular languages across web developers, desktop developers, sysadmins/DevOps, and data scientists. Not surprisingly, R is far more popular with data scientists than other occupations.
Most Popular Developer Environments by Occupation
19,772 responses; select all that apply
7,973 responses; select all that apply
5,164 responses; select all that apply
4,659 responses; select all that apply
Visual Studio was the most popular developer environment tool for web developers, desktop developers, and data scientists—but not for sysadmins/DevOps, who preferred Vim above all else. Notepad++ was popular across the board.
Top Paying Technologies
Top Paying Technologies by Region
Median of 12,128 responses
Median of 3,603 responses
Median of 1,398 responses
Globally, developers who use Clojure in their jobs have the highest average salary at $72,000. In the U.S., developers who use Go as well as developers who use Scala are highest paid with an average salary of $110,000. In the UK, it's TypeScript at $53,763, while in Germany, it's Java at the same. Finally, in France, it's Python at $42,151.
Technologies were clustered into several distinct "ecosystems" that tended to be used by the same developers. On the left of this chart we can see a large cluster representing web development (with JavaScript at the center) and one for Microsoft technologies (centered around C# and Visual Studio). On the right we see a constellation connecting Java, Android, and iOS. Other smaller correlated clusters included C/C++/Assembly, Raspberry Pi with Arduino, and languages like Python and R alongside language-specific IDEs.
Work
Developers generally love their career path. Whether they like their current job is another story.
Employment
Employment Status
Independent contractor, freelancer, or self-employed
- 10.2%
Not employed, and not looking for work
- 5.4%
Not employed, but looking for work
- 5.4%
51,392 responses
Independent contractor, freelancer, or self-employed
- 10.2%
Not employed, but looking for work
- 1.3%
Not employed, and not looking for work
- 0.3%
36,131 responses
Most developers are employed full time, and an additional 10.2% work as independent contractors, freelancers, or are self-employed.
Employment Status by Geography
Independent contractor, freelancer, or self-employed
- 6.7%
Not employed, and not looking for work
- 4.7%
Not employed, but looking for work
- 4.6%
11,455 responses
Independent contractor, freelancer, or self-employed
- 9.4%
Not employed, but looking for work
- 6.2%
Not employed, and not looking for work
- 5.3%
2,233 responses
Independent contractor, freelancer, or self-employed
- 11.5%
Not employed, and not looking for work
- 5.3%
Not employed, but looking for work
- 3.3%
4,740 responses
Independent contractor, freelancer, or self-employed
- 9.1%
Not employed, and not looking for work
- 5.1%
Not employed, but looking for work
- 2.3%
4,143 responses
Independent contractor, freelancer, or self-employed
- 9.6%
Not employed, and not looking for work
- 6.3%
Not employed, but looking for work
- 4.6%
1,740 responses
Not employed, but looking for work
- 9.0%
Independent contractor, freelancer, or self-employed
- 7.1%
Not employed, and not looking for work
- 5.8%
5,197 responses
The United States has a somewhat lower proportion of freelance or independent contractor developers compared to the rest of the world, and Germany has an unusually high proportion of developers working part-time.
Employment Status for Professional Developers by Geography
Independent contractor, freelancer, or self-employed
- 6.5%
Not employed, but looking for work
- 1.6%
Not employed, and not looking for work
- 0.2%
8,310 responses
Independent contractor, freelancer, or self-employed
- 9.8%
Not employed, but looking for work
- 2.0%
Not employed, and not looking for work
- 0.5%
1,605 responses
Independent contractor, freelancer, or self-employed
- 12.2%
Not employed, but looking for work
- 0.6%
Not employed, and not looking for work
- 0.3%
3,568 responses
Independent contractor, freelancer, or self-employed
- 10.3%
Not employed, but looking for work
- 0.6%
Not employed, and not looking for work
- 0.4%
2,767 responses
Independent contractor, freelancer, or self-employed
- 9.7%
Not employed, but looking for work
- 1.1%
Not employed, and not looking for work
- 0.5%
1,246 responses
Independent contractor, freelancer, or self-employed
- 6.4%
Not employed, but looking for work
- 1.5%
Not employed, and not looking for work
- 0.3%
3,438 responses
Respondents who are professional developers are employed full-time at higher rates.
Company Type
Industry Breakdown
Internet or Web services
- 14.3%
Finance, banking, or insurance
- 8.5%
Media, advertising, publishing, or entertainment
- 4.9%
Health care services
- 3.7%
Retail or wholesale trade
- 2.9%
Government (including military)
- 2.9%
I prefer not to answer
- 2.8%
Computer hardware or consumer electronics
- 2.3%
Transportation, logistics, or warehousing
- 2.0%
Aerospace or defense
- 1.7%
Industrial equipment/heavy machinery
- 1.4%
Energy generation/distribution
- 1.1%
Pharmaceuticals and/or medical devices
- 1.0%
Nonprofit/nongovernmental organizations
- 0.8%
Agriculture, forestry, or fisheries
- 0.6%
Mining or oil & gas extraction
- 0.5%
44,072 responses
Internet or Web services
- 14.7%
Finance, banking, or insurance
- 9.1%
Media, advertising, publishing, or entertainment
- 5.2%
Health care services
- 3.8%
Retail or wholesale trade
- 2.9%
Government (including military)
- 2.6%
I prefer not to answer
- 2.4%
Transportation, logistics, or warehousing
- 2.1%
Computer hardware or consumer electronics
- 2.1%
Aerospace or defense
- 1.7%
Industrial equipment/heavy machinery
- 1.3%
Energy generation/distribution
- 1.0%
Pharmaceuticals and/or medical devices
- 0.9%
Nonprofit/nongovernmental organizations
- 0.7%
Agriculture, forestry, or fisheries
- 0.5%
Mining or oil & gas extraction
- 0.5%
35,305 responses
More developers work for software and internet/web companies than any other industry, but developers are also employed in diverse industries across the economy. Aside from software, the portion of developers in different industries varies by region: In the United States, for instance, healthcare and government employ a higher than average proportion of developers.
Company Size
Fewer than 10 employees
- 9.8%
100 to 499 employees
- 18.7%
500 to 999 employees
- 6.4%
1,000 to 4,999 employees
- 9.8%
5,000 to 9,999 employees
- 4.1%
10,000 or more employees
- 14.6%
I prefer not to answer
- 1.7%
38,922 responses
Developers work for a wide range of company sizes. On average, companies that employ developers in the United States tend to be somewhat larger than the rest of the world.
Company Type
Privately-held limited company, not in startup mode
- 43.0%
Publicly-traded corporation
- 15.1%
Sole proprietorship or partnership, not in startup mode
- 7.3%
Government agency or public school/university
- 6.3%
Venture-funded startup
- 6.1%
I prefer not to answer
- 4.7%
Pre-series A startup
- 3.3%
Non-profit/non-governmental organization or private school/university
- 3.2%
38,823 responses
We often picture developers working at startups, but worldwide, only about 9% of developers work at startups. The majority of developers work at publicly-traded corporations or privately-held companies.
Career Satisfaction
How Do Developers Feel About Their Jobs and Careers?
0 - Not at all satisfied
- 1.2%
10 - Completely satisfied
- 10.3%
40,376 responses
0 - Not at all satisfied
- 0.9%
10 - Completely satisfied
- 12.7%
42,695 responses
Developers tend to be satisfied with their career, and more so in general than with their current job. Overall, career satisfaction does not vary significantly by industry. However, current job satisfaction is significantly lower for developers working in finance, retail/wholesale, and logistics.
Average career satisfaction "jumps" to a slightly higher level after a developer has more than 4 years of experience.
How Satisfied Are Developers with Their Equipment?
Storage read/write speed
- 3.78
Processing power (CPU and/or GPU)
- 3.73
Monitors/screens (number of, size, resolution)
- 3.72
Average of 29,841 responses on a 1-5 scale, where 1 indicates 'Not at all satisfied' and 5 indicates 'Very satisfied'
In general, developers are getting what they need to do their jobs. Developers were generally satisfied with their equipment including the number, size, and resolution of their monitors.
Looking for a Job
Job Search Status
I’m not actively looking, but I am open to new opportunities
- 62.1%
I am not interested in new job opportunities
- 24.8%
I am actively looking for a job
- 13.1%
33,380 responses
Only 13.1% of developers are actively looking for a job. But 75.2% of developers are interested in hearing about new job opportunities.
If you're an employer, Stack Overflow Talent can help you recruit both active and passive candidates.
Job Search Status by Geography
I’m not actively looking, but I am open to new opportunities
- 59.0%
I am not interested in new job opportunities
- 28.2%
I am actively looking for a job
- 12.7%
7,852 responses
I’m not actively looking, but I am open to new opportunities
- 60.8%
I am not interested in new job opportunities
- 27.7%
I am actively looking for a job
- 11.5%
1,531 responses
I’m not actively looking, but I am open to new opportunities
- 59.1%
I am not interested in new job opportunities
- 31.4%
I am actively looking for a job
- 9.5%
3,171 responses
I’m not actively looking, but I am open to new opportunities
- 59.4%
I am not interested in new job opportunities
- 31.6%
I am actively looking for a job
- 9.0%
2,706 responses
I’m not actively looking, but I am open to new opportunities
- 64.2%
I am not interested in new job opportunities
- 27.8%
I am actively looking for a job
- 8.0%
1,088 responses
I’m not actively looking, but I am open to new opportunities
- 60.8%
I am actively looking for a job
- 26.6%
I am not interested in new job opportunities
- 12.5%
3,022 responses
Job seeking status tended to be consistent across regions such as the U.S., Canada, UK, Germany, and France.
Who's Actively Looking for a Job?
Machine learning specialist
- 14.3%
Quality assurance engineer
- 12.2%
Developer with a statistics or mathematics background
- 12.2%
Database administrator
- 12.0%
Systems administrator
- 11.4%
Desktop applications developer
- 11.3%
Embedded applications/devices developer
- 10.7%
Graphics programming
- 10.4%
Mean of 24,024 responses
Among professional developers looking for work, a higher proportion of machine learning specialists and data scientists were looking for jobs compared to other occupation types. That said, only 14.3% and 13.2% respectively are actively looking.
Job Discovery
How Did Developers Find Their Current Job?
A friend, family member, or former colleague told me
- 26.8%
I was contacted directly by someone at the company (e.g. internal recruiter)
- 17.9%
A general-purpose job board
- 13.9%
An external recruiter or headhunter
- 13.4%
I visited the company’s Web site and found a job listing there
- 8.5%
A career fair or on-campus recruiting event
- 7.7%
A tech-specific job board
- 4.0%
23,737 responses
Networking matters. The most common way developers found their most recent job was through a friend, family member, or former colleague who told them about it. The second most common, however, is by being contacted by someone at the company, such as a company recruiter.
Hours Per Week Spent on Job Searches
Developers who are actively looking for a job spend a median of 5 hours per week on their job search. Those who are passively looking spend a median of 1 hour a week, and those who are not interested in new job opportunities spend a median of 0 hours.
Job Priorities
How Do Developers Assess Potential Jobs?
Opportunities for professional development
- 4.23
The compensation and benefits offered
- 4.09
The office environment I’d be working in
- 4.01
The languages, frameworks, and other technologies I’d be working with
- 4.01
The amount of time I’d have to spend commuting
- 3.93
How projects are managed at the company or organization
- 3.85
The experience level called for in the job description
- 3.59
The specific department or team I’d be working on
- 3.58
The specific role or job title I’d be applying for
- 3.56
The financial performance or funding status of the company or organization
- 3.54
How widely used or impactful the product or service I’d be working on is
- 3.46
The opportunity to work from home/remotely
- 3.43
The industry that I’d be working in
- 3.41
The reputations of the company’s senior leaders
- 3.28
The diversity of the company or organization
- 3.01
Average of 22,692 responses on a 1-5 scale, where 1 indicates 'Not at all important' and 5 indicates 'Very important'
In general, developers prioritized opportunities for professional development over any other factor by a large margin. This could mean they're looking to advance up the ranks, but it could also be a sign of developers wanting to stay ahead of the game with their company's help. Software is one of the most rapidly changing industries in history; it takes considerable work to keep skills sharp.
What Developers Value in Compensation/Benefits
Expected work hours
- 44.3%
Professional development sponsorship
- 37.8%
Education sponsorship
- 17.5%
30,235 responses; choosing at most 5 options
The benefits selected the most often by respondents related to mental and physical health: vacation days, remote options, and health benefits.
Importance of Compensation/Benefits by Geography
Scores are on a 1-5 scale, where 1 indicates 'Not at all important' and 5 indicates 'Very important'
How much developers are paid, and how highly developers say they value pay in assessing jobs, changes from country to country. In countries like Mexico and Brazil, developers have lower salaries, but place a high importance on pay. In countries like Sweden and Switzerland, we see the lowest scores for developers using compensation to assess jobs.
Diversity
Is Diversity in the Workplace Important?
30,903 responses
A vast majority—88.7%—of developers at least somewhat agreed that diversity is important, up from 73% last year.
Who Values Diversity
Black or of African descent
- 80.3%
- 75.6%
Hispanic or Latino/Latina
- 87.3%
- 70.7%
Middle Eastern
- 72.5%
- 65.4%
Native American, Pacific Islander, or Indigenous Australian
- 69.2%
- 66.9%
White or of European descent
- 80.7%
- 60.5%
23,173 responses; % who agreed or strongly agreed
Respondents who identify as women were more likely to agree or strongly agree that diversity in the workplace is important than respondents who identify as men. Men of White or of European descent were much less likely to agree or strongly agree that diversity is important than men of any other ethnicity.
Diversity and Experience
More women than men agree that diversity in the workplace is important, but there is not a big effect related to years of experience. Between those with less experience and more experience, we see consistent results about who values diversity.
Salary
Salary by Developer Type
DevOps specialist
- $60,215
Machine learning specialist
- $57,000
Developer with a statistics or mathematics background
- $55,000
Quality assurance engineer
- $53,757
Embedded applications/devices developer
- $52,500
Desktop applications developer
- $50,538
Systems administrator
- $50,000
Database administrator
- $49,242
Graphics programming
- $45,161
Median of 12,475 responses; USD
DevOps and machine learning specialists tend to command the largest salaries globally. Please see our Methodology section for information on how we converted local currencies used by respondents to U.S. dollars.
Salaries by Geography
Machine learning specialist
- $108,000
Developer with a statistics or mathematics background
- $101,000
DevOps specialist
- $100,000
Embedded applications/devices developer
- $100,000
Graphics programming
- $93,000
Desktop applications developer
- $92,000
Systems administrator
- $90,000
Database administrator
- $85,000
Quality assurance engineer
- $85,000
Median of 3,630 responses; USD
Developer with a statistics or mathematics background
- $59,091
DevOps specialist
- $55,492
Desktop applications developer
- $53,030
Embedded applications/devices developer
- $53,030
Graphics programming
- $53,030
Machine learning specialist
- $53,030
Database administrator
- $50,970
Systems administrator
- $49,242
Quality assurance engineer
- $46,212
Median of 651 responses; USD
DevOps specialist
- $56,250
Developer with a statistics or mathematics background
- $53,906
Machine learning specialist
- $52,500
Quality assurance engineer
- $50,000
Desktop applications developer
- $48,813
Systems administrator
- $48,750
Graphics programming
- $48,060
Embedded applications/devices developer
- $47,813
Database administrator
- $46,250
Median of 1,422 responses; USD
Embedded applications/devices developer
- $58,065
Machine learning specialist
- $56,989
DevOps specialist
- $55,914
Quality assurance engineer
- $54,301
Developer with a statistics or mathematics background
- $53,763
Desktop applications developer
- $51,613
Database administrator
- $49,247
Systems administrator
- $48,387
Graphics programming
- $46,774
Median of 959 responses; USD
Quality assurance engineer
- $53,763
Machine learning specialist
- $48,387
Developer with a statistics or mathematics background
- $45,161
DevOps specialist
- $45,161
Embedded applications/devices developer
- $41,290
Graphics programming
- $40,860
Desktop applications developer
- $38,710
Database administrator
- $38,441
Systems administrator
- $38,172
Median of 465 responses; USD
Embedded applications/devices developer
- $14,623
Graphics programming
- $11,746
Machine learning specialist
- $8,809
Systems administrator
- $8,809
Desktop applications developer
- $8,061
Quality assurance engineer
- $7,782
Developer with a statistics or mathematics background
- $7,341
Database administrator
- $7,194
Median of 804 responses; USD
Average top earners vary by geography. In Canada, for instance, data scientists were top earners, receiving an average of $60,606. Meanwhile in France, QA engineers received the highest average salary.
Salary and Experience by Developer Type
Unsurprisingly, years of experience were correlated with salary.
Salary and Experience by Language
Developers using languages listed above the blue line in this chart such as Go, Rust, and Clojure are being paid more even given how much experience they have. Developers using languages below the blue line like PHP, however, are paid less even given years of experience. The size of the circles in this chart represents how many developers are using that language compared to the others.
Salary Self-Assessment
Neither underpaid nor overpaid
- 36.1%
13,387 responses
A majority of developers said they were underpaid. Developers who work in government and non-profits feel the most underpaid, while those who work in finance feel the most overpaid.
Salary Self-Assessment by Language
Developers who use languages such as JavaScript, Perl, and Python reported feeling underpaid less often than developers who use languages such as Haskell and Matlab.
Students' Expected Salaries
Students' average expected salary
- $33,142
Average salary for <1 yr experience
- $33,299
2,566 and 705 responses, respectively; USD
Students looking to become professional developers generally had spot-on expectations of what they'll be making once they enter the workforce.
Evaluating Developers
What Would Developers Choose for Performance Metrics?
Customer satisfaction
- 71.7%
Benchmarked product performance
- 41.4%
Revenue performance
- 28.3%
25,472 responses; select all that apply
What's the best way to evaluate a developer? According to our respondents, it's most likely not lines of code or hours worked. Developers generally supported customer satisfaction and being on time and on budget as the best ways to evaluate the performance of a fellow developer.
What Do Developers Think Employers Should Prioritize When Recruiting?
Communication skills
- 4.10
Track record of getting things done
- 4.09
Knowledge of algorithms and data structures
- 3.77
Experience with specific tools (libraries, frameworks, etc.) used by the employer
- 3.53
Experience with specific project management tools & techniques
- 2.90
Previous companies worked at
- 2.83
Contributions to open source projects
- 2.81
Educational credentials (e.g. schools attended, specific field of study, grades earned)
- 2.77
Previous job titles held
- 2.73
Stack Overflow reputation
- 2.27
Average of 28,925 responses on a 1-5 scale, where 1 indicates 'Not at all important' and 5 indicates 'Very important'
What should employers look for when reviewing candidates? Respondents said communication skills and a track record of getting things done were the most important.
Development Practices
Which Methodologies Do Developers Use?
Domain-driven design
- 13.5%
25,771 responses; select all that apply
Domain-driven design
- 14.9%
20,519 responses; select all that apply
Agile and Scrum are popular methodologies for developers to keep their projects on track, and 42.8% of developers have used pair programming to improve their code quality and skill set.
Version Control
Team Foundation Server
- 7.3%
I don't use version control
- 4.8%
I use some other system
- 3.0%
Copying and pasting files to network shares
- 1.7%
30,730 responses; select all that apply
Team Foundation Server
- 8.8%
I use some other system
- 3.3%
I don't use version control
- 1.5%
Copying and pasting files to network shares
- 0.9%
22,646 responses; select all that apply
No surprises here: Git is the overwhelmingly clear choice of version control.
How Do You Pronounce 'GIF'?
With a hard "g," like "gift"
- 65.6%
With a soft "g," like "jiff"
- 26.3%
Enunciating each letter: "gee eye eff"
- 6.0%
51,008 responses
A vast majority—65.6%—of developers pronounce 'GIF' with a hard 'g,' like gift. We're not sure how the 2% of developers who chose "some other way" say it, but we're very, very curious.
Ship It! (We Can Optimize Later)
29,641 responses
Most developers agree that "good enough" is good enough. Shipping and then iterating is the preference of most developers.
Can A Developer Who's Sharing an Office Use a Noisy Keyboard?
42,046 responses
Although a majority of developers said it's okay to use a noisy keyboard in a shared office, the margin wasn't overwhelming. We expect this will continue to be a good, noisy debate.
Tabs or Spaces?
Well, 42.9% of developers use tabs. And 37.8% think that group is wrong.
Ideal Auditory Environment for Coding
Keep the room absolutely quiet
- 24.2%
Put on some ambient sounds (e.g. whale songs, forest sounds)
- 7.1%
Put on a movie or TV show
- 3.2%
Turn on the news or talk radio
- 2.3%
36,457 responses
Most developers said they liked at least some music on while coding, but 24.2% want complete silence. This is perhaps another good reason to give developers offices.
Remote Work
How Often Do Developers Work Remotely?
All or almost all the time (I'm full-time remote)
- 11.1%
More than half, but not all, the time
- 4.3%
Less than half the time, but at least one day each week
- 9.4%
A few days each month
- 35.1%
44,008 responses
When we asked respondents what they valued most when considering a new job, 53.3% said remote options were a top priority. 63.9% of developers reported working remotely at least one day a month, and 11.1% say they're full-time remote or almost all the time.
Job Satisfaction Rating and Remote Work
All or almost all the time (I'm full-time remote)
- 7.39
Less than half the time, but at least one day each week
- 7.12
A few days each month
- 7.08
More than half, but not all, the time
- 6.95
Mean of 40,325 responses; satisfaction on a 0-10 scale
There is a moderate correlation between remote work and job satisfaction. The highest job satisfaction ratings come from developers who work remote full time.
Where Are Developers Working Remote Full Time?
Mean of 44,008 responses
Russia had the highest percentage of remote workers by far, nearly double the rate in the United States.
Which Kinds of Developers Work Remote?
Graphics programming
- 17.4%
Systems administrator
- 16.9%
Database administrator
- 15.3%
Machine learning specialist
- 13.4%
Quality assurance engineer
- 12.7%
Developer with a statistics or mathematics background
- 11.7%
Embedded applications/devices developer
- 11.1%
Desktop applications developer
- 10.9%
Mean of 35,277 responses
Graphic designers and graphics programming professionals were the most common developer type that works remotely, whereas only 10.9% of desktop application developers said they worked remotely.
Checking in Code
How Often Do Developers Check In Code?
Multiple times a day
- 52.6%
Just a few times over the year
- 5.6%
29,561 responses
The majority of developers - 52.6% - check in code multiple times a day. This is consistent with our findings that 60.2% of developers believe in shipping quickly and iterating versus waiting to make it perfect the first time.
How are Job Satisfaction and Committing Code Related?
Multiple times a day
- 7.12
Just a few times over the year
- 6.45
Mean of 24,831 responses; satisfaction on a 0-10 scale
We see a relationship between job satisfaction and pushing code into production frequently. (We still see this even after controlling for other effects, such as industry.) A happy developer is a developer who can ship.
Methodology
How we ran and analyzed the survey.
This report is based on a survey of 64,227 software developers from 213 countries and territories around the world. Respondents were recruited primarily through channels "owned" by Stack Overflow, such as blog posts and banner ads on the site.
Of these, 36,601 (57% of respondents) completed the entire survey, and an additional 15,403 (24%) answered enough questions to be considered a "partial complete," for a total of 51,392 usable responses. These were distributed world-wide as follows:
| Region | Usable Responses |
|---|---|
| North America | 13,717 |
| UK & Ireland | 4,740 |
| France | 1,740 |
| Germany, Austria, Switzerland | 5,221 |
| Rest of Europe | 10,757 |
| Asia, Pacific, & Australia | 11,528 |
| Africa | 1,249 |
| South & Central America | 2,098 |
| Other or prefer not to say | 155 |
| Total | 51,392 |
The more complicated methodology stuff:
- The survey fielded from January 12th to February 6th, consistent with last year.
- The median response time for those who completed the entire survey was 26 minutes. Half of complete respondents spent between 19 and 42 minutes completing. Response time statistics are biased towards the top, because we allowed respondents to complete the survey at their leisure.
- Four-fifths of responses came from a Stack Exchange site. The remaining 20% came from social media channels through which we, partner organizations, and members of the community promoted the survey. Accordingly, visitors who came to Stack Overflow multiple times during the field period were more likely to notice the advertisements for the survey and begin to take it. Such frequent visitors include those currently seeking a job, community moderators, those who ask questions or answer them, and other highly-engaged users. Additionally, respondents who supplied a Stack Exchange profile were awarded a “Census” badge as an inducement to complete the survey.
| Category | # of Respondents | % of Respondents |
| Onsite Banners | 26,547 | 52% |
| Onsite Blog | 9,912 | 19% |
| Social Facebook | 6,098 | 12% |
| Onsite Meta | 4,778 | 9% |
| Social Misc | 258 | 1% |
| Social Partners | 526 | 1% |
| Social Reddit | 1,596 | 3% |
| Social Twitter | 1,677 | 3% |
| Total | 51,392 | 100% |
- We treated respondents as usable if they completed at least the questions that ask them to describe their "developer kind." We excluded respondents who completed the entire survey in less than 10 minutes.
- Salary data were obtained by first asking respondents for their day-to-day currency, and then asking them to write in either their current or expected post-graduation salary, depending on their circumstances.
- We converted salaries given in the 38 most-frequently-used currencies to [dollars / Euros / pounds sterling] using the exchange rate that prevailed mid-way through the survey field period.
- The question was optional; 32% of respondents who were asked for salary data provided it.
- Extreme outliers were trimmed from the current salary data by removing any response greater than $200,000, corresponding to the top half percent of responses.
- Many questions were only shown to respondents based on their previous answers. The primary "triggers" for whether questions were shown include self-description as a developer (Q1), country (Q3), employment status (Q17), job-seeking status (Q41), and Stack Overflow usage (Q91). The question numbers listed here correspond to the survey instrument, which we will release along with our downloadable, anonymized results in a few weeks.
- Most of the questions in the middle of the survey (following Q36, and up until Q100) were organized into blocks. The blocks about technology usage and Stack Overflow usage were shown to all respondents. The remaining six blocks were each shown to two-thirds of respondents, with each respondent receiving four of the six blocks:
- Developer attitudes (Q37 to Q39)
- Job-seeking and compensation (Q41 to Q66)
- Education and professional development (Q68 to Q72)
- Software development practices (Q84 to Q87)
- Hardware and other tools (Q89 and Q90)
- Stack Overflow attitudes (Q97 to Q99)
Additionally, the first five blocks were shown in random order, in order to reduce any unforeseen ordering biases.