Computer programmers
Sign In
Overview
Computer programmers write and test code that allows computer applications and software programs to function properly. They turn the program designs created by software developers and engineers into instructions that a computer can follow.
Predicted employment growth
Over the next decade, jobs for computer programmers are expected to shrink by 7%, and should have about 15,700 job openings a year.
Safety from automation
The likelihood of autmoation for ${title} is near the middle of all careers' likelihoods.
Workforce size
Computer programmers, with 294,900 workers, form a larger workforce than 84% of careers.
Education
About 73% of computer programmers have at least a bachelor's degree.
Education attained by computer programmers
High School
Some College
Bachelor's Degree
Master's Degree
Doctorate
Context: workers with bachelor's degrees
More computer programmers have bachelor's degrees than 82% of other careeers.
Salaries
The median (middle) salary for computer programmers is higher than 87% of all other jobs' middle salaries. The graph shows inflation-adjusted salaries for most computer programmers.
This job's median $84KAll jobs' median $39K$83K$38K20142015201620172018$0$50K$100K$150K
Context: Median Salary
Gender
Women account for 21% of computer programmers -- that's a smaller percentage than 63% of other jobs.
Gender of computer programmers
Men
Women
Context: Salary inequity
For each career, we compared the median (middle) men's salary to the median women's salary. For computer programmers, the median men's salary was 6% more the median woman's salary.
Race/Origin
About 27% of computer programmers are minority, and 27% are foreign-born.
Race/origin of computer programmers
White
Black
Pacific Islander
Hispanic
Asian
American Indian
Multiracial
Other
Context: Foreign-born workers (27%)
Where are the most jobs?
We ranked the number of jobs in Computer Programmers per thousand workers in each state, DC, and Puerto Rico. The darker the blue, the higher the job density.
AKMEVTNHWAIDMTNDMNMINYMARIORUTWYSDIAWIINOHPANJCTCANVCONEMOILKYWVVAMDDEAZNMKSARTNNCSCDCOKLAMSALGAHITXFLPR
Job benefits
Employer or union-sponsored pension plans are offered to 51% of computer programmers, and 75% have company-sponsored health insurance (18% have dependents enrolled in their employer's health plan).
Employer-provided health coverage for computer programmers
100% premiums covered
Partial premiums covered
Plan with no cost sharing
No health insurance
Top college degrees
Here are the top college degrees held by the 73% of people in this job who have at least a bachelor's degree. Some of degrees may link to multiple programs due to the way Census classifies college majors. Click on a program to learn more about career opportunities for people who major in that field.
The downside
Some jobs are more stressful than others, and some are just plain dangerous. The following list gives the percentages of computer programmers who report hazardous or difficult situations typically occurring at least once a week.
  • Time Pressure (67%)
SOURCES:24.0 O*NET
Salary and diversity
Salary overview
What do computer programmers earn?

In this section, we want to give you a clear idea of what you can expect to earn in this career. We use two sources of data here: the Bureau of Labor Statistics (BLS), which asks employers to classify their workforce and to report salaries using the SOC-specialty level of reporting, and the American Community Survey (ACS), which asks people to classify their jobs using the broad classifications that ididio uses for career profiles, and to self-report their salaries. For some jobs, the differences in survey approaches between BLS and ACS can paint a very different end-picture. Whenever possible, we provide data from both sources.

The BLS-compiled salary data is reported by companies for their employees. This data excludes self-employed workers. We first show the distribution of salaries for computer programmers, and then we show how the middle (median) salary for computer programmers compares to the BLS-computed median salaries of other careers.
Distribution: Salaries for computer programmers (BLS Salary Data)
$84K$0$50K$100K$150K
Context: Median salaries across careers (BLS Salary Data)
$84K$0$50K$100K$150K
We compiled household data from the ACS to determine the salaries that people working at least 35 hours a week report themselves to earn. Unlike the BLS estimates, this data includes self-employed wages. We first show the full salary distribution for all computer programmers, and then we show how the median (middle) salary for computer programmers compares to the median ACS-reported salary of other careers.
Distribution: Salaries for computer programmers (ACS Salary Data)
$82K$0$50K$100K$150K
Context: Median salaries across careers (ACS Salary Data)
$82K$0$50K$100K$150K
Employers and salary
A look at employers and corresponding salaries
The donut shares the break-down of workers by employer type, and following we show the salary distributions for these workers based on those employer types. For some careers, the salaries can be vastly different between private, government, and self-employment. As with our salary overview, we view the both the BLS economists' salary profiles and the household-reported salaries from ACS to get a thorough understanding of where computer programmers work and for what salary. We have the great faith in the accuracy of economist-vetted BLS data; however, the BLS restrictions on which employers are surveyed skews the data a bit (read more in the sources), and the ACS responses provide different and useful categorizations of employers and salaries.
Employers of Computer programmers (ACS)
Private for-profit (79.0%)
Private not-for-profit (5.9%)
Local government (2.8%)
State government (4.8%)
Federal government (2.5%)
Self-employed incorporated (2.7%)
Self-employed not incorporated (2.3%)
Working without pay (0.0%)
Distribution: Salaries of computer programmers by type of employer (ACS data)
Following are the salary distributions by employer type calculated by aggregating individual household survey responses.
$82K$84K$81K$78K$53K$70K$86K$70K$0$50,000$100,000$150,000$200,000Self-employed not incorporatedSelf-employed incorporatedFederal governmentState governmentLocal governmentPrivate not-for-profitPrivate for-profitAll
Distribution: Salaries of computer programmers by type of employer (BLS data)
Following are the salary distributions by employer type as reported by BLS based on large employer-focused surveys. We note that smaller employer categories are not included by BLS.
$84K$85K$75K$85K$75K$0$50,000$100,000$150,000Federal governmentState governmentLocal governmentPrivateAll
Age and career advancement
Salary growth for computer programmers

The biggest take-away from the following two charts is the relationship between salary and experience that we can infer from age. Does this job seem to attract especially younger or older workers? Does it reward experience?

Take a minute a look at how much you might expect your salary to increase with each five years' experience, as well as how the numbers working in this career changes. We only provide this data when there are enough consistent ACS survey responses to allow a reasonable margin of error, so for some careers you will see gaps in our reporting of salary by age.

$89K$92K$93K$92K$73K$84K$93K$60K$36K$0$50K$100K$150KSalary distribution20-2425-2930-3435-3940-4445-4950-5455-5960-64
020K40K60KNumber employed20-2425-2930-3435-3940-4445-4950-5455-5960-64

Our only sources for career data containing age, gender, or origin/race come from the Census Bureau. To provide these breakdowns, we have aggregated ACS person-level career survey responses by career, gender, race, and age. These graphics reflect the results of our aggregations, and are useful for identifying trends. A careful statistical study of the impact of age, gender, and race on salaries would correct for other factors that could be contributing to salary differences.

Gender and Equity
Computer programmers and gender

With 21% women, this occupation has a lower percentage of women than 63% of careers.

Context: Women in the workforce
21%0%20%40%60%80%100%
Gender of Computer programmers
Men (79%)
Women (21%)
Distribution: Salaries by gender

As we'll illustrate at the bottom of this section, the median salary for all full-time male workers in the US exceeds the full-time median salary for women by 20%. The situation is a little better for computer programmers, with the median salary for men 6% higher than the median salary for women. This chart shows you the salary range for most workers by gender.

$78K$83K$0$50K$100K$150KWomenMen
Context: Salary Inequity

Nationwide there are twenty careers for which men do not have a higher median (middle) salary than women. The chart below shows the salary inequity, the percentage by which the median men's salary is higher than the median women's salary, for most jobs. Computer programmers have one of the smaller percentage increases for men's salary, with the increase the men's median salary over the women's median salary in this job lower than that for 83% of other jobs.

6%0%20%40%60%80%100%

Our only sources for career data containing age, gender, or origin/race come from the Census Bureau. To provide these breakdowns, we have aggregated ACS person-level career survey responses by career, gender, race, and age. These graphics reflect the results of our aggregations, and are useful for identifying trends. A careful statistical study of the impact of age, gender, and race on salaries would correct for other factors that could be contributing to salary differences.

Race/Origin
Race and origin of computer programmers

The representation of minority and foreign-born workers is quite different between careers, and the relative pay of those workers also varies significantly between careers. There is a higher percentage of minority computer programmers than for 80% of other careers. This career hires a larger percentage of foreign-born workers than most other careers.

Race/origin of computer programmers
White (71% )
Asian (20% )
Black (5% )
Multiracial (2% )
Other (1% )
American Indian (0% )
Hispanic (0% )
Pacific Islander (0% )
Context: Representation of minorities in the workforce
27%0%20%40%60%80%100%
Context: Representation of foreign-born workers
27%0%20%40%60%80%100%
Distribution: Salaries for computer programmers by race/origin

For some careers, there is a pay disparity depending on race or origin, though this is not prevalent. We calculate standard errors for all of our calculations, and when the error is high we do not show results. Therefore, for some jobs will have omitted race/origin categories.

$61K$69K$73K$74K$81K$83K$87K$0$50K$100K$150KOtherBlackMultiracialHispanicWhiteAmerican IndianAsian
Distribution: Salaries for computer programmers by nativity
$80K$87K$0$50K$100K$150KAll native citizensAll foreign-born

Our only sources for career data containing age, gender, or origin/race come from the Census Bureau. To provide these breakdowns, we have aggregated ACS person-level career survey responses by career, gender, race, and age. These graphics reflect the results of our aggregations, and are useful for identifying trends. A careful statistical study of the impact of age, gender, and race on salaries would correct for other factors that could be contributing to salary differences.

Pathways to this career
Education requirements and salary
Education attained by computer programmers

According to the Bureau of Labor Statistics (BLS), computer programmers typically hold a bachelor's degree.

Sometimes the typical education identified by the BLS differs a bit from the reality of the how much education current workers actually have. The donut shows the education level held by people currently working as computer programmers as reported in responses to the American Community Survey. Following, we investigate whether education level influences salary for computer programmers.

Education attained by computer programmers
None
High School
Some College
Associate's Degree
Bachelor's Degree
Master's Degree
Professional Deg/Doct
Doctorate
Details: Education and training recommended for computer programmers

Most computer programmers have a bachelor’s degree; however, some employers hire workers who have other degrees or experience in specific programming languages. Most programmers get a degree in computer science or a related subject. Programmers who work in specific fields, such as healthcare or accounting, may take classes in that field to supplement their degree in computer programming. In addition, employers value experience, which many students gain through internships.

Most programmers learn a few computer languages while in school. However, a computer science degree gives students the skills needed to learn new computer languages easily. Students get hands-on experience writing code, testing programs, fixing errors, and doing many other tasks that they will perform on the job.

To keep up with changing technology, computer programmers may take continuing education classes and attend professional development seminars to learn new programming languages or about upgrades to programming languages they already know.

Details: Licensing and certification recommended for computer programmers

Programmers can become certified in specific programming languages or for vendor-specific programming products. Some companies require their computer programmers to be certified in the products they use.

Distribution: Salary by education level

What level of education is truly needed for computer programmers? Below we see the distribution of computer programmers salaries based on the education attained. These comparisons are based on all survey responses by those who identified themselves as computer programmers, and are not intended as a statistical analysis of salary differences that would correct for non-educational factors that could contribute to high or low earnings.

$59K$62K$68K$74K$83K$93K$93K$107K$0$50K$100K$150K$200KNone (1%)High School (4%)Some College (13%)Associate's Degree (9%)Bachelor's Degree (51%)Master's Degree (19%)Professional Deg/Doct (1%)Doctorate (2%)
Bachelor's degree pathways
College majors held by computer programmers

This table shows the college majors held by people working as computer programmers. Select any degree to see detailed information. We are able to connect careers to degrees using the American Community Survey (ACS), and their degrees are defined a little differently from our programs, which are based on standard CIP classifications. Therefore, selecting some degrees will lead to a selection of CIP-level programs from which to choose.

If you see "**" before the name of a degree/program, that means this field is one that the Department of Education believes is preparatory for this career. However, you can see from this list that those recommendations are far from your only path to this job!

Degree
Select any title to learn more about that degree
Percentage of Computer programmers with this degree
Salary for all majors
Salary distribution (across jobs). Showing 0-$200,000.
Median
Middle 50%
Middle 80%
Education
Final education level of all people with this major
Bachelor's Degree
Master's Degree
Doctorate
Gender
Gender of people this bachelor's degree
Men
Women
29.6%
$0$200K$87K
5.9%
$0$200K$97K
5.3%
$0$200K$92K
4.5%
$0$200K$73K
2.8%
$0$200K$80K
2.6%
$0$200K$63K
1.9%
$0$200K$89K
1.7%
$0$200K$73K
1.5%
$0$200K$86K
1.5%
$0$200K$78K
1.4%
$0$200K$67K
1.4%
$0$200K$53K
1.4%
$0$200K$63K
1.1%
$0$200K$72K
The link between degrees and careers
The link between degrees and careers

With the following "sankey" diagram, you can follow the top ten bachelor's degrees held by people working as computer programmers, and then, in turn, you can see the 10 occupations that hire the most of each degree's graduates. This visualization links fields of studies and careers, suggesting both similar careers and options for degrees. The full list of bachelor's degrees held by computer programmers given in the previous section reminds us that there are many paths to these careers beyond what we can summarize here.

This job
Top 10 majors
Each major's top ten jobs
Applications and systems software developersComputer programmersManagers (specialized areas)Computer and information systems managersComputer occupations (specialized areas)Computer systems analystsComputer support specialistsManagement analystsNetwork and computer systems administratorsChief executives and legislatorsElectrical and electronics engineersEngineers (specialized areas)Architectural and engineering managersPostsecondary teachersCivil engineersAccountants and auditorsComputer hardware engineersElementary and middle school teachersSecondary school teachersActuariesFirst-line supervisors of retail sales workersFinancial managersWholesale and manufacturing sales representativesSecretaries and administrative assistantsHuman resources workersFirst-line supervisors of non-retail sales workersMarketing and sales managersMechanical engineersIndustrial engineersAerospace engineersRetail salespersonsComputer ScienceElectrical EngineeringGeneral Computer andInformation SystemsComputer EngineeringMathematicsBusiness Management andAdministrationGeneral EngineeringGeneral BusinessManagement InformationSystems and StatisticsComputer Programming &Data ProcessingAll other degrees
Switching Careers
Most common new jobs
The most common next careers for computer programmers

What jobs will most computer programmers hold next year?

The data in this chart comes from person interviews for the Census Bureau's Current Population Survey. The survey interviews households eight times over a two-year period, allowing us a glimpse into how people move from job to job. You can see more details from the results of the survey in our last tab in this section, and you can read about our methodology in our source descriptions.

Here we see all of the jobs that at least 1% of computer programmers reported holding in their second year's survey. Is your future job on this list?

Computer programmersApplications and systems software developersComputer occupations (specialized areas)Computer systems analystsComputer and information systems managersComputer support specialistsWeb developersManagers (specialized areas)Computer, automated teller, and office machine repairers
Lateral career moves
Lateral job transitions for computer programmers

A lateral career transition is a move to a job with similar pay and responsibilities. A move to such a job can offer a change of pace without an increase in stress or a decrease in pay. The following table simply identifies all 8 jobs which were held by at least 1% of survey respondents before working as computer programmers as well as 1% of respondents after working as computer programmers. Select a row to investigate the job's full description and determine if it truly offers an opportunity for a lateral transition.

Lateral-move careers for computer programmers
Annual openings
How many openings are expected each year?
Salary
Salary distribution for people in this occupation. Range is 0-$200,000.
Median
Middle 50%
Middle 80%
Education
High School
Some College
Bachelor's Degree
Master's Degree
Doctorate
Gender
Men
Women
Applications and systems software developers
118,900
$0$200K$96K
Managers (specialized areas)
84,000
$0$200K$72K
Computer support specialists
72,300
$0$200K$54K
Computer systems analysts
45,200
$0$200K$75K
Computer and information systems managers
32,500
$0$200K$99K
Computer occupations (specialized areas)
22,500
$0$200K$68K
Web developers
15,200
$0$200K$60K
Computer, automated teller, and office machine repairers
11,500
$0$200K$43K
Full prior and next career listings
Prior and next careers for computer programmers: full listings

What do people typically do before and after they work as computer programmers? Here are the full lists of all jobs that at least 1% of computer programmers surveyed reported as holding a year earlier or later.

Choose which type of transition to view
Prior jobs
Next jobs
Prior careers for computer programmers
Annual openings
How many openings are expected each year?
Salary
Salary distribution for people in this occupation. Range is 0-$200,000.
Median
Middle 50%
Middle 80%
Education
High School
Some College
Bachelor's Degree
Master's Degree
Doctorate
Gender
Men
Women
Percentage Transitioning
What percentage worked in this job the previous year?
Applications and systems software developers
118,900
$0$200K$96K
16.4%
Managers (specialized areas)
84,000
$0$200K$72K
2.6%
Computer support specialists
72,300
$0$200K$54K
2.5%
Computer systems analysts
45,200
$0$200K$75K
3.2%
Computer and information systems managers
32,500
$0$200K$99K
2.1%
Computer occupations (specialized areas)
22,500
$0$200K$68K
5.1%
Computer programmers
15,700
$0$200K$82K
35.6%
Web developers
15,200
$0$200K$60K
1.4%
Computer, automated teller, and office machine repairers
11,500
$0$200K$43K
1.1%
No occupation
4.7%
Read about computer programmers
Responsibilities and activities
Responsibilities and activities

Computer programmers typically do the following:

  • Write programs in a variety of computer languages, such as C++ and Java
  • Update and expand existing programs
  • Test programs for errors and fix the faulty lines of computer code
  • Create and test code in an integrated development environment (IDE)
  • Use code libraries, which are collections of independent lines of code, to simplify the writing

Programmers work closely with software developers, and in some businesses their duties overlap. When such overlap occurs, programmers can do work that is typical of developers, such as designing programs. Program design entails planning the software initially, creating models and flowcharts detailing how the code is to be written, writing and debugging code, and designing an application or systems interface.

A program’s purpose determines the complexity of its computer code. For example, a weather application for a mobile device will require less programming than a social-networking application. Simpler programs can be written in less time. Complex programs, such as computer operating systems, can take a year or more to complete.

Software-as-a-service (SaaS), which consists of applications provided through the Internet, is a growing field. Although programmers typically need to rewrite their programs to work on different system platforms, such as Windows or OS X, applications created with SaaS work on all platforms. Accordingly, programmers writing SaaS applications may not have to rewrite as much code as other programmers do and can instead spend more time writing new programs.

Personality and skills
Personality and skills

Can you see yourself in the ranks of computer programmers? Here are the skills and traits that could lead to success.

Analytical skills
Computer programmers must understand complex instructions in order to create computer code.
Concentration
Programmers must focus their attention on their work as they write code or check existing code for errors.
Detail oriented
Computer programmers must closely examine the code they write because a small mistake can affect the entire computer program.
Troubleshooting skills
An important part of a programmer’s job is to check the code for errors and fix any they find.
Trends in employment
Salary trends
Distribution and trends: Salaries for computer programmers
Choose actual dollars or inflation-adjusted dollars to view
Adjusted for inflation
Historic dollars

In 2018, the median (middle) salary for computer programmers was higher than 87% of all other jobs' middle salaries. This graphic shows how the salary distribution (adjusted for inflation) has changed for this job over recent years. The gray line, as a comparison, shows the median salary of all US workers.

This job's median $84KAll jobs' median $39K$82K$39K201020112012201320142015201620172018$0$50K$100K$150K
Projected versus actual employment
Exploring actual employment trends versus projected trends

Currently, jobs for computer programmers are anticipated to shrink by 7%. over the next decade; 89% of jobs are projected to grow more.

The projected employment for computer programmers is the best guess created by talented economists and statisticians at the Bureau of Labor Statistics (BLS). However, as you look through several careers you'll notice that the projections are heavily influenced by past performance and may miss current trends. No one can tell the future, and as new information and better techniques are developed, actual counts and future projections may change. Here's a glimpse at the actual counts versus the projections over time.

201020152020202520300100,000200,000300,000400,000500,000
Employment counts
Actual measured employment
BLS 10-year predictions
Variation by state
Employment
State-by-state employment numbers

Some careers tend to be centered in specific parts of the country. For example, most jobs in fashion are in New York or California. Let's see if your dream job is easy to find in your dream location! We have a few choices for viewing the data that can help you get a full employment picture.

Job density versus job count

Which states hire the most computer programmers? We wonder if that's a fair question since states come in all sizes, so instead let's start with the question of which states have the highest density of people working as computer programmers. You can choose to view the number of jobs per state if you prefer.

BLS vs ACS data

This map defaults to employment information from the Bureau of Labor Statistics (BLS), which provides job totals carefully compiled for accuracy and with a primary focus on how employers describe their workers. The BLS job totals do not count self-employed workers. We've also compiled totals using the Census Bureau's American Community Survey (ACS) which are based on how workers describe themselves. Sometimes ACS results are quite a bit different from the employer-based BLS data.

Choose the metric to review
Jobs per 1000 working
Number of jobs
Use this data source
BLS
Number of Computer Programmers per 1,000 workers (BLS)
Select a state to see local area details
AKMEVTNHWAIDMTNDMNMINYMARIORUTWYSDIAWIINOHPANJCTCANVCONEMOILKYWVVAMDDEAZNMKSARTNNCSCDCOKLAMSALGAHITXFLPR
0.01.02.03.04.0
Salary
Salaries by state
Let's get a feel for where computer programmers earn the highest salaries. There are several choices for which data we consider and how we view that data, and each can lead to different conclusions, so please read on...
Median salary versus state ratio

We use two methods to compare salaries across states:

  • In-state comparisons: the ratio of median (middle) salaries for computer programmers compared to the median salary for all people working in each state, or
  • Median salary: the unaltered median salaries for computer programmers.

We hope the ratio allows perspective about how salaries may compare to the regional cost-of-living.

BLS vs ACS data

We have two sources for statewide salary information with important distinctions. The BLS data is created by surveying companies, missing individuals who are self-employed or work for smaller companies. The ACS data is compiled from multi-faceted household surveys and may reflect the inconsistencies that people may have in reporting information.

Choose the metric to review
In-state comparisions
Median salary
Use this data source
BLS
Median salary ratio: Computer Programmers to all workers (BLS)
The darkest shading corresponds to states in which computer programmers earn the highest salary when compared to other jobs in the state. We think this ratio might be a better indicator than the actual salary for your buying power as a state resident.
Select a state to see local area details
AKMEVTNHWAIDMTNDMNMINYMARIORUTWYSDIAWIINOHPANJCTCANVCONEMOILKYWVVAMDDEAZNMKSARTNNCSCDCOKLAMSALGAHITXFLPR
0.01.02.03.0
Compare to similar jobs

If this job interests you, then use the dots below to find other jobs you might like. The dots closer to the top represent jobs that are like Computer programmers (shown with a blue star). Look for the dots to the right to find the best salaries! (We pulled salary data from BLS, and they give a top salary value of just over $200K to protect privacy, so our graph would go much higher if the salaries were not top coded.)

How should the career similarity be computed

There are a number of ways to measure the similarity of jobs, here are a few we provide:

  • Interests: Also known as a Holland Code - Are you a thinker? A helper? What fits your personality?
  • Environment: Are there hazards? Will you be comfortable? Will it be stressful?
  • Knowledge: What do you need to know the most about?
  • Physical Abilities: Do you need to especially strong or coordinated?
Choose the similarity measure to compare careers
Interests
Environment
Knowledge
Physical Abilities
Jobs that are similar by Interests and Salary (All education levels)
Filter for this education level
All education levels
Filter for any of these broad categories
Select...