Programming and Software Development
The traditional and most common career path in computer science is programming and software development.
Software engineers design and develop applications, games, operating systems, network control systems, and interfaces for desktop, web, and mobile uses. Applications software engineers analyze user needs and develop customized applications and databases. Systems software engineers design, set-up, and maintain an organization’s computer systems. Programmers mainly confine themselves to the coding part.
Success as a computer programmer depends more on analytical and logical skills and competence in computing skills rather than education qualifications, though a major in computer science or strong math and science background in education, helps. A software engineer requires a much higher level of competence including formal qualifications.
The total number of programmers and software engineers who found employment stood at 1.3 million in 2008, and employment opportunities for software engineers will increase by 32 percent through 2018. Most computer software engineers enjoy a mean hourly wage of $43.55 and a mean annual wage of $90,170. Programmers earn much less, with a mean hourly wage of $35.91 and mean annual wage of $74,690.
System, Database, or Network Administration
One popular career path in computer science is planning and managing the information technology infrastructure of organizations and other enterprises.
Systems administrators ensure proper working and integration of all computer, network, and software, and maintain system efficiency. They also troubleshoot problems and monitor automated systems. A related area of specialization is web administration, where the system administrator performs the same set of duties for a website.
Database administrators focus on the data storage and handling facilities, determining the best ways to store, retrieve and use data.
Network architects, network engineers or network administrators design and set up computer networks including LAN, WAN, intranets, and other data communications systems.
All these three job profiles remain closely interrelated and very often overlap. These jobs also mandate creating and/or modifying general or specialized applications, interfaces, and utility programs to suit organizational needs and optimizing operational efficiency.
The total number of jobs available for system, database, and networking administrators in 2008 stood at 961,200, with the opportunities expected to grow by 23 percent on average through 2018. Networking engineers have especially bright prospects, with an anticipated growth rate of 53 percent through 2018, making it one of the fastest growing professions.
Entry-level qualifications for these jobs include a bachelor’s degree in computer related subjects and/or certificate courses. Success depends on having a high level of problem solving, analytical, and communication skills.
Database administrators earn $35.71 an hour or $74,290 a year on average. Computer systems administrators earn $34.10 an hour or $70,930 a year on average. Network and data communication administrators earn $36.81 an hour or $76,560 a year on average, with the top ten percentile earning $55.83 an hour or $116,120 a year.
Computer hardware engineers design, develop, test, and install computers and computer-related equipment. They also maintain and upgrade computers, troubleshoot hardware failures, besides set up and integrate devices and peripherals such as modems, keyboards, printers, wireless networks, and others to the IT infrastructure.
Hardware engineers earned average hourly wages of $48.75 and average annual wages of $101,410 in 2009. The total number of available jobs stood at 74,700 in 2008, and the profession will continue to witness steady and average growth.
Several of the career paths in computer science focus on deliverables, where success depends more on skills and experience, rather than qualifications.
Good opportunities nevertheless, exist for research, which may require even a PhD depending on the nature and complexity of the research. Two good areas for research include devising new ways to use computers or innovation in applying computing technology, and applying knowledge of computer science and algorithms to provide efficient solutions for computationally intensive problems.
Computer science graduates with good theoretical skills can take up training and development activities in any of the computer-related fields, such as programming, hardware, or system administration. Trainers often find employment in large organizations, vocational training institutes, schools, and colleges.
Another good choice of career path in computer science is that of computer forensics. This job basically entails data mining for investigative purposes.
In addition, computer science graduates can leverage their analytical and logical skills to excel as marketing researchers, risk analysts, and statisticians, though such professions have very little to do with computing per se.
- Bureau of Labor Statistics. “Occupational Outlook Handbook 2010-11”. Retrieved from www.bls.gov on 24 March 2011.
- Association for Computing Machiner. “Computer Science.” Retrieved from https://computingcareers.acm.org/?page_id=8 on 24 March 2011.
Image Credit: flickr.com/Martin Wichary