Computer programmers write and test code that allows computer applications and software programs to function properly. They turn the program designs created by software developers and engineers into instructions that a computer can follow. In addition, programmers test newly created applications and programs to ensure that they produce the expected results. If they do not work correctly, computer programmers check the code for mistakes and fix them.

Duties

Computer programmers typically do the following:

  • Write programs in a variety of computer languages, such as C++ and Java
  • Update and expand existing programs
  • Test programs for errors and fix the faulty lines of computer code
  • Create and test code in an integrated development environment (IDE)
  • Use code libraries, which are collections of independent lines of code, to simplify the writing

Programmers work closely with software developers, and in some businesses their duties overlap. When such overlap occurs, programmers can do work that is typical of developers, such as designing programs. Program design entails planning the software initially, creating models and flowcharts detailing how the code is to be written, writing and debugging code, and designing an application or systems interface.

A program’s purpose determines the complexity of its computer code. For example, a weather application for a mobile device will require less programming than a social-networking application. Simpler programs can be written in less time. Complex programs, such as computer operating systems, can take a year or more to complete.

Software-as-a-service (SaaS), which consists of applications provided through the Internet, is a growing field. Although programmers typically need to rewrite their programs to work on different system platforms, such as Windows or OS X, applications created with SaaS work on all platforms. Accordingly, programmers writing SaaS applications may not have to rewrite as much code as other programmers do and can instead spend more time writing new programs.

Is This the Right Career for You?

Not sure how to choose the best career for you? Now, you can predict which career will satisfy you in the long term by taking a scientifically validated career test. Gain the clarity and confidence that comes from understanding your strengths, talents, and preferences, and knowing which path is truly right for you.

Take The Test

 

 

 

 

 

Work Environment

Computer programmers held about 250,300 jobs in 2018. The largest employers of computer programmers were as follows:

Computer systems design and related services             38%
Finance and insurance 7
Software publishers 7
Manufacturing 5
Self-employed workers 5

Programmers normally work alone, but sometimes work with other computer specialists on large projects. Because writing code can be done anywhere, many programmers work from their homes.

Work Schedules

Most computer programmers work full time.

Education and Training

Most computer programmers have a bachelor’s degree in computer science or a related subject; however, some employers hire workers with an associate’s degree. Most programmers specialize in a few programming languages.

Education

Most computer programmers have a bachelor’s degree; however, some employers hire workers who have other degrees or experience in specific programming languages. Most programmers get a degree in computer science or a related subject. Programmers who work in specific fields, such as healthcare or accounting, may take classes in that field to supplement their degree in computer programming. In addition, employers value experience, which many students gain through internships.

Most programmers learn a few computer languages while in school. However, a computer science degree gives students the skills needed to learn new computer languages easily. Students get hands-on experience writing code, testing programs, fixing errors, and doing many other tasks that they will perform on the job.

To keep up with changing technology, computer programmers may take continuing education classes and attend professional development seminars to learn new programming languages or about upgrades to programming languages they already know.

Licenses, Certifications, and Registrations

Programmers can become certified in specific programming languages or for vendor-specific programming products. Some companies require their computer programmers to be certified in the products they use.

Advancement

Programmers who have general business experience may become computer systems analysts. With experience, some programmers may become software developers. They may also be promoted to managerial positions. For more information, see the profiles on computer systems analysts, software developers, and computer and information systems managers.

Personality and Interests

Computer programmers typically have an interest in the Thinking and Organizing interest areas, according to the Holland Code framework. The Thinking interest area indicates a focus on researching, investigating, and increasing the understanding of natural laws. The Organizing interest area indicates a focus on working with information and processes to keep things arranged in orderly systems.

If you are not sure whether you have a Thinking or Organizing interest which might fit with a career as a computer programmer, you can take a career test to measure your interests.

Computer programmers should also possess the following specific qualities:

Analytical skills. Computer programmers must understand complex instructions in order to create computer code.

Concentration. Programmers must be able to work at a computer, writing lines of code for long periods of time.

Detail oriented. Computer programmers must closely examine the code they write because a small mistake can affect the entire computer program.

Troubleshooting skills. An important part of a programmer’s job is to check the code for errors and fix any they find.

Pay

The median annual wage for computer programmers was $86,550 in May 2019. The median wage is the wage at which half the workers in an occupation earned more than that amount and half earned less. The lowest 10 percent earned less than $50,150, and the highest 10 percent earned more than $140,250.

In May 2019, the median annual wages for computer programmers in the top industries in which they worked were as follows:

Software publishers $98,230
Finance and insurance 89,920
Manufacturing 86,620
Computer systems design and related services                        85,640

Most computer programmers work full time.

Job Outlook

Employment of computer programmers is projected to decline 7 percent from 2018 to 2028. Computer programming can be done from anywhere in the world, so companies sometimes hire programmers in countries where wages are lower. This ongoing trend is projected to limit employment growth for computer programmers in the United States. However, the high costs associated with managing projects given to overseas programmers sometimes offsets the savings from the lower wages, causing some companies to bring back or keep programming jobs in the United States.

Job Prospects

Job prospects will be best for programmers who have a bachelor’s degree or higher and knowledge of a variety of programming languages. Keeping up to date with the newest programming tools will also improve job prospects.

For More Information

For more information about computer programmers, visit

Association for Computing Machinery

CompTIA

IEEE Computer Society

For information about opportunities for women pursuing information technology careers, visit

National Center for Women & Information Technology

 

FAQ

Where does this information come from?

The career information above is taken from the Bureau of Labor Statistics Occupational Outlook Handbook. This excellent resource for occupational data is published by the U.S. Department of Labor every two years. Truity periodically updates our site with information from the BLS database.

I would like to cite this page for a report. Who is the author?

There is no published author for this page. Please use citation guidelines for webpages without an author available. 

I think I have found an error or inaccurate information on this page. Who should I contact?

This information is taken directly from the Occupational Outlook Handbook published by the US Bureau of Labor Statistics. Truity does not editorialize the information, including changing information that our readers believe is inaccurate, because we consider the BLS to be the authority on occupational information. However, if you would like to correct a typo or other technical error, you can reach us at help@truity.com.

I am not sure if this career is right for me. How can I decide?

There are many excellent tools available that will allow you to measure your interests, profile your personality, and match these traits with appropriate careers. On this site, you can take the Career Personality Profiler assessment, the Holland Code assessment, or the Photo Career Quiz.

Find Jobs Near You