Computer Programming


Quick Facts: Computer Programmers
2017 Median Pay $82,240 per year 
$39.54 per hour
Typical Entry-Level Education Bachelor's degree
Work Experience in a Related Occupation None
On-the-job Training None
Number of Jobs, 2016 294,900
Job Outlook, 2016-26 -7% (Decline)
Employment Change, 2016-26 -21,300

Join Nextstep Career Mentorship Programs in Computer Programming with our partners:


Computer Programming Career, Salary and Education Information

What computer programers Do

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.

download (2).jpeg

Computer Programming

Duties of computer programers

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.


Work Environment for Computer Programmers

Computer programmers hold about 294,900 jobs. The largest employers of computer programmers are 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 for computer programmers

Most computer programmers work full time.


How to Become a Computer Programmer

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 analystssoftware developers, and computer and information systems managers.

Important Qualities

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

Concentration. Programmers must focus their attention on their work as they write code or check existing code for errors.

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.


salaries for Computer Programmers

The median annual wage for computer programmers is $79,840. 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 $45,570, and the highest 10 percent earned more than $130,360.

The median annual wages for computer programmers in the top industries in which they work are as follows:

Software publishers: $97,360

Finance and insurance: $88,300

Manufacturing: $81,750

Computer systems design and related services: $81,240

Most computer programmers work full time.


Job Outlook for Computer Programmers

Employment of computer programmers is projected to decline 8 percent over the next ten years. 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 for computer programmers

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.

Employment projections data for Computer Programmers, 2016-26

Employment, 2016: 294,900

Projected Employment, 2026: 273,600

Change, 2016-2026: -7%, -21,300


Careers Related to Computer Programmers

Computer and Information Research Scientists

Computer and information research scientists invent and design new approaches to computing technology and find innovative uses for existing technology. They study and solve complex problems in computing for business, medicine, science, and other fields.

Computer and Information Systems Managers

Computer and information systems managers, often called information technology (IT) managers or IT project managers, plan, coordinate, and direct computer-related activities in an organization. They help determine the information technology goals of an organization and are responsible for implementing computer systems to meet those goals.

Computer Hardware Engineers

Computer hardware engineers research, design, develop, and test computer systems and components such as processors, circuit boards, memory devices, networks, and routers.

Computer Network Architects

Computer network architects design and build data communication networks, including local area networks (LANs), wide area networks (WANs), and Intranets. These networks range from small connections between two offices to next-generation networking capabilities such as a cloud infrastructure that serves multiple customers.

Computer Support Specialists

Computer support specialists provide help and advice to computer users and organizations. These specialists either support computer networks or they provide technical assistance directly to computer users.

Computer Systems Analysts

Computer systems analysts, sometimes called systems architects, study an organization's current computer systems and procedures, and design solutions to help the organization operate more efficiently and effectively. They bring business and information technology (IT) together by understanding the needs and limitations of both.

Database Administrators

Database administrators (DBAs) use specialized software to store and organize data, such as financial information and customer shipping records. They make sure that data are available to users and secure from unauthorized access.

Information Security Analysts

Information security analysts plan and carry out security measures to protect an organization's computer networks and systems. Their responsibilities are continually expanding as the number of cyberattacks increases.

Network and Computer Systems Administrators

Computer networks are critical parts of almost every organization. Network and computer systems administrators are responsible for the day-to-day operation of these networks.

Software Developers

Software developers are the creative minds behind computer programs. Some develop the applications that allow people to do specific tasks on a computer or another device. Others develop the underlying systems that run the devices or that control networks.

Web Developers

Web developers design and create websites. They are responsible for the look of the site. They are also responsible for the site's technical aspects, such as its performance and capacity, which are measures of a website's speed and how much traffic the site can handle. In addition, web developers may create content for the site.

OccupationENTRY-LEVEL EDUCATION2017 MEDIAN PAY
Computer and Information Research ScientistsMaster's degree$114,520
Computer and Information Systems ManagersBachelor's degree$139,220
Computer Hardware EngineersBachelor's degree$115,120
Computer Network ArchitectsBachelor's degree$104,650
Computer Support Specialists$52,810
Computer Systems AnalystsBachelor's degree$88,270
Database AdministratorsBachelor's degree$87,020
Information Security AnalystsBachelor's degree$95,510
Network and Computer Systems AdministratorsBachelor's degree$81,100
Software DevelopersBachelor's degree$103,560
Web DevelopersAssociate's degree$67,990

Citation:

Bureau of Labor Statistics, U.S. Department of Labor, Occupational Outlook Handbook, Computer Programmers,
on the Internet at https://www.bls.gov/ooh/computer-and-information-technology/computer-programmers.htm