COMPUTER PROGRAMMERS California Occupational Guide Number 81 Interest Area 11 1995
Computers have become standard tools of modern commercial, industrial, and government operations. They are used to store, process, and retrieve information; to solve mathematical and scientific problems; and to process routine transactions, such as hotel or airline reservations. The series of instructions which tells the computer what to do, which information to identify, and what equipment to use, is known as the program. The proper functioning of the computer, or electronic data processing (EDP) system, is dependent on a combination of detailed programs, each designed to perform specific tasks. The writing of these programs is done by COMPUTER PROGRAMMERS.
Working with managers and the users of the computer's product (output), programmers are involved in each step of preparing new or revised programs for computer tasks. The process begins by clearly defining the tasks to be done and deciding whether the computer is the best way to solve the problem. If it is, the Programmer details the information needed for the computer to begin its work (input), and determines the best use of the computer to achieve the desired output.
After this is accomplished, the Programmer outlines a process to do the job. The capabilities of the computer, information already available, plus necessary additional input, must be known. From this, a diagram, or flow chart, is prepared, detailing the flow of information and sequence of activities in each of the program's steps.
The program is then written in a coded language. Computer languages are structured to reduce the number of written instructions, as each computer has within it a special program, or compiler, which translates the coded language into specific instructions for the computer. After the program is written, it must be tested for errors. Correcting errors, or debugging the program, is critically important to ensure the accuracy of the output. Once the new program has been debugged, the Programmer arranges to have it stored and protected in the computer's storage system. The final step of the Programmer's major responsibilities is writing a list of program instructions for the Computer Operator. These instructions must be clear enough for the Computer Operator to follow with no assistance from the Programmer. Basically there are three types of Programmers: Commercial Programmers work with business information systems; Scientific Programmers use the computer for scientific, engineering, and mathematical problem solving; and Systems Programmers create new programs for manufacturers of EDP systems as well as modify these programs for firms with large computer installations, and develop specialized programs, such as the utilities used in all computer systems.
Programmers usually work in or near the firm's EDP installation. Since Programmers must pay close attention to detail, they are shielded from the noise and activity of the computer's operations. As a result, their offices are as quiet and comfortable as can be arranged, usually with computer terminals nearby.
Programmers must be able to work not only with EDP management, but also with users of the information produced. Therefore, they must be able to communicate the capabilities of the computer to the users, and to understand the users' needs and wants.
Computer Programmers rank among the fifty largest growth occupations in California.
The following information is from the California Projections of Employment published by the Labor Market Information Division.
Estimated number of workers in 1990 74,610 Estimated number of workers in 2005 107,540 Projected Growth Percentage 1990 - 2005 44% Estimated openings due to separations by 2005 30,270
(These figures do not include self-employment nor openings due to turnover.)
The need for Computer Programmers will increase as businesses, government, schools, and scientific organizations seek new applications for computers and improve the software already in use. Job prospects should be best for college graduates who are familiar with a variety of programming languages, particularly newer languages that apply to computer networking and data base management. Applicants who know both programming and operating languages, especially if the languages are closely related, have significantly improved chances of landing the job of their choice.
WAGES, HOURS, AND FRINGE BENEFITS
Most programmers work a standard 40-hour week. Overtime is not usually necessary, but does occur as emergencies arise. Most firms offer fringe benefit pack-ages which include sick leave and vacation pay, the traditional holidays, and attractive stock-option or profit-sharing plans.
This list depicts entry-to-journey level wage ranges for selected counties.
-- Mendocino County $ 7.25 - $19.50/hr. -- Orange County 8.00 - 41.18/hr. -- Sacramento County 13.50 - 25.75/hr. -- San Francisco County 12.25 - 27.75/hr.
ENTRANCE REQUIREMENTS AND TRAINING
Computer programming is taught at a wide variety of post-secondary schools. Some high schools also offer courses in data processing. Many Computer Programmers are college graduates; others have taken special courses in computer programming to supplement their experience in fields such as accounting, inventory control, or other business areas. The level of education and quality of training that employers are looking for, however, has been on the rise due to the growth in the number of qualified applicants and the increasing complexity of some programming tasks.
Employers using computers for scientific or engineering applications prefer college graduates who have degrees in computer or information science, mathematics, engineering, or the physical sciences. Graduate degrees are required for some jobs.
Employers who use computers for business applications prefer to hire people who have had college courses in management information systems; however, a bachelor's degree is not required by all employers. Experience in accounting, inventory control, and other business skills generally is preferred by employers. Some employers promote workers such as Computer Operators who have taken courses in programming to programmer jobs because of their work experience.
Employers look for people who can think logically and who are capable of exacting analytical work. The ability to work with abstract concepts and do technical analysis is important for Systems Programmers because they work with the software that controls the computer's operation. The job calls for patience, persistence, and the ability to work with extreme accuracy even under pressure. Ingenuity and imagination are particularly important when Programmers must find new ways to solve a problem. New Computer Programmers may spend their first weeks on the job attending training classes. After this initial instruction, they work on less difficult assignments until their knowledge base grows.
Because of the rapidly evolving nature of EDP programming and equipment, it is necessary for programmers to continuously update their skills and knowledge in this field. Usually, this is done at the employer's expense. Professional data processing organizations also provide assistance in this area. For experienced workers, the prospects for advancement are good. In large organizations, they may be promoted to Lead Programmers and be given supervisory responsibilities. Some Applications Programmers become Systems Programmers after they acquire additional experience and complete courses in systems software. Both Applications Programmers and System Programmers may become Systems Analysts or be promoted to managerial positions.
Experience and/or education is required for virtually all openings for programmers. Other than working as a Computer Programmer, experience can be gained in college special-project work, volunteer work, or as a computer operator who works into the programming function. The easiest ways to enter the profession without prior experience are to seek work as a programmer- trainee in a large financial institution, or to seek government work. State and federal civil service examinations for entry-level Programmers do not have work experience requirements, as long as an acceptable bachelor's degree has been earned.
Experienced job seekers should follow up on newspaper or trade journal want ads, and register with the California Employment Development Department and private employment agencies, especially those which specialize in computer- related placements.
ADDITIONAL SOURCES OF INFORMATION
Institute for the Certification of Computer Professionals 2200 East Devon Avenue, Suite 268 Des Plaines, IL 60018 (708) 299-4227
Data Processing Management Association 505 Busse Highway Park Ridge, IL 60068 (708) 825-8124
Data Processing Equipment Repairers No. 152 Computer Operators No. 299
DOT (Dictionary of Occupational Titles, 4th ed. Rev. 1)
Computer Programmer (prof. & kin.) 030.162-010 Programmer, Eng. & Scientific 030.162-018
OES (Occupational Employment Statistics) System
Computer Programmers 251050
Source: State of California, Employment Development Department, Labor Market Information Division, Information Services Group, (916) 262-2162.