Career Summary - Source: Bureau of Labor Statistics
Wages and Employment Trends
| Median wages (2005) | $37.06 hourly, $77,090 annual |
| Employment (2004) | 460,000 employees |
| Projected growth (2004-2014) | |
| Projected need (2004-2014) | 268,000 additional employees |
Career Summary - Develop, create, and modify general computer applications software or specialized utility programs. Analyze user needs and develop software solutions. Design software or customize software for client use with the aim of optimizing operational efficiency. May analyze and design databases within an application area, working individually or coordinating database development as part of a team.
Specializations
Education, Certification & Licensing - Requirements for computer programming positions have been rising over the past decade, and most positions now require a college degree. However, work experience, computer course-work, and proven talent may still sometimes substitute for a degree. Employers who use computers for business applications often look for people with college course-work in programming and business. Scientific or engineering applications may require a bachelor’s degree in computer science, mathematics, engineering, or the physical sciences. Graduate degrees are required for some jobs and can be a real advantage when seeking promotion.
Many companies offer certification in programming languages. For example, Brainbench and Cisco Systems offers a variety of programming certificates from Java to Unix. Microsoft certifies programmers who use their products.
Getting Ahead - Computer programmers usually start out as trainees, though those who have sufficient education, training, or experience, can enter higher positions directly. They advance through a combination of experience, training, and further education to become programmer analysts. Programmer analysts who demonstrate work and leadership skills may become systems analysts, who may then move up into project management, research, and system design. As programmers advance they do less coding and more visionary work, planning systems and inventing ways for computers to serve people more efficiently and innovatively.
Opportunities - Prospects likely will be best for college graduates with knowledge of a variety of programming languages and tools; those with less formal education or its equivalent in work experience are apt to face strong competition for programming jobs.
Salary & Employment Trends - Earnings for computer programmers vary depending on their level of experience and responsibility. Entry-level salaries are generally moderate, in the $36,000-$60,000 range. Senior programmers usually earn moderately high salaries, in the $60,000-$103,000 range. Those with ambition and talent can earn even more. As a rule, salaries are higher in Northern Virginia than elsewhere. However, salaries in recent years have leveled off or even declined in some instances. The move to outsource jobs will probably keep salaries from rising very fast in the future. According to Robert Half International, a firm providing specialized staffing services, average annual starting salaries in 2005 ranged from about $53,000 to $83,000 for applications development programmers, and from $55,000 to $88,000 for software developers. Starting salaries for mainframe systems programmers ranged from $50,000 to $68,000 in 2005.
Computer and information technology jobs had a real a slump in the early years of this decade. Things have turned around somewhat and companies are hiring more people again. Lots of people left computer jobs a few years ago, and some employers are scrambling to find people now, especially in hot areas like Washington DC.
Advanced jobs--for analysts, project managers, and the like--are likely to remain here instead of being sent overseas, however, since these workers need to keep in close contact with managers, system users, and each other. As with other fields, keeping your skills up-to-date will be the key to finding and keeping the best jobs.
Source: Bureau of Labor Statistics
- Associate of Science in Computer Information Science / Programming