All computer programmers are involved in conceiving, designing, writing, and testing logical instructions for solving problems by computer. Job titles, descriptions, and responsibilities vary depending on the organization employing the programmer. For example, designing new systems may be the responsibility of the programmer or other specialists such as computer analysts or engineers.
Regardless of the job title, a computer programmer must use programming tools to turn programming designs into the actual instructions the computer system will follow. This is accomplished by using traditional programming languages, object-oriented languages, or integrated development environments (IDEs). Since a number of different languages may be used, programmers are usually expected to be conversant with multiple languages. The programmer may also be responsible for initial testing of the program once it is completed.
People who pursue programming careers spend the majority of their time working in office environments, although technical advances are allowing more programmers to telecommute. Regardless of the setting, computer programmers normally work 40 hours per week, but long hours are often required in order to meet deadlines or fix problems. Only about 4% of programmers work part-time.
Education and Training for a Career in Programming
Most programming positions require a bachelor’s degree, although some employers require only a two-year degree or a specialized certificate from job applicants. According to the US Department of Labor’s Bureau of Labor Statistics, in 2006 over 68% of computer programmers had a bachelor’s degree or higher, and this is expected to increase in response to employer demands.
Relevant college majors for those interested in pursuing a career in programming include:
- Computer or information science
- Mathematics
- Engineering
- Physical sciences
- Information technology
- Business
Skilled workers who keep up with the state of the industry will enjoy good prospects for advancement. Someone with a programming job may be promoted to lead programmer with supervisory responsibilities, for example, or move into systems programming after he or she gains experience and knowledge. Computer programmers may also become programmer analysts or systems analysts or be promoted to managerial positions.
The median salary earned by computer programmers was $65,510 in May 2006, according to the Bureau of Labor Statistics. Average annual starting salaries in 2007 ranged from $55,250 to $90,250 for applications development programmers/analysts and from $60,250 to $94,750 for software developers. Average starting salaries for mainframe systems programmers, on the other hand, ranged from $52,250 to $70,750.