Home/Careers/Computer Programmers
technology

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.

Median Annual Pay
$99,700
Range: $58,950 - $167,230
Training Time
4-5 years
AI Resilience
🟡AI-Augmented
Education
Bachelor's degree

🎬Career Video

📋Key Responsibilities

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

💡Inside This Career

The computer programmer transforms software designs into functioning code—a role that has evolved significantly as the boundaries between programming and development have blurred. A typical day involves writing code to specifications, testing and debugging programs, and collaborating with analysts and developers on implementation details. Perhaps 60% of time goes to actual programming—translating requirements into code, implementing algorithms, and building the components that larger systems require. Another 20% involves testing and debugging: ensuring code functions correctly, identifying and fixing defects, and validating against requirements. The remaining time splits between documentation, code reviews, and coordination with team members. The role differs from software development in its traditional emphasis on implementation rather than design, though this distinction varies by organization.

People who thrive in programming combine logical thinking with attention to detail and genuine satisfaction in making code work correctly. Successful programmers develop efficient coding practices while remaining open to feedback and alternative approaches. They tolerate the frustration that debugging requires—the experience of code not working for reasons that may take hours to identify. Those who struggle often cannot maintain focus through detailed implementation work or find the precision requirements tedious. Others fail because they cannot collaborate effectively, producing code that works in isolation but integrates poorly with larger systems. Burnout affects those who cannot disconnect from interesting problems or who find the repetitive aspects of programming demoralizing.

Programming has a rich history of practitioners who shaped the field—from Ada Lovelace's foundational concepts to pioneers like Margaret Hamilton, whose Apollo software demonstrated programming's life-and-death stakes. The role has produced countless systems that define modern life. The programmer appears throughout popular culture, from *WarGames* to *Hackers* to contemporary portrayals in *Mr. Robot*. The stereotype of the isolated programmer persists despite the collaborative reality of most programming work.

Practitioners cite the satisfaction of creating functional systems and solving logical problems as primary rewards. The concrete nature of programming provides clear feedback—code works or it doesn't. The compensation for programming skills exceeds many alternatives, particularly for those without advanced degrees. The remote work opportunities provide flexibility. Common frustrations include the tedium of implementing others' designs without input on approach and the debugging sessions that consume time on problems that seem trivial once solved. Many resent the distinction between "just coding" and "real" software development that can affect career progression and compensation. The outsourcing and offshoring of programming work has created competitive pressure in some markets.

This career develops through various paths—computer science education, vocational training, or self-teaching. Programming bootcamps have created accelerated entry points. The role suits those who enjoy logical problem-solving and can tolerate the detailed nature of code implementation. It is poorly suited to those who prefer conceptual work over implementation, find precision requirements frustrating, or struggle with the sedentary nature of programming work. Compensation varies significantly by specialty and location, with enterprise languages and specialized domains (embedded systems, financial systems) often commanding higher rates than general-purpose programming.

📈Career Progression

1
Entry (10th %ile)
0-2 years experience
$58,950
$53,055 - $64,845
2
Early Career (25th %ile)
2-6 years experience
$74,610
$67,149 - $82,071
3
Mid-Career (Median)
5-15 years experience
$99,700
$89,730 - $109,670
4
Experienced (75th %ile)
10-20 years experience
$129,650
$116,685 - $142,615
5
Expert (90th %ile)
15-30 years experience
$167,230
$150,507 - $183,953

📚Education & Training

Requirements

  • Entry Education: Bachelor's degree
  • Experience: Several years
  • On-the-job Training: Several years
  • !License or certification required

Time & Cost

Education Duration
4-5 years (typically 4)
Estimated Education Cost
$53,406 - $199,410
Public (in-state):$53,406
Public (out-of-state):$110,538
Private nonprofit:$199,410
Source: college board (2024)

🤖AI Resilience Assessment

AI Resilience Assessment

Moderate human advantage with manageable automation risk

🟡AI-Augmented
Task Exposure
Medium

How much of this job involves tasks AI can currently perform

Automation Risk
Medium

Likelihood that AI replaces workers vs. assists them

Job Growth
Stable
0% over 10 years

(BLS 2024-2034)

Human Advantage
Moderate

How much this role relies on distinctly human capabilities

Sources: AIOE Dataset (Felten et al. 2021), BLS Projections 2024-2034, EPOCH FrameworkUpdated: 2026-01-02

💻Technology Skills

PythonJavaScriptSQLGitCloud platforms (AWS/Azure)Java/C++APIs and web services

Key Abilities

Written Comprehension
Oral Comprehension
Near Vision
Problem Sensitivity
Deductive Reasoning
Inductive Reasoning
Information Ordering
Oral Expression
Written Expression
Speech Recognition

🏷️Also Known As

.NET ProgrammerAnalyst ProgrammerApplication ProgrammerApplication Programmer AnalystApplications ProgrammerBeta TesterBug Bounty HunterBusiness ProgrammerCertified Ethical HackerClient Server Programmer+5 more

🔗Related Careers

Other careers in technology

🔗Data Sources

Last updated: 2025-12-27O*NET Code: 15-1251.00

Work as a Computer Programmers?

Help us make this page better. Share your real-world experience, correct any errors, or add context that helps others.