This year, over 100,000 developers told us how they learn, build their careers, which tools they’re using, and what they want in a job.

Each year, we ask the developer community about everything from their favorite technologies to their job preferences. This year marks the eighth year we’ve published our Annual Developer Survey results—with the largest number of respondents yet. Over 100,000 developers took the 30-minute survey this past January.

This year, we covered a few new topics ranging from artificial intelligence to ethics in coding. Here are a few of the top takeaways from this year’s results:

DevOps and machine learning are important trends in the software industry today. Languages and frameworks associated with these kinds of works are on the rise, and developers working in these areas command the highest salaries.

Only tiny fractions of developers say that they would write unethical code or that they have no obligation to consider the ethical implications of code, but beyond that, respondents see a lot of ethical gray. Developers are not sure how they would report ethical problems, and have differing ideas about who ultimately is responsible for unethical code.

Developers are overall optimistic about the possibilities that artificial intelligence offers, but are not in agreement about what the dangers of AI are.

Python has risen in the ranks of programming languages on our survey, surpassing C# in popularity this year, much like it surpassed PHP last year.

When assessing a prospective job, different kinds of developers apply different sets of priorities. Women say their highest priorities are company culture and opportunities for professional development, while men say their highest priorities are compensation and working with specific technologies.

Each month, about 50 million people visit Stack Overflow to learn, share, and build their careers. We estimate that 21 million of these people are professional developers and university-level students.

Our estimate of 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.

Almost 60% of respondents identify as back-end developers, and about 20% consider themselves mobile developers. The median number of developer type identifications per respondent is 2, and the most common pairs are combinations of back-end, front-end, and full-stack developer. Pairs that are highly correlated are database administrator and system administrator, DevOps specialist and system administrator, and designer and front-end developer.

Almost half of professional developers on Stack Overflow contribute to open source projects. Involvement in open source varies with language. Over 70% of developers who work with Rust, Julia, and Clojure contribute to open source, while less than 40% of developers who work with VBA, VB.NET, and C# do so.

Many developers work on code outside of work. Over 80% of our respondents say that they code as a hobby. Other interests or responsibilities outside of software don't seem to reduce developers' interest in coding as a hobby. Those who said they are parents or have other caretaking responsibilities, those who exercise daily, or those who spend the most time outside were slightly more likely to code as a hobby than other groups.

Over half of respondents have five years of professional coding experience or less. Developers who work with languages such as Cobol and Perl have the most years of professional coding experience, while developers who work with languages like Matlab, Haskell, and Kotlin have the fewest.

Developers who work in different areas of software development have different average amounts of experience. DevOps specialists and developers who code for desktop and enterprise applications have the most experience. DevOps as a discipline and professional identity is relatively new, but the people working in this field are highly experienced. Game/graphics developers and mobile developers have the fewest years of experience.

Worldwide, about three-fourths of professional developers have the equivalent of a bachelor's degree or higher. It is not that rare to find accomplished professional developers who have not completed a degree.

Of professional developers who studied at the university level, over 60% said they majored in computer science, computer engineering, or software engineering. This proportion is somewhat higher in currently enrolled students, and the proportion of respondents majoring in other engineering disciplines like electrical and mechanical engineering is lower among current students than among professionals.

Taken a part-time in-person course in programming or software development

17.8%

Completed an industry certification program (e.g. MCPD)

14.1%

Participated in a full-time developer training program or bootcamp

10.5%

63,711 responses; select all that apply

Developers are lifelong learners; almost 90% of all developers say they have taught themselves a new language, framework, or tool outside of their formal education. Among professional developers, almost half say they have taken an online course like a MOOC, and about a quarter have participated in a hackathon.

Tapping your network of friends, family, and peers versed in the technology

19.2%

A college/university computer science or software engineering book

19.2%

Internal Wikis, chat rooms, or documentation set up by my company for employees

16.4%

Pre-scheduled tutoring or mentoring sessions with a friend or colleague

4.1%

54,007 responses; select all that apply

Over 80% of respondents rely on Stack Overflow Q&A when learning something new. Additionally, developers understand the value of good documentation, as over 80% also use documentation as a resource when learning.

To improve my knowledge of a specific programming language, framework, or other technology

51.2%

To improve my ability to work on a team with other programmers

30.0%

To build my professional network

27.5%

To help me find new job opportunities

20.8%

To win prizes or cash awards

18.9%

25,691 responses; select all that apply

Among the respondents who said they have participated in hackathons or online coding competitions, their number one reason for engaging is that they find them enjoyable. These are also opportunities for learning, both general and specific.

Bootcamps are typically perceived as a way for newcomers to transition into a career as a software developer, but according to our survey, many participants in coding bootcamps were already working as developers. Almost half of our respondents who said they went to a coding bootcamp said they were already working as developers; these developers are likely updating their skills and moving to new areas of the tech industry. Of other bootcamp participants, the most common outcome is to find a job immediately or soon after graduating.

We asked our respondents about their gender identity, and found that over 90% of our respondents are male. According to Quantcast, women account for about 10% of Stack Overflow’s US traffic; this year 9% of US survey respondents are women. We had survey participation at almost the rate we would expect from our traffic, although such a low percentage points to problems with inclusion in the tech industry in general and Stack Overflow in particular. In regions including the United States, India, and the UK, women are represented at higher levels among students than among professional developers.

This year, 0.7% of respondents identified as transgender men or women. The gender identifications are select all that apply, so transgender men and women are included in the categories shown here.

Here again we see evidence for problems with diversity and inclusion. We see higher proportions of developers of color in students than professional developers. This year, 7.4% of professional developers in the United States identified as black, Hispanic or Latino/Latina, or Native American while over 10% of students in the United States identified as a member of one of these groups.

I have a mood or emotional disorder (ex. depression, bipolar disorder)

8.5%

I have an anxiety disorder

7.8%

I have a concentration and/or memory disorder

5.9%

I identify as autistic / a person with autism

2.1%

11,431 responses identified as having a mental difference

I am blind / have difficulty seeing

1.4%

I am deaf / have difficulty hearing

0.8%

I am unable to / find it difficult to walk and/or stand without assistance

0.3%

I am unable to / find it difficult to type

0.3%

1,702 responses identified as having a physical difference

We know developers can experience many forms of disability and difference, from mental health challenges to physical disability. Mental health issues like depression and anxiety are particularly common among our respondents. In the United States, almost 20% of respondents said they deal with either or both.

We find differences among developers by gender in our survey responses. For example, twice as many women than men have been coding two years or less, evidence for the shifting demographics of coding as a profession. Also, developers who identify as transgender men or women or of non-binary gender contribute to open source at higher rates (58% and 60%, respectively) than developers who identify as men or women overall (45% and 33%.)

The dashed line shows the average ratio of men's to women's participation

We see varying representation by men and women in different developer roles on our survey. All categories have dramatically more developers who identify as men than women but the ratio of men to women varies. Developers who are educators or academic researchers are about 10 times more likely to be men than women, while developers who are system admins or DevOps specialists are 25-30 times more likely to be men than women. Women have the highest representation as academics, QA developers, data scientists, and designers.

68,577 responses; agreement on a 1-5 scale, from strongly disagree to strongly agree

We asked how much respondents agree or disagree with several statements about their place in the developer community. Overall 70% of developers agree or strongly agree that they feel a sense of connection with other developers. Developers are overall confident about their own skills compared to their peers, with only 18% agreeing or strongly agreeing that they are not as good at programming as their colleagues.

Respondents' feelings on how much they belong and how they stack up to their peers change with how much experience they have. More experienced developers feel more connected, more confident, and less competitive. Notice that feeling less skilled drops quickly with experience while feeling less competitive drops more gradually and continues to drop into the second decade of coding experience.

This year we asked respondents if they have children or other dependents that they care for, and about a quarter of respondents say that they do. We asked in a free response question what these developers do for dependent care during work hours, and our respondents talked about options like school, their spouses/partners, and daycare.

The developers who said they do not have dependents to care for are younger on average than those who do. Over 30% of the developers without dependents are younger than 25, while only 5% of those with dependents are younger than 25. Almost 60% of developers with 10 or more years of professional coding experience have children or other dependents.

Our respondents include people who code as professionals, students, and hobbyists. The overwhelmingly majority spend large fractions of their waking hours on a typical day with their desktops and laptops.

Developers tell us they do not often skip meals because of their workload, and a majority say they exercise at least some. Over 60% of respondents exercise at least weekly, but the most often chosen exercise frequency is 'never'.

For the sixth year in a row, JavaScript is the most commonly used programming language. Python has risen in the ranks, surpassing C# this year, much like it surpassed PHP last year. Python has a solid claim to being the fastest-growing major programming language.

We see close alignment in the technology choices of professional developers and the developer population overall.

% of developers who are developing with the language or technology and have expressed interest in continuing to develop with it

Visual Basic 6

89.9%

Cobol

84.1%

CoffeeScript

82.7%

VB.NET

80.9%

VBA

80.0%

Matlab

77.4%

Assembly

71.4%

Perl

71.3%

Objective-C

70.3%

Lua

68.2%

Groovy

66.4%

Delphi/Object Pascal

65.1%

C

62.6%

Ocaml

58.5%

PHP

58.4%

Hack

57.9%

C++

53.3%

Erlang

52.8%

Ruby

52.6%

R

50.6%

Java

49.3%

Julia

47.2%

Haskell

46.4%

CSS

44.9%

HTML

44.3%

% of developers who are developing with the language or technology but have not expressed interest in continuing to do so

Python

25.1%

JavaScript

19.0%

Go

16.2%

Kotlin

12.4%

TypeScript

11.9%

Java

10.5%

C++

10.2%

Rust

8.3%

C#

8.0%

Swift

7.7%

HTML

7.6%

CSS

7.6%

SQL

6.8%

R

6.3%

C

5.9%

Ruby

5.7%

Scala

5.6%

Haskell

5.3%

Bash/Shell

4.9%

PHP

4.1%

F#

4.0%

Assembly

3.4%

Erlang

3.0%

Clojure

2.7%

Objective-C

2.6%

% of developers who are not developing with the language or technology but have expressed interest in developing with it

For the third year in a row, Rust is the most loved programming language among our respondents, followed close behind by Kotlin, a language we asked about for the first time on our survey this year. This means that proportionally, more developers want to continue working with these than other languages.

Also for the third year in a row, Visual Basic 6 ranks as the most dreaded programming 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 is the most wanted language for the second year in a row, meaning that it is the language that developers who do not yet use it most often say they want to learn.

% of developers who are developing with the language or technology and have expressed interest in continuing to develop with it

Cordova

59.6%

Xamarin

51.0%

Hadoop

46.1%

Angular

45.4%

Django

41.7%

Spring

40.0%

Spark

34.0%

.NET Core

34.0%

Node.js

33.6%

Torch/PyTorch

32.0%

React

30.6%

TensorFlow

26.5%

% of developers who are developing with the language or technology but have not expressed interest in continuing to do so

React

21.3%

Node.js

20.9%

TensorFlow

15.5%

Angular

14.3%

.NET Core

9.3%

Django

6.7%

Hadoop

6.4%

Xamarin

6.1%

Spark

4.8%

Torch/PyTorch

4.5%

Spring

3.7%

Cordova

2.6%

% of developers who are not developing with the language or technology but have expressed interest in developing with it

TensorFlow, one of the fastest growing technologies on Stack Overflow, is most loved by developers, while Cordova is most dreaded. React is the framework developers say they most want to work with if they do not already.

% of developers who are developing with the language or technology and have expressed interest in continuing to develop with it

IBM Db2

78.2%

Oracle

63.1%

Memcached

57.8%

Apache HBase

56.4%

Amazon Redshift

55.2%

Apache Hive

53.8%

Cassandra

53.6%

SQLite

51.9%

MySQL

51.3%

Neo4j

50.3%

Amazon DynamoDB

49.1%

SQL Server

48.4%

Google BigQuery

47.6%

MariaDB

46.7%

MongoDB

44.9%

Google Cloud Storage

43.5%

Microsoft Azure (Tables, CosmosDB, SQL, etc)

43.3%

Amazon RDS/Aurora

41.2%

Elasticsearch

40.1%

PostgreSQL

38.0%

Redis

35.5%

% of developers who are developing with the language or technology but have not expressed interest in continuing to do so

MongoDB

18.6%

Elasticsearch

12.2%

PostgreSQL

11.4%

Redis

9.7%

MySQL

7.5%

Microsoft Azure (Tables, CosmosDB, SQL, etc)

7.3%

Google Cloud Storage

7.3%

Cassandra

6.1%

Amazon DynamoDB

5.7%

Google BigQuery

5.6%

SQL Server

4.2%

Neo4j

3.9%

Amazon RDS/Aurora

3.5%

MariaDB

3.4%

Amazon Redshift

3.3%

SQLite

3.3%

Memcached

2.7%

Apache Hive

2.6%

Apache HBase

2.4%

Oracle

2.3%

IBM Db2

0.7%

% 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, Redis is most loved database, meaning that proportionally more developers wanted to continue working with it than any other database. IBM's Db2 offering ranks as the most dreaded database, and for the second year in a row, MongoDB is the most wanted database.

% of developers who are developing with the language or technology and have expressed interest in continuing to develop with it

SharePoint

71.8%

Drupal

70.4%

Salesforce

69.7%

Mainframe

68.9%

Windows Phone

68.8%

WordPress

63.2%

Predix

60.9%

IBM Cloud or Watson

56.3%

Heroku

47.8%

Amazon Echo

46.8%

Google Home

42.4%

Arduino

41.9%

Azure

39.0%

Windows Desktop or Server

38.8%

Gaming console

38.7%

Google Cloud Platform/App Engine

37.5%

Android

36.2%

Firebase

36.2%

Mac OS

36.1%

Apple Watch or Apple TV

36.0%

iOS

35.4%

ESP8266

32.6%

Raspberry Pi

32.3%

AWS

31.4%

Serverless

24.8%

% of developers who are developing with the language or technology but have not expressed interest in continuing to do so

Android

16.0%

Raspberry Pi

13.1%

AWS

12.0%

Linux

10.9%

iOS

9.6%

Firebase

8.3%

Google Cloud Platform/App Engine

8.2%

Arduino

7.7%

Mac OS

6.6%

Azure

6.4%

Amazon Echo

6.3%

Serverless

5.6%

Google Home

5.1%

Gaming console

4.4%

Apple Watch or Apple TV

3.3%

Heroku

3.2%

Windows Desktop or Server

2.7%

IBM Cloud or Watson

2.3%

WordPress

2.3%

Windows Phone

1.2%

ESP8266

1.1%

Salesforce

1.1%

Drupal

0.9%

SharePoint

0.7%

Mainframe

0.6%

% of developers who are not developing with the language or technology but have expressed interest in developing with it

Linux is once again the most loved platform for development, with serverless infrastructure also loved this year. Sharepoint is the most dreaded development platform for the second year in a row, and many developers say they want to start developing for the Android platform and the Raspberry Pi.

Visual Studio Code just edged out Visual Studio as the most popular developer environment tool across the board, but there are differences in tool choices by developer type and role. Developers who write code for mobile apps are more likely to choose Android Studio and Xcode, the most popular choice by DevOps and sysadmins is Vim, and data scientists are more likely to work in IPython/Jupyter, PyCharm, and RStudio.

Globally, respondents who use F#, Ocaml, Clojure, and Groovy earn the highest salaries, with median salaries above $70,000 USD. There are regional variations in which languages are associated with the highest pay. Erlang and Scala developers in the US are among the highest paid, while Clojure, Erlang, and Haskell developers earn the most in India.

Technologies cluster together into related ecosystems that tend to be used by the same developers. In this chart we see a large central cluster for web development (with JavaScript, HTML, and CSS) connected via SQL to one for Microsoft technologies (with C#, Visual Studio, and .NET Core). Along the left we see a constellation connecting Java, Android, and iOS across to Linux, bash/shell, and Python. Other smaller correlated clusters include Scala/Spark, C/C++, and other smaller technologies that include language-specific IDEs.

Some types of developers are involved in the increasing role of machine learning and artificial intelligence in the world today, so we asked developers what they think is dangerous and exciting about these technologies. There is not much consensus among developers about what is most dangerous; each answer was chosen roughly equally. The top choice for what is exciting about increasing AI is that jobs can be automated.

Developers are most likely to think that the creators and technologists behind the machine learning and AI algorithms are the ones who are ultimately most responsible for the societal issues surrounding artificial intelligence. About a quarter of respondents think that a regulatory body should be primarily responsible.

I'm excited about the possibilities more than worried about the dangers.

72.8%

I'm worried about the dangers more than I'm excited about the possibilities.

19.0%

I don't care about it, or I haven't thought about it.

8.2%

69,728 responses

Developers are mostly optimistic about the possibilities that artificial intelligence offers our world, with almost three-fourths of respondents saying that they are overall more excited than worried about the AI future.

The concerns that developers bring to issues around artificial intelligence depend on the kind of coding work they do. For example, data scientists are 1.5 times more likely to consider issues around algorithmic fairness dangerous than any upcoming singularity when computers become more intelligent than people, the most of any kind of developer. We included a free response option on this question; there was not much serious worry about Skynet, but many developers discussed systemic bias being built into algorithmic decision making and the danger of AI being used without the ability to inspect and reason about decision pathways.

Germany has an unusually high proportion of developers working part-time. Developers in the United States are somewhat less likely to work as independent contractors or freelancers. In all of these locations, between 70% and 80% of developers are employed full-time.

Software developers work in a diverse range of industries (so diverse that it's hard to ask about them all in one question!) both inside and outside the technology industry. Our answer choices focused on the tech industry this year, and of these choices, more professional developers work for companies doing web development, IT, and SaaS. Developers working in industries such as consulting and healthcare have more years of professional coding experience. Developers in these industries are twice as likely to have more than 20 years of experience than developers working in web development/design or eCommerce.

Developers work in companies of all sizes, from quite small to large enterprise organizations. More software developers in the United States work at larger companies compared to the rest of the world. The more experienced a developer is, the more likely they are to work at one of the largest companies. A developer with 30 years of experience is twice as likely to work at a company with more than 5,000 employees than a developer with 2 years of experience.

Working in a different or more specialized technical role than the one I'm in now

33.9%

Working as a founder or co-founder of my own company

25.7%

Doing the same work

19.4%

Working as an engineering manager or other functional manager

9.9%

Working as a product manager or project manager

6.6%

Working in a career completely unrelated to software development

2.8%

Retirement

1.7%

75,718 responses

Developers' career goals are largely focused on technical work, with just over half of respondents saying they want to be in the same or a different technical role in the future. About a quarter of our respondents say they want to start their own company, but this is most common among developers who are younger than 25 years old.

Developers tend to be more satisfied with their career 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 financial services and IT. Career satisfaction is highest for older developers, with ages of 50 or higher, and those with 20, 30, or more years of professional experience. Job satisfaction, by contrast, is highest for developers between 35 and 44 years old.

When posed with a hypothetical situation where they are asked to write code for a product or purpose that they consider clearly unethical, over half of our respondents say that they would not write such code. Ethical situations can be complicated, and about another third say that it would depend on the situation.

The question of what to do next after an ethical problem has arisen is even more tricky, according to our respondents. The most common answer, from almost half of respondents, is that how to report an ethical problem depends on the particulars of any given situation.

Most developers feel that management is ultimately most accountable for unethical results of code. Just under 20% of respondents said that a developer who writes code used for unethical purposes is most responsible.

Almost 80% of respondents affirm that considering what their code can be used for is the right thing for developers to do. Those who said they were unsure about this were 40% more likely to also say that they do not need to report any ethical problems.

We included a free response opportunity after this question, and we saw thoughtful reflections from developers. These include responses about how the tools developers build are powerful and come with a lot of responsibility, situations where unethical outcomes may accidentally arise, and how large teams are involved in building software but developers can be the last line of defense against unethical code.

Among professional developers, those who work at the C-level and as engineering managers or product managers are looking for work the least. Developers working in academia and data scientists (categories that we know often overlap) are looking for work at higher proportions.

We asked developers on Stack Overflow what they find annoying, exhausting, interesting, and exciting about the process of searching for a new job in separate free response questions. Respondents said the positive aspects of searching for a new job include the new opportunities, technologies, and people that a new position can offer. On the other hand, they expressed frustration with broken processes around interviews and recruiting.

How widely used or impactful the product or service I'd be working on is

6.5%

The specific department or team I'd be working on

5.5%

The financial performance or funding status of the company or organization

3.4%

The diversity of the company or organization

1.6%

66,985 responses; % of respondents who chose each option as their highest priority

The diversity of the company or organization

30.4%

The financial performance or funding status of the company or organization

14.1%

The industry that I'd be working in

13.7%

The opportunity to work from home/remotely

12.5%

How widely used or impactful the product or service I'd be working on is

9.2%

The specific department or team I'd be working on

8.6%

The languages, frameworks, and other technologies I'd be working with

3.2%

The office environment or company culture

3.0%

The compensation and benefits offered

2.8%

Opportunities for professional development

2.6%

66,984 responses; % of respondents who chose each option as their lowest priority

In general, developers' top priority in assessing a job is compensation, followed by the specific technologies that they will work with. The tech industry is struggling overall with issues around diversity, and individual developers are not making it a priority when looking for a job.

How widely used or impactful the product or service I'd be working on is

6.6%

The specific department or team I'd be working on

5.5%

The financial performance or funding status of the company or organization

3.3%

The diversity of the company or organization

1.3%

54,536 responses; % of respondents who chose each option as their highest priority

The office environment or company culture

16.9%

Opportunities for professional development

16.8%

The languages, frameworks, and other technologies I'd be working with

16.4%

The compensation and benefits offered

14.1%

The opportunity to work from home/remotely

10.2%

The industry that I'd be working in

7.3%

The specific department or team I'd be working on

5.9%

How widely used or impactful the product or service I'd be working on is

5.4%

The diversity of the company or organization

4.3%

The financial performance or funding status of the company or organization

2.6%

4,026 responses; % of respondents who chose each option as their highest priority

The office environment or company culture

19.4%

The languages, frameworks, and other technologies I'd be working with

13.0%

The compensation and benefits offered

12.3%

The diversity of the company or organization

11.9%

The opportunity to work from home/remotely

10.6%

Opportunities for professional development

9.9%

The industry that I'd be working in

8.4%

How widely used or impactful the product or service I'd be working on is

6.6%

The specific department or team I'd be working on

6.2%

The financial performance or funding status of the company or organization

1.5%

545 responses; % of respondents who chose each option as their highest priority

Different types of developers apply different sets of priorities when considering jobs. Developers who belong to gender minorities in tech rank the company culture and office environment as their highest concern when assessing a new job. The gender identification question allowed respondents to select all that apply.

2,516 responses; % of respondents who chose each option as their highest priority

The specifics of how developers are compensated with salary and benefits work differently across the world, so developer responses vary by geography. Health insurance is prioritized in countries without a national healthcare system (like the United States), and computer equipment allowances are unusually important to developers in India and the UK.

We asked our respondents to imagine they had a new coworker with four years of relevant experience joining their team, and then to estimate how long that person would take to become fully productive and contribute at a typical level. About three-fourths of developers thought that the hypothetical new coworker would be fully up to speed within three months or less. Looking to reduce tribal knowledge, onboard faster, and speed up development? Learn more about Stack Overflow Enterprise.

Engineering managers, DevOps specialists, and data scientists command the highest salaries. See our Methodology section for information on how we converted local currencies used by respondents to U.S. dollars.

Average top earners vary by geography. In India, for example, data scientists are among the top earners, while in European countries, back-end developers and developers working with embedded devices are among the top earners.

Naturally, developers with more years of experience are paid more. However, we also see that some type of coding work is paid more highly at the same level of experience. Data scientists and DevOps specialists are high earners for their level of experience.

Developers using languages that appear above the line in this chart, such as Go, Clojure, and F#, are being paid more even given how much experience they have. Developers using languages below the line, like PHP and Visual Basic 6, 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.

Developers visit Stack Overflow. A lot. Over 85% of respondents visit Stack Overflow at least a few times per week, with over half visiting every day. Our respondents also feel very positively about Stack Overflow. We asked a traditional net promoter score question for Stack Overflow as a whole and our NPS is 75, a world class score according to benchmarks.

Some developers come to Stack Overflow only to find answers to their questions, while others participate in the community by asking, answering, voting for, or commenting on questions. Over 40% of survey respondents participate on Stack Overflow a few times per month or more often. Interested in a place for you and your technical team to ask and answer questions in a secure environment? Learn more about Stack Overflow for Teams.

74,710 responses; agreement on a 1-5 scale, from strongly disagree to strongly agree

Like many websites, Stack Overflow has ads, and we want to know how to make our ads more relevant for our users. Over half of our respondents agreed or strongly agreed that they enjoy seeing online updates from companies they like and that online advertising can be valuable when it is relevant. About 40% of developers say they fundamentally dislike the concept of advertising.

60,479 responses; % of respondents who chose each option as their highest priority

The advertisement offers something of value, like a free trial

32.5%

The advertisement avoids fluffy or vague language

25.2%

The advertisement is from a company that I like

16.7%

The advertisement seems trustworthy

8.4%

The advertisement is honest about its goals

7.8%

The advertisement is relevant to me

5.1%

The advertisement provides useful information

4.3%

60,478 responses; % of respondents who chose each option as their lowest priority

In general, developers' top priority in assessing an advertisement is whether it's relevant to them, followed by whether it provides useful information and is trustworthy. Developers are not swayed by free offers in advertisements.

Mean of 64,804 responses; percent who consider themselves part of the Stack Overflow community; gender is select all that apply

Most of the respondents to our survey consider themselves part of our community, but this varies for different groups of people. For example, we find that respondents who identify as male see themselves as part of the community at higher rates than those with other gender identities. The tech community as a whole, and we at Stack Overflow in particular, still have work to do in this area.

70,687 responses; interest on a 1-5 scale, from not at all interested to extremely interested

As we work to make our community a better place for developers to learn, share, and grow their careers, we asked our survey respondents about their interest in possible new tools. An employer review system and help with career growth garnered the most interest.

In these free response questions, we asked developers first to describe the Stack Overflow community in general, and then what they would change about it. Developers were largely positive about Stack Overflow, focusing on the helpful nature of the community, and specifically had ideas about how questions, answers, comments, and reputation are handled. The treatment of new users and new people in our community were mentioned often as well.

This year, our survey included questions about what developers think the best, worst, most annoying, and most exciting things about Stack Overflow are. (These questions were randomized so that each respondent got one positive and one negative version.) In the positive versions of these questions, respondents were more likely to talk about the wealth of sharing and collaboration on our site. In the negative versions, respondents reflected on harsh interactions they've witnessed, downvotes, and handling of duplicate questions.

This report is based on a survey of 101,592 software developers from 183 countries around the world. This number of responses are what we consider “qualified” for analytical purposes based on completion and time spent on the survey; another approximately 20,000 responses were started but not included in the analysis because respondents did not answer enough questions. Of the qualified responses, 67,441 (66.4%) completed the entire survey.

Qualified Responses Worldwide

Europe

39,001

North America

25,016

Asia

24,700

South America

4,162

Africa

2,869

Australia/Oceania

2,591

Other (country not listed)

84

The survey was fielded from January 8 to January 28.

The median time spent on the survey for qualified responses was 25.8 minutes, and the median time for those who finished the entire survey was 29.4 minutes.

Respondents were recruited primarily through channels owned by Stack Overflow. The top 5 sources of respondents were banner ads, email lists, house ads, blog posts, and Twitter. Since respondents were recruited in this way, highly engaged users on Stack Overflow were more likely to notice the links for the survey and click to begin it. Respondents who finished the survey were awarded a “Census” badge as a motivation to complete the survey.

We treated responses as qualified for analysis if the user spent a certain amount of time relative to how far they got into the survey. Most survey responses that spent less than 5 minutes were excluded from the final sample.

We asked respondents about their salary. First, we asked what currency each respondent typically used. Then we asked that respondent what their salary was in that currency, and whether that salary was weekly, monthly, or yearly.

For a short time on the first day, there was a bug that left out the last part of the question (weekly vs. monthly vs. yearly); those salary responses are not included here.

We converted salaries from user currencies to USD using the exchange rate on 2018-01-18, and also converted to annual salaries assuming 12 working months and 50 working weeks.

This question, like most on the survey, was optional. There were 58,650 respondents (57.7% of qualified respondents) who gave us salary data.

The top approximately 1% of salaries inside and outside of the US were trimmed and replaced with threshold values. The threshold values for inside and outside the US were different.

Many questions were only shown to respondents based on their previous answers. For example, questions about jobs and work were only shown to those who said they were working in a job.

The questions were organized into several blocks of questions, which were randomized in order. Also, the answers to most questions were randomized in order.

Due to an error, Oracle and SQLite were excluded from the question about databases for the first day of the survey. We carefully examined whether the results for the other databases changed from the first day compared to the rest of the survey fielding period and they did not. The results shown here for database use and most loved/dreaded/wanted databases only use responses from after Oracle and SQLite were added to the possible answers.

On 2018-3-19, we made some edits to this site based on community feedback to address two issues: a) how we handled the responses of transgender developers, to avoid implying that being a transgender man or woman is a separate gender and b) a higher level of clarity throughout the discussion about our survey sample and its limitations.