Occupations · Computer and Mathematical
Computer Programmers
Create, modify, and test the code and scripts that allow computer applications to run. Work from specifications drawn up by software and web developers or other individuals. May develop and write computer programs to store, locate, and retrieve specific documents, data, and information.
O*NET 30.3 Database (USDOL/ETA) · occupation code 15-1251.00
What it pays
A single “average salary” hides the spread. This is the whole distribution — the gap between the bottom and top bar is usually the number that matters.
BLS Occupational Employment and Wage Statistics, May 2024 · national, cross-industry · annual wage
These are national figures, identical for every reader. The report recuts them for your metro area and ranks it among all of them.
Get yours →Pay over time
Median up 14% between 2019 and 2024, before inflation. The band shows the 10th to 90th percentile.
BLS OEWS, one release per year. Before May 2011 only national estimates were published, so geography detail starts there.
Where the jobs are
| Metro area | Median wage | Employed |
|---|---|---|
| New York-Newark-Jersey City, NY-NJ-PA | $109,590 | 6,510 |
| Los Angeles-Long Beach-Anaheim, CA | $104,410 | 4,750 |
| Washington-Arlington-Alexandria, DC-VA-MD-WV | $103,580 | 4,090 |
| San Francisco-Oakland-Hayward, CA | $122,000 | 3,780 |
| Dallas-Fort Worth-Arlington, TX | $99,780 | 3,620 |
BLS OEWS May 2024, metropolitan estimates · the 5 areas with the most people in this occupation
Your metro area, and where it ranks
LockedAll metropolitan areas BLS publishes for this occupation, with your own city's median and its rank among them.
Open in your report →Typical education to enter: Bachelor's degree · BLS Employment Projections 2024–34
What people in this job actually do
Ordered by how important the work is rated.
- Write, analyze, review, and rewrite programs, using workflow chart and diagram, and applying knowledge of computer capabilities, subject matter, and symbolic logic.
- Correct errors by making appropriate changes and rechecking the program to ensure that the desired results are produced.
- Perform or direct revision, repair, or expansion of existing programs to increase operating efficiency or adapt to new requirements.
- Write, update, and maintain computer programs or software packages to handle specific jobs such as tracking inventory, storing or retrieving data, or controlling other equipment.
- Consult with managerial, engineering, and technical personnel to clarify program intent, identify problems, and suggest changes.
- Conduct trial runs of programs and software applications to be sure they will produce the desired information and that the instructions are correct.
- Prepare detailed workflow charts and diagrams that describe input, output, and logical operation, and convert them into a series of instructions coded in a computer language.
- Compile and write documentation of program development and subsequent revisions, inserting comments in the coded instructions so others can understand the program.
- Train subordinates in programming and program coding.
- Consult with and assist computer operators or system analysts to define and resolve problems in running computer programs.
- Perform systems analysis and programming tasks to maintain and control the use of computer systems software as a systems programmer.
- Write or contribute to instructions or manuals to guide end users.
O*NET 30.3 task ratings, importance scale
Skills that matter most
Importance, rated 1 to 5.
O*NET 30.3 skills, importance scale
Software and tools
A dot marks what O*NET flags as in demand.
O*NET 30.3 software skills · hot-technology flag
What your tools are worth
Occupation-based, not posting-based: how much employment, pay and projected growth sit behind each tool. It is not a count of job ads.
| Tool | Value | Spread across occupations |
|---|---|---|
| C# | 88 | 16 → 55 occupations since 2015 |
| Python | 88 | 57 → 132 occupations since 2015 |
| C | 87 | 51 → 69 occupations since 2015 |
What your tools are worth
LockedThe same score for every tool in this occupation, plus the ones you ticked and the ones you did not.
Open in your report →What this work is actually like
Conditions rated against the average across all occupations — only what makes this job different is listed.
O*NET 30.3 Job Zones
Working conditions that stand out
O*NET 30.3 work context, frequency scale · observed 2018-08
How people actually get in
Share of workers by the education they hold.
O*NET 30.2 education, training and experience · observed 2018-08
What kind of person the work suits
Occupational interest profile, rated 1 to 7.
O*NET 30.2 occupational interests (RIASEC)
What you take with you
Skills rated for how well they transfer into other occupations.
O*NET 30.3 transferable skills, importance scale
Knowledge the work draws on
Abilities it leans on
O*NET 30.3 abilities and knowledge, importance scale
How this job is advertised
The same work is posted under many titles — this is what to search for.
O*NET 30.3 job titles reported for this occupation
Get this as a personal report
The same sourced evidence, recut for the closest published view of your city, state or industry, as a dated PDF.
Free page vs. the $29 report
The page above is a public national reference, identical for every reader — and we deliberately give away a lot of it. The report does three things this page cannot: it answers the question you type in your own words, using only figures that appear in the report with their sources; it ranks your city among all 445 metros instead of the twelve shown here; and it places your level on the employer pay ladder. Choose $49 for the wider comparison of industries, places and next moves, $99 to add named employers and the international purchasing-power index.
What changed since 2020
Comparing O*NET release 25.1 (2020-11-01) with 30.3 (2026-05-01). Signs, not colour alone, carry the meaning. 3 entries that were only relabelled between releases are left out.
Now listed 25
No longer listed 26
Diff across the O*NET releases held here in full since October 2015, following occupations through merges and retirements. O*NET re-surveys occupations on a rolling cycle, so “no change” can also mean “not re-surveyed”.
Related jobs
O*NET 30.3 related occupations
Also called
O*NET 30.3 alternative titles
The same work in Europe
| ESCO occupation | ISCO | Match |
|---|---|---|
| software developer | 2512.3 | close |
Official ESCO ↔ O*NET crosswalk (ESCO Secretariat with USDOL/ETA)
Keep exploring
See labor-market evidence in motion.
Watch short Tamhu stories about pay, growth and how work changes — then return to the source data here.
Watch this occupation
This job has changed before and it will change again. We'll email you when the data moves — a tool appears, a skill gains weight, the pay distribution shifts. Free, and one click to stop.
Check your inbox — your watch starts only after you confirm.
We send data, not advice. No sharing, no resale. Privacy