Training, Certifications, Skills, Advancement: Computer Programmers

While there are many training paths available for programmers, mainly because employersí needs are so varied, the level of education and experience employers seek has been rising, due to the growing number of qualified applicants and the specialization involved with most programming tasks. Bachelorís degrees are commonly required, although some programmers may qualify for certain jobs with 2-year degrees or certificates. The associate degree is an increasingly attractive entry-level credential for prospective computer programmers. Most community colleges and many independent technical institutes and proprietary schools offer an associate degree in computer science or a related information technology field.

Employers are primarily interested in programming knowledge, and computer programmers can become certified in a programming language such as C++ or Java. College graduates who are interested in changing careers or developing an area of expertise also may return to a 2-year community college or technical school for additional training. In the absence of a degree, substantial specialized experience or expertise may be needed. Even when hiring programmers with a degree, employers appear to be placing more emphasis on previous experience.

Some computer programmers hold a college degree in computer science, mathematics, or information systems, whereas others have taken special courses in computer programming to supplement their degree in a field such as accounting, inventory control, or another area of business. As the level of education and training required by employers continues to rise, the proportion of programmers with a college degree should increase in the future. As indicated by the following tabulation, 65 percent of computer programmers had a bachelorís or higher degree in 2002.

High school graduate or equivalent or less 7.7
Some college, no degree 15.2
Associate degree 11.6
Bachelor's degree 48.6
Graduate degree 16.7

Required skills vary from job to job, but the demand for various skills generally is driven by changes in technology. Employers using computers for scientific or engineering applications usually prefer college graduates who have degrees in computer or information science, mathematics, engineering, or the physical sciences. Graduate degrees in related fields 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 (MIS) and business and who possess strong programming skills. Although knowledge of traditional languages still is important, employers are placing increasing emphasis on newer, object-oriented programming languages and tools, such as C++ and Java. Additionally, employers are seeking persons familiar with fourth- and fifth-generation languages that involve graphic user interface (GUI) and systems programming. Employers also prefer applicants who have general business skills and experience related to the operations of the firm. Students can improve their employment prospects by participating in a college work-study program or by undertaking an internship.

Most systems programmers hold a 4-year degree in computer science. Extensive knowledge of a variety of operating systems is essential for such workers. This includes being able to configure an operating system to work with different types of hardware and having the skills needed to adapt the operating system to best meet the needs of a particular organization. Systems programmers also must be able to work with database systems, such as DB2, Oracle, or Sybase.

When hiring programmers, employers look for people with the necessary programming skills who can think logically and pay close attention to detail. The job calls for patience, persistence, and the ability to work on exacting analytical work, especially under pressure. Ingenuity, creativity, and imagination also are particularly important when programmers design solutions and test their work for potential failures. The ability to work with abstract concepts and to do technical analysis is especially important for systems programmers, because they work with the software that controls the computerís operation. Because programmers are expected to work in teams and interact directly with users, employers want programmers who are able to communicate with nontechnical personnel.

Entry-level or junior programmers may work alone on simple assignments after some initial instruction, or they may be assigned to work on a team with more experienced programmers. Either way, beginning programmers generally must work under close supervision. Because technology changes so rapidly, programmers must continuously update their knowledge and skills by taking courses sponsored by their employer or by software vendors, or offered through local community colleges and universities.

For skilled workers who keep up to date with the latest technology, the prospects for advancement are good. In large organizations, programmers may be promoted to lead programmer and be given supervisory responsibilities. Some applications programmers may move into systems programming after they gain experience and take courses in systems software. With general business experience, programmers may become programmer-analysts or systems analysts or be promoted to a managerial position. Other programmers, with specialized knowledge and experience with a language or operating system, may work in research and development on multimedia or Internet technology, for example. As employers increasingly contract out programming jobs, more opportunities should arise for experienced programmers with expertise in a specific area to work as consultants.

Certification is a way to demonstrate a level of competence, and may provide a jobseeker with a competitive advantage. In addition to language-specific certificates that a programmer can obtain, product vendors or software firms also offer certification and may require professionals who work with their products to be certified. Voluntary certification also is available through other various organizations.