Jobs / Software engineering / 15-1251.00

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.

US jobs
92,230
Median wage
$100,390 a year
Job family
Software engineering

Can agents do the work of computer programmers?

We read the evidence for the whole job family, Software engineering: Most tasks (no change in 12 months)

Agents complete 60% or more of the tasks (or projects) on two direct benchmarks from independent institutions.

Evidence: SWE-Bench Pro V2, 99.4% of tasks completed; Aider Polyglot leaderboard, 88% of tasks completed.

52% of this occupation's work, by O*NET work activities, is measured by a direct benchmark.

  • 20%Test performance of computer or information systemsMeasured
  • 20%Design computer or information systems or applicationsMeasured
  • 14%Coordinate with others to resolve problemsNot measured
  • 9%Train others to use equipment or productsNot measured
  • 8%Program computer systems or production equipmentMeasured
  • 7%Document technical designs, procedures, or activitiesNot measured
  • 5%Prepare informational or instructional materialsNot measured
  • 4%Resolve computer problemsMeasured

Benchmarks for the job family

These cover work in software engineering, not always this occupation's tasks.

Direct evidence

Work benchmarks mapped primary to this family. They set the step when they report how many tasks agents complete.

Also relevant

These benchmarks cover part of this family's work, or have no result yet. They do not set its step.

Context only

These benchmarks span many occupations, or they test how agents behave. They give context but do not set the step.

Retired

Their maintainers or a major evaluator stopped using them as a frontier measure. They do not count.

Typical tasks

From O*NET 31.0. Core tasks first. Few of these tasks have a benchmark today.

  • 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.
  • 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.
  • Investigate whether networks, workstations, the central processing unit of the system, or peripheral equipment are responding to a program's instructions.
Other job titles for this occupation (47)

Analyst Programmer · Application Programmer Analyst · Computer Programmer · Computer Programmer Analyst · Internet Programmer · Java Developer · Programmer · Programmer Analyst · Web Applications Programmer · Web Programmer · .NET Programmer · Application Programmer · Applications Programmer · Automation Programmer · Beta Tester · Bug Bounty Hunter · Business Programmer · Certified Ethical Hacker · Client Server Programmer · Cloud Engineer · COBOL Programmer (Common Business Oriented Language Programmer) · Computer Game Programmer · Computer Language Coder · Database Programmer · Developer Analyst · E-Commerce Programmer (Electronic Commerce Programmer) · Engineer · Engineering and Scientific Programmer · Engineering Programmer · Game Programmer · Graphic Engineer · IT Programmer (Information Technology Programmer) · Java Architect · Java Programmer · Mainframe Programmer · Malware Analyst · Numerical Control Programmer (NC Programmer) · Object-Oriented Programmer · Operating System Programmer · Program Analyst · Scientific Programmer · Software Programmer · Statistical Programmer · Systems Programmer · Video Game Programmer · Website Programmer · White Hat Hacker