Computer & Mathematical
Computer Programmers
Also called: Analyst Programmer, Application Programmer Analyst, Computer Programmer, Computer Programmer Analyst
US median pay
$100,390
per year, 2025
Job growth 2025–35
-7.3%
declining
Openings a year (US)
4,400
110,800 employed
Typical entry education
Bachelor's degree
Preparation 4/5 · Considerable preparation
What this job is
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.
What they do day to day
- 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.
Skills and knowledge that matter most
Skills
- Programming4.8/5
- Complex Problem Solving3.8/5
- Quality Control Analysis3.5/5
- Systems Analysis3.4/5
- Judgment and Decision Making3.2/5
- Time Management3.1/5
- Systems Evaluation3.1/5
- Social Perceptiveness3.1/5
Knowledge
- Computers and Electronics4.9/5
- Mathematics3.5/5
- Engineering and Technology3.5/5
- English Language3.4/5
- Customer and Personal Service3.3/5
- Administration and Management3.3/5
Importance rated by people working in the job (1 = not important, 5 = extremely important).
Education and preparation
Preparation level 4 of 5 — Considerable preparation. Usually a bachelor's degree and several years of related experience.
Typical entry education (BLS): Bachelor's degree.
Highest education of people in this job:
- Bachelor's degree88%
Who this job suits
Mostly Conventional
Organising data, details and procedures
Investigative
Ideas, research and solving problems
Realistic
Hands-on work with tools, machines, plants or animals
Based on the Holland (RIASEC) interest profile for this occupation.