Computer Programmers


Salary Median (2020)


Projected Job Growth (2019-2029)

-9.4% (decline)

Most Common Level of Education

Bachelor's degree


What Computer Programmers Do

Create, modify, and test the code, forms, and script that allow computer applications to run. Work from specifications drawn up by software developers or other individuals. May assist software developers by analyzing user needs and designing software solutions. May develop and write computer programs to store, locate, and retrieve specific documents, data, and information.

Other Job Titles Computer Programmers May Have

Analyst Programmer, Application Programmer Analyst, Computer Programmer, Computer Programmer Analyst, Internet Programmer, Java Developer, Programmer, Programmer Analyst, Web Applications Programmer, Web Programmer

How Leaders Describe a Typical Day at Work

Senior Software Engineer ,


I work from home full-time. I sit at my computer, and work on assigned projects. I have a wide variety of work. I communicate with my manager and co-workers primarily by email. Working on software allows me to use my brain to devise solutions to stated problems or to add function to existing programs.

Computer Programmer ,


Each day is different in its own right, but I usually start my day with some common tasks: 1. Eat breakfast -- very important. 2. Make a to-do list for the day, prioritize each item, and check things off as I complete them. 3. Keep a calendar of important meetings on your schedule.

Tasks & Responsibilities May Include

  • 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.

This page includes information from theO*NET 26.1 Databaseby the U.S. Department of Labor, Employment and Training Administration (USDOL/ETA). Used under theCC BY 4.0license. O*NET® is a trademark of USDOL/ETA.