Computer Programmers Career
Computer programmers work in the field of electronic data processing. They write instructions that tell computers what to do in a computer language, or code, that the computer understands. Maintenance tasks include giving computers instructions on how to allocate time to various jobs they receive from computer terminals and making sure that these assignments are performed properly. There are approximately 455,000 computer programmers employed in the United States, and 25,000 of these programmers are self-employed.
Computer Programmers Job Description
Broadly speaking, there are two types of computer programmers. Systems programmers maintain the instructions, called programs or software, that control the entire computer system, including both the central processing unit and the equipment with which it communicates, such as terminals, printers, and disk drives. Applications programmers write the software to handle specific jobs and may specialize in engineering, scientific, or business programs. Some of the latter specialists may be designated chief business programmers, who supervise the work of other business programmers.
Programmers are often given program specifications prepared by systems analysts, who list in detail the steps the computer must follow in order to complete a given task. Programmers then code these instructions in a computer language the computer understands. In smaller companies, analysis and programming may be handled by the same person, called a programmer- analyst.
Before actually writing the computer program, a programmer must analyze the work request, understand the current problem and desired resolution, decide on an approach to the problem, and plan what the machine will have to do to produce the required results. Programmers prepare a flowchart to show the steps in sequence that the machine must make. They must pay attention to minute details and instruct the machine in each step of the process.
These instructions are then coded in one of several programming languages, such as BASIC, COBOL, FORTRAN, PASCAL, RPG, CSP, C++, and Java. When the program is completed, the programmer tests its working practicality by running it on simulated data. If the machine responds according to expectations, actual data will be fed into it and the program will be activated. If the computer does not respond as anticipated, the program will have to be debugged, that is, examined for errors that must be eliminated. Finally, the programmer prepares an instruction sheet for the computer operator who will run the program.
The programmer’s job concerns both an overall picture of the problem at hand and the minute detail of potential solutions. Programmers work from two points of view: from that of the people who need certain results and from that of technological problem solving. The work is divided equally between meeting the needs of other people and comprehending the capabilities of the machines.
Electronic data systems involve more than just one machine. Depending on the kind of system being used, the operation may require other machines such as printers or other peripherals. Introducing a new piece of equipment to an existing system often requires programmers to rewrite many programs.
Programmers may specialize in certain types of work, depending on the kind of problem to be solved and on the employer. Making a program for a payroll is, for example, very different from programming the study of structures of chemical compounds. Programmers who specialize in a certain field or industry generally have education or experience in that area before they are promoted to senior programming positions. Information system programmers specialize in programs for storing and retrieving physical science, engineering, or medical information; text analysis; and language, law, military, or library science data. As the information superhighway continues to grow, information system programmers have increased opportunities in online businesses, such as those of Lexis/Nexis, Westlaw, America Online, Microsoft, and many others.
Process control programmers develop programs for systems that control automatic operations for commercial and industrial enterprises, such as steelmaking, sanitation plants, combustion systems, computerized production testing, or automatic truck loading. Numerical control tool programmers program the tape that controls the machining of automatic machine tools.
Browse Computer Science Careers.