Computer Programmer Job Description, Career as a Computer Programmer, Salary, Employment
Definition and Nature of the Work, Education and Training Requirements, Getting the Job
Education and Training: College
Salary: Median—$62,890 per year
Employment Outlook: Fair
Definition and Nature of the Work
Computer programmers write the step-by-step instructions that direct computers to process information. These instructions, or programs, tell the computer what to do in a series of logical steps. Programmers work on a wide range of projects. The kind of work a programmer does depends on the employer. Programmers work in manufacturing, industry, engineering, government offices, hospitals, and educational institutions.
Programmers receive detailed job descriptions that identify the goal of the program. Programmers then may prepare systems flow charts that show diagrammatically how information will flow through the computer and its peripheral, or related, equipment. If much creativity and expertise are demanded at this step, systems analysts or computer software engineers may prepare the systems flow charts. In most medium to large computer installations, programmers receive their instructions from systems analysts or computer software engineers.
When the preliminary stages are completed, programmers write the actual program using special computer languages. Different computer languages are used for different applications. For instance, HTML and XML are useful when creating Web applications, and COBOL is useful for business applications. Since most programs are long and complex, they must be tested to see whether they run as expected. This step is called debugging. If the test run is not satisfactory, the programmers examine the program for errors in logic and data and make corrections or report the problem to a software engineer. It may take a few days to write a simple program, while more than a year may be required to develop a sophisticated one.
Most programmers are involved in applications programming. They work on specific tasks that have a direct application, such as designing accounting procedures. Applications programmers usually specialize in either writing programs just for one professional field, such as science or business. Applications programmers meet with clients and designers to understand the scope of the project before they begin to write the code. They work alone or in teams depending on the budget, deadline, and the size of the project.
Systems programmers write programs to maintain and control systems software that may run systems such as a large office's computer network. They would, for instance, write a program that enables a new printer to work with an old computer. They generally work for computer manufacturers or for companies that have large computer installations. Some are involved in developing new computer languages. Computer software engineers, who are very experienced programmers, design and implement complex programs from scratch. They are familiar with computer hardware design, memory, and the inner workings of computers.
Education and Training Requirements
Educational requirements usually include at least a bachelor's degree in computer science, mathematics, or information systems, as well as knowledge of the major programming languages. In addition, employers often require that new hires know how to work with database systems such as Oracle and Sybase. National certification courses are offered for most major computer languages, including C++, Java, and XML. Private companies will also offer certification on their newer programming languages and software. Certification on a language increases a programmer's job prospects, because it proves to an employer that a programmer knows that language.
Sometimes employers will hire inexperienced college graduates who show promise and send them to special computer training schools to update their skills at the company's expense. Larger firms may have their own formal training programs. It usually takes a year or more before new programmers are capable of working without supervision. Programmers usually continue their training for the rest of their careers as new programming languages and technologies continually arrive on the marketplace.
High school students interested in pursuing this type of work should study mathematics, computer science, and physics. They should also take computer programming courses in school or learn computer languages in their spare time.
Getting the Job
Many job openings for computer programmers are listed on the Internet and in the classified sections of newspapers. College placement bureaus and employment agencies can also help a person enter the field. Another way to get a job as a computer programmer is through direct application. If candidates want to work for the government, they should apply to take the necessary civil service exam.
Advancement Possibilities and Employment Outlook
Experienced programmers can advance to various supervisory positions that concentrate on either administrative or operational areas. Those interested in the analytical aspects of programming can become systems analysts. Additional education and training may be required for this position.
According to the U.S. Bureau of Labor Statistics, 455,000 people were employed as computer programmers in the United States in 2004. Employment of computer programmers, however, was expected to grow more slowly than average for all occupations through the year 2014. Sophisticated computer software now exists that automatically writes basic code and software routines. This software allows analysts and computer engineers to design and write programs without help from computer programmers. Many low and mid-level computer-programming jobs have also been outsourced to India, China, and Eastern Europe where wages are lower. Jobs for programmers in the United States should be available in data-processing service firms and computer consulting businesses.
Computer programmers work in especially clean, comfortable surroundings. Most programmers work a forty-hour week that at times includes evenings and weekends. Often programmers work long hours to meet deadlines. They are expected to work both independently and as part of a team. Programmers who work for a consulting company may have to travel to a client's location to work. Because they spend all day at a computer, programmers are susceptible to eye strain, back problems, and injuries such as carpel tunnel syndrome.
Earnings and Benefits
Computer programmers generally earn salaries much higher than those earned by nonsupervisory workers in other fields. The Bureau of Labor Statistics reported that the median annual wage for computer programmers in 2004 was $62,890. According to the "Computerworld Salary Survey 2005" (Computerworld, October 24, 2005), the median yearly wage for a computer programmer/analyst was $67,685 in 2005. Benefits vary according to individual employer, but most programmers receive paid vacations, sick leave, and insurance plans. Some companies offer profit sharing and pension plans.
- Computer Security Specialist Job Description, Career as a Computer Security Specialist, Salary, Employment - Definition and Nature of the Work, Education and Training Requirements, Getting the Job
- Computer Operator Job Description, Career as a Computer Operator, Salary, Employment - Definition and Nature of the Work, Education and Training Requirements, Getting the Job