Computer Programmers
What they do
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.
Kinds of work
- Conventional: Organizing information, following clear procedures and working with data and details.
- Investigative: Science, research, figuring out how things work and solving complex problems.
- Realistic: Hands-on work with tools, machines, plants or animals, often outdoors.
Lower pressure: How much pressure workers in this job report: deadlines, conflict, dealing with upset people, the cost of mistakes, responsibility for others' safety, competition and long hours. It varies a lot from one employer to the next. Source: U.S. Department of Labor worker surveys.
Pay, tasks and more
Salary
BLS Occupational Employment and Wage Statistics, 2025.
What you might do
- 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.
- Assign, coordinate, and review work and activities of programming personnel.
- Develop Web sites.
- Investigate whether networks, workstations, the central processing unit of the system, or peripheral equipment are responding to a program's instructions.
Job outlook
- United States
- 7% fewer jobs by 2035, declining · about 4,400 openings a year
Openings include new jobs and jobs left by workers who retire or change careers. Projections: U.S. Bureau of Labor Statistics. "Bright Outlook": U.S. Department of Labor.
Where they work
- Computer systems design and related services24.5%
- Self-employed (their own business)14.6%
- Colleges, universities, and professional schools8.1%
- Software publishers4.6%
- State government, excluding education and hospitals4.4%
Share of all workers in this career. Source: U.S. Bureau of Labor Statistics, National Employment Matrix.
Career path
How people usually get into this career, from school to their first job and beyond.
Computer Programmer is usually not a straight-out-of-school job. Most people earn a bachelor's degree and then work 2 to 4 years in a related role, such as testing software, before taking on this career.
Bachelor's degree in Computer Science or a related field
4 yearsYou learn programming languages, data structures, and how software is built and tested, which is the foundation every programmer needs.
Software Quality Assurance Analyst and Tester
1-2 yearsYou run tests on programs, find bugs, and learn how code is supposed to work, which gives you hands-on practice reading and fixing other people's code.
Computer Programmer
2-4 years of related experience before this job is typicalYou write, change, and test code from specifications that developers and other team members give you, so the programs run correctly.
Where it can lead
Software Developer
2-4 years of experience firstYou move from writing code to specs others give you toward designing whole applications and making big technical decisions, which usually takes strong design skills and a track record of finished projects.
Database Administrator
4-6 years of experience firstYou take on responsibility for how data is stored, secured, and kept running, which builds on programming work with data and requires deeper knowledge of database systems.
What you can do now
Ideas for high school and college students.
In high school
- Take computer science and math classesAlgebra, geometry, and any programming or computer science course build the logic skills that programming depends on.
- Join a coding or robotics clubWorking on a team project teaches you how to write code with others and how to finish something real.
- Enter a coding or math competitionCompetitions give you timed problems that sharpen your problem solving and show colleges what you can do.
- Learn a programming language on your ownFree online lessons or a beginner book help you practice writing small programs and find out whether you enjoy coding.
- Find a starter job or volunteer with techHelping with school computers, a library tech desk, or a family business's website gives you early experience with real users and problems.
In college
- Major in Computer Science or a closely related fieldA bachelor's degree is the usual entry requirement, and coursework in data structures, algorithms, and software testing matches what programmers do every day.
- Apply for a software testing or IT internshipInternships give you experience on real teams and often lead to entry-level roles like software testing, which is a common stepping stone.
- Join a coding club or hackathon teamBuilding projects with other students helps you practice teamwork, version control, and finishing work on a deadline.
- Take a campus job in IT or a tech labA student tech support or lab assistant job lets you practice troubleshooting and shows employers you can work reliably.
- Build and share a portfolioPublic code projects on a site like GitHub give future employers proof of your skills beyond your grades.
Tips for getting started
- Build a small portfolio of programs you made yourself, such as a game, a website, or a tool that solves a problem you have, and post the code online.
- Get comfortable with at least two programming languages and learn how to test your code, since testing skills open the door to entry-level roles.
- Look for part-time or summer jobs and internships in tech, even if they are IT help desk or data entry, to start building work experience early.
Related jobs that often lead here
Related jobs a step up
Education, experience and related careers: U.S. Department of Labor. The step-by-step path, where it can lead and what you can do now were written by AI as typical examples; many people take other ways.
College majors that lead here
- Computer Science Bachelor's degree: typical pay 1 year after finishing $73,638 a year · typical debt $20,500
- Health and Medical Administrative Services Bachelor's degree: typical pay 1 year after finishing $49,502 a year · typical debt $25,000
- Management Information Systems and Services Bachelor's degree: typical pay 1 year after finishing $63,426 a year · typical debt $21,143
- Computer Software and Media Applications Bachelor's degree: typical pay 1 year after finishing $40,536 a year · typical debt $24,000
- Computer Programming Bachelor's degree: typical pay 1 year after finishing $73,010 a year · typical debt $23,000
- Data Analytics Bachelor's degree: typical pay 1 year after finishing $66,696 a year · typical debt $21,495
Majors: U.S. Department of Education and BLS (CIP–SOC crosswalk). Earnings and debt: College Scorecard, typical across U.S. colleges.
Related careers
- Software Developers Bachelor's degree
- Web and Digital Interface Designers Bachelor's degree
- Computer Systems Engineers/Architects Associate degree
- Computer Systems Analysts Associate degree
- Database Administrators Bachelor's degree
- Database Architects Bachelor's degree
- Software Quality Assurance Analysts and Testers Bachelor's degree
- Blockchain Engineers Bachelor's degree