What Does a Computer Programmer Do?
For payroll offices, registrars and the developers who design new systems, computer programmers ensure the accuracy of the code behind each job. They make sure that specifications are followed, and programs are tested and delivered on time. The job is distinguished from software development in that programmers mostly write, fix and update code to designs someone else has drawn up.
Also known as: Assistant Computer Programmer, Associate Application Programmer
Other Job Titles for This Work
Workers in this occupation report titles such as Analyst Programmer, Application Programmer Analyst, Computer Programmer Analyst, Internet Programmer, Java Developer, Programmer, Programmer Analyst, Web Applications Programmer.
Computer Programmer Duties and Responsibilities
The primary responsibilities of a computer programmer include:
- Write new code from specifications, flowcharts or tickets prepared by developers and analysts.
- Fix bugs in existing programs and explain the cause and the fix in the ticket.
- Update older programs, including COBOL on mainframes, when business rules or data formats change.
- Test code with sample data and compare the output with expected results.
- Commit changes to Git with clear messages and respond to code review comments.
- Convert programs to new languages or platforms during system migrations.
- Build scheduled reports and data extracts in SQL for offices across the organization.
- Comment code and keep technical notes current so other programmers can maintain it.
- Profile slow programs and rewrite queries or loops that waste processing time.
- Estimate how long each change will take and flag risks to the team lead.
Required Skills and Qualifications
To succeed as a computer programmer, you will need the following skills and qualifications:
- Languages such as Java, Python, C# or COBOL
- SQL and relational databases
- Git version control
- Debugging tools in Visual Studio or IntelliJ
- Reading specifications and flowcharts accurately
- Unit testing habits
- Patience for slow, careful detective work
- Clear written notes for the next programmer
Education and Training
Entry to the field without a bachelor's degree might be possible, but graduates in computer science will have a clear advantage over other applicants. Any graduate can say they know Java. To stand out, you need to show employers examples of your code in action. With experience, you could progress from assistant programmer to associate programmer or software developer.
Salary and Job Outlook
Typical pay: $75,850 - $130,680 per year, with a median of $100,390.
The range covers the middle half of earners nationwide. Source: U.S. Bureau of Labor Statistics, Occupational Employment and Wage Statistics, May 2025, Computer Programmers.
According to BLS, employment of computer programmers is projected to fall about 7 percent from 2025 to 2035, leaving roughly 4,400 openings a year. Openings in this field often are tied to older systems that still need upkeep, but new programmers will be needed as long-serving staff retire and as that old code is rewritten. The languages you learn may land you a programming post, but more importantly they carry over into developer and analyst jobs.
Outlook source: U.S. Bureau of Labor Statistics, Employment Projections, 2025 to 2035, Computer programmers.
Computer Programmer Pay Range
| Earners | Annual pay |
|---|---|
| Bottom 10% earn less than | $57,710 |
| Bottom 25% earn less than | $75,850 |
| Median (half earn more, half less) | $100,390 |
| Top 25% earn more than | $130,680 |
| Top 10% earn more than | $160,460 |
Highest-Paying States for Computer Programmers
The states with the highest median pay for this occupation are Connecticut ($133,820), Massachusetts ($128,390), Washington ($125,620), Maryland ($125,570), Virginia ($121,610). Pay is lowest in Michigan ($65,860), West Virginia ($65,320), South Dakota ($58,240).
Median pay in all 46 states with BLS data
| State | Median annual pay |
|---|---|
| Alabama | $93,800 |
| Alaska | $91,700 |
| Arizona | $88,990 |
| Arkansas | $111,840 |
| California | $116,760 |
| Colorado | $104,610 |
| Connecticut | $133,820 |
| Florida | $93,180 |
| Georgia | $98,380 |
| Hawaii | $118,180 |
| Idaho | $89,020 |
| Illinois | $72,540 |
| Indiana | $97,000 |
| Iowa | $79,180 |
| Kansas | $92,960 |
| Kentucky | $94,850 |
| Maine | $101,780 |
| Maryland | $125,570 |
| Massachusetts | $128,390 |
| Michigan | $65,860 |
| Minnesota | $107,250 |
| Mississippi | $85,120 |
| Missouri | $90,420 |
| Montana | $89,920 |
| Nebraska | $95,150 |
| Nevada | $93,600 |
| New Hampshire | $74,000 |
| New Jersey | $104,940 |
| New Mexico | $83,750 |
| New York | $103,980 |
| North Carolina | $81,070 |
| North Dakota | $92,280 |
| Ohio | $85,270 |
| Oklahoma | $99,780 |
| Oregon | $99,540 |
| Pennsylvania | $89,180 |
| Rhode Island | $96,470 |
| South Carolina | $99,740 |
| South Dakota | $58,240 |
| Texas | $99,330 |
| Utah | $104,890 |
| Vermont | $89,560 |
| Virginia | $121,610 |
| Washington | $125,620 |
| West Virginia | $65,320 |
| Wyoming | $81,640 |
What the Work Is Like
O*NET surveys people who work as computer programmers about their daily conditions. Of those surveyed:
- 100% use email every day
- 94% spend more than half the workday sitting
- 81% say teamwork is very or extremely important in their job
- 74% say being exact and accurate is very or extremely important
- 40% work against deadlines every day
Education Workers Say the Job Needs
| Education level | Share of workers |
|---|---|
| Bachelor's degree | 88% |
| Associate's degree | 9% |
Tools and Software Computer Programmers Use
Tools and equipment
Software
Is This Job a Good Fit for You?
People who do well in this job tend to enjoy organized work with data, records and clear procedures as well as analyzing problems and working with ideas.
Skills O*NET rates most important: Programming, Active Listening, Critical Thinking, Complex Problem Solving, Quality Control Analysis, Reading Comprehension.
Knowledge areas used most: Computers and Electronics, Mathematics, Engineering and Technology, English Language, Customer and Personal Service.
Preparation: O*NET places this occupation in Job Zone 4 of 5, which means considerable preparation.
Related Careers
These jobs use similar skills, according to O*NET's related-occupation data:
Applying for a Computer Programmer Job
- Job application letter sample
- Resume or CV: which to send
- How to describe your work experience
- Job interview tips
- Interview thank-you note
The Job Explorer never charges candidates any money. If someone asks you to pay to apply for a computer programmer job or to get hired, treat it as a warning sign.
Sources
- U.S. Bureau of Labor Statistics, Occupational Employment and Wage Statistics, May 2025.
- U.S. Bureau of Labor Statistics, Employment Projections, 2025 to 2035.
- O*NET 30.1 Database, occupation 15-1251.00 (Computer Programmers). View on O*NET OnLine.
This page includes information from the O*NET 30.1 Database by the U.S. Department of Labor, Employment and Training Administration (USDOL/ETA). Used under the CC BY 4.0 license. O*NET® is a trademark of USDOL/ETA. The Job Explorer has modified some of the information; USDOL/ETA has not approved, endorsed or tested these changes.
