Who codes? More people in more places than ever before.

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.

Web developer 72.6% Desktop applications developer 28.9% Mobile developer 23.0% Database administrator 14.4% Developer with a statistics or mathematics background 11.3% Systems administrator 11.3% DevOps specialist 11.1% Embedded applications/devices developer 9.3% Data scientist 8.4% Other 7.5% Graphics programming 4.8% Graphic designer 3.9% 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.

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 Android 64.8% iOS 57.6% Windows Phone 4.3% Blackberry 0.7% 1,558 responses; select all that apply Analyst or consultant 38.8% Other 31.9% Data scientist 22.5% Educator or academic 15.0% Designer or illustrator 12.3% Product manager 7.5% C-suite executive 5.3% Marketing or sales manager 3.1% Elected official 0.7% 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.

Less than a year 2.9% 1 to 2 years 5.4% 2 to 3 years 6.4% 3 to 4 years 7.2% 4 to 5 years 7.6% 5 to 6 years 7.0% 6 to 7 years 5.6% 7 to 8 years 4.8% 8 to 9 years 3.7% 9 to 10 years 6.3% 10 to 11 years 4.3% 11 to 12 years 2.7% 12 to 13 years 2.6% 13 to 14 years 2.1% 14 to 15 years 3.9% 15 to 16 years 3.3% 16 to 17 years 2.0% 17 to 18 years 1.7% 18 to 19 years 1.3% 19 to 20 years 2.0% 20 or more years 17.2% 51,145 responses Less than a year 1.1% 1 to 2 years 2.5% 2 to 3 years 3.7% 3 to 4 years 5.2% 4 to 5 years 6.5% 5 to 6 years 6.8% 6 to 7 years 5.8% 7 to 8 years 5.2% 8 to 9 years 4.1% 9 to 10 years 7.1% 10 to 11 years 5.0% 11 to 12 years 3.3% 12 to 13 years 3.2% 13 to 14 years 2.6% 14 to 15 years 4.8% 15 to 16 years 4.0% 16 to 17 years 2.5% 17 to 18 years 2.2% 18 to 19 years 1.5% 19 to 20 years 2.4% 20 or more years 20.3% 35,983 responses

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.

Less than a year 7.4% 1 to 2 years 12.9% 2 to 3 years 11.7% 3 to 4 years 9.8% 4 to 5 years 8.3% 5 to 6 years 7.3% 6 to 7 years 4.7% 7 to 8 years 4.0% 8 to 9 years 3.1% 9 to 10 years 4.8% 10 to 11 years 4.1% 11 to 12 years 2.0% 12 to 13 years 1.8% 13 to 14 years 1.3% 14 to 15 years 2.1% 15 to 16 years 2.1% 16 to 17 years 1.7% 17 to 18 years 1.3% 18 to 19 years 1.0% 19 to 20 years 1.0% 20 or more years 7.5%

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.

Less than a year 5.9% 1 to 2 years 8.2% 2 to 3 years 8.0% 3 to 4 years 6.7% 4 to 5 years 6.8% 5 to 6 years 4.9% 6 to 7 years 3.1% 7 to 8 years 4.7% 8 to 9 years 2.9% 9 to 10 years 6.1% 10 to 11 years 5.1% 11 to 12 years 2.9% 12 to 13 years 2.1% 13 to 14 years 1.7% 14 to 15 years 4.0% 15 to 16 years 4.3% 16 to 17 years 2.0% 17 to 18 years 2.0% 18 to 19 years 0.6% 19 to 20 years 2.4% 20 or more years 15.8%

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.

Male 88.6% Female 7.6% Other 1.2% Gender non-conforming 0.9% Transgender 0.5% 35,990 responses Male 89.5% Female 7.2% Other 1.0% Gender non-conforming 0.7% Transgender 0.4% 26,762 responses Male 86.2% Female 8.3% Other 2.0% Gender non-conforming 1.6% Transgender 0.8% 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.

White or of European descent 74.4% South Asian 8.8% Hispanic or Latino/Latina 5.6% East Asian 4.9% Middle Eastern 3.6% I prefer not to say 2.6% Black or of African descent 2.5% I don’t know 2.0% Native American, Pacific Islander, or Indigenous Australian 0.9% 33,033 responses; select all that apply White or of European descent 76.2% South Asian 8.2% Hispanic or Latino/Latina 5.7% East Asian 4.3% Middle Eastern 3.4% I prefer not to say 2.3% Black or of African descent 2.3% I don’t know 1.7% Native American, Pacific Islander, or Indigenous Australian 0.9% 24,652 responses; select all that apply White or of European descent 64.4% South Asian 13.3% East Asian 7.7% Hispanic or Latino/Latina 5.3% Middle Eastern 4.7% I don’t know 3.8% Black or of African descent 3.7% I prefer not to say 3.2% 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.

None or prefer not to say 96.3% Other 1.8% Blind 1.0% Deaf 0.5% Unable to walk 0.2% Unable to type 0.1%

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.

A bachelor’s degree 29.1% A master’s degree 21.6% High school 16.8% Some college/university study, no bachelor's degree 13.7% A doctoral degree 5.9% 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% No education 0.6% 34,938 responses A bachelor’s degree 30.2% A master’s degree 22.0% High school 17.2% Some college/university study, no bachelor's degree 13.6% A doctoral degree 5.4% 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% No education 0.5% 26,066 responses A bachelor’s degree 26.0% A master’s degree 20.5% High school 16.6% Some college/university study, no bachelor's degree 13.3% A doctoral degree 6.5% 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% No education 0.7% 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.

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.

Web developer 72.4% Desktop applications developer 30.8% Mobile developer 20.1% Database administrator 14.5% DevOps specialist 12.4% Systems administrator 12.4% Developer with a statistics or mathematics background 11.5% Embedded applications/devices developer 9.7% Other 8.7% Data scientist 7.8% Graphics programming 4.9% Quality assurance engineer 3.5% Machine learning specialist 3.5% Graphic designer 3.3% 18,770 responses Web developer 73.6% Mobile developer 27.8% Desktop applications developer 22.4% Developer with a statistics or mathematics background 11.7% Database administrator 11.3% DevOps specialist 8.5% Data scientist 7.4% Embedded applications/devices developer 7.2% Systems administrator 7.0% Other 6.6% Graphic designer 3.8% Machine learning specialist 3.8% Quality assurance engineer 3.1% Graphics programming 2.8% 2,009 responses Web developer 80.9% Desktop applications developer 29.0% Mobile developer 27.8% Database administrator 17.0% Systems administrator 14.8% DevOps specialist 11.5% Developer with a statistics or mathematics background 10.2% Data scientist 9.6% Embedded applications/devices developer 8.2% Other 6.2% Graphics programming 4.7% Machine learning specialist 4.4% Graphic designer 4.2% Quality assurance engineer 4.0% 1,412 responses Web developer 74.2% Mobile developer 27.7% Desktop applications developer 25.0% Database administrator 12.9% Developer with a statistics or mathematics background 11.4% DevOps specialist 10.9% Systems administrator 10.4% Data scientist 8.8% Embedded applications/devices developer 7.7% Other 5.4% Machine learning specialist 4.8% Graphics programming 4.5% Graphic designer 3.9% 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.

Less than a year 10.7%

6.0% 1 to 2 years 16.6%

11.3% 2 to 3 years 14.0%

10.8% 3 to 4 years 9.7%

9.5% 4 to 5 years 8.6%

8.1% 5 to 6 years 6.6%

7.5% 6 to 7 years 4.7%

4.8% 7 to 8 years 3.6%

4.4% 8 to 9 years 2.2%

3.4% 9 to 10 years 3.7%

5.0% 10 to 11 years 3.9%

4.3% 11 to 12 years 1.6%

2.3% 12 to 13 years 1.4%

2.0% 13 to 14 years 0.6%

1.5% 14 to 15 years 1.2%

2.2% 15 to 16 years 1.5%

2.4% 16 to 17 years 1.2%

2.0% 17 to 18 years 1.2%

1.6% 18 to 19 years 1.1%

1.1% 19 to 20 years 0.6%

1.2% 20 or more years 5.4%

8.7% Female Male 29,255 responses White or of European descent 12.5 Native American, Pacific Islander, or Indigenous Australian 12.1 I prefer not to say 11.5 Hispanic or Latino/Latina 10.6 Middle Eastern 9.6 East Asian 9.2 Black or of African descent 8.8 I don’t know 8.3 South Asian 8.0 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.

icons (1) Education

I never completed any formal education 0.8% Primary/elementary school 2.0% Secondary school 11.5% Some college/university study without earning a bachelor’s degree 15.8% Bachelor’s degree 42.0% Master’s degree 21.7% Professional degree 1.4% Doctoral degree 2.5% I prefer not to answer 2.2% 51,392 responses I never completed any formal education 0.7% Primary/elementary school 0.6% Secondary school 6.3% Some college/university study without earning a bachelor’s degree 14.9% Bachelor’s degree 47.9% Master’s degree 24.9% Professional degree 1.5% Doctoral degree 2.2% 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.

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 natural science 4.4% A non-computer-focused engineering discipline 4.2% Mathematics or statistics 3.8% Something else 2.5% A humanities discipline 2.1% A business discipline 2.1% Management information systems 1.5% Fine arts or performing arts 1.5% A social science 1.5% I never declared a major 1.4% Psychology 0.5% A health science 0.3% 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% A natural science 3.5% Mathematics or statistics 3.4% Something else 2.1% 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% A social science 1.3% Psychology 0.4% A health science 0.2% 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% Something else 3.3% A natural science 3.2% 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% A social science 1.0% Management information systems 1.0% A health science 0.5% Psychology 0.4% 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.

Very important 15.9% Important 25.1% Somewhat important 26.9% Not very important 20.5% 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.

Self-taught 90.0% Online course 45.4% On-the-job training 41.2% Open source contributions 37.0% Hackathon 23.6% Coding competition 22.0% Part-time/evening course 15.3% Industry certification 14.7% Bootcamp 9.0% 30,354 responses; select all that apply Self-taught 91.1% On-the-job training 46.6% Online course 44.1% Open source contributions 38.9% Hackathon 25.4% Coding competition 21.8% Industry certification 16.4% Part-time/evening course 15.0% Bootcamp 9.4% 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.

Official documentation 80.2% Stack Overflow Q&A 80.1% Trade book 53.8% Non-Stack online communities 50.7% Built-in help 47.1% Stack Overflow Docs 27.5% Textbook 20.8% Friends network 20.7% Company internal community 18.5% Other 11.7% Tutoring/mentoring 4.4% 26,735 responses; select all that apply Official documentation 82.2% Stack Overflow Q&A 80.0% Trade book 56.3% Non-Stack online communities 50.5% Built-in help 47.6% Stack Overflow Docs 26.0% Friends network 20.3% Textbook 19.6% Company internal community 18.3% Other 10.7% Tutoring/mentoring 4.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.

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% Less than a month 6.0% One to three months 8.8% Four to six months 4.0% Six months to a year 3.0% Longer than a year 3.3% 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.

Yes, I program as a hobby 48.3% Yes, I contribute to open source projects 5.9% Yes, both 26.8% No 19.0% 51,392 responses Yes, I program as a hobby 45.2% Yes, I contribute to open source projects 6.2% Yes, both 27.7% No 20.8% 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.

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% Bootcamp 22.4% Conferences/meet-ups 22.3% Return to college 21.3% Participate in online coding competitions 15.3% Get a job as a QA tester 14.3% Participate in hackathons 11.7% Master's degree 11.2% Other 10.0% None of these 2.6% 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% Bootcamp 22.8% Return to college 21.0% Get a job as a QA tester 15.8% Participate in online coding competitions 14.0% Participate in hackathons 11.1% Master's degree 10.8% Other 10.4% None of these 2.3% 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.