Computer science (CS) spans the range from theory through programming to cutting-edge development of computing solutions. Computer science offers a foundation that permits graduates to adapt to new technologies and new ideas. The work of computer scientists falls into three categories: a) designing and building software; b) developing effective ways to solve computing problems, such as storing information in databases, sending data over networks or providing new approaches to security problems; and c) devising new and better ways of using computers and addressing particular challenges in areas such as robotics, computer vision, or digital forensics (although these specializations are not available in all computer science programs). Most computer science programs require some mathematical background.
Let us consider what is involved in a career path in each area.
- Career Path 1: Designing and implementing software. This refers to the work of software development which has grown to include aspects of web development, interface design, security issues, mobile computing, and so on. This is the career path that the majority of computer science graduates follow. While a bachelor’s degree is generally sufficient for entry into this kind of career, many software professionals return to school to obtain a terminal master’s degree. (Rarely is a doctorate involved.) Career opportunities occur in a wide variety of settings including large or small software companies, large or small computer services companies, and large organizations of all kinds (industry, government, banking, healthcare, etc.). Degree programs in software engineering also educate students for this career path.
- Career Path 2: Devising new ways to use computers. This refers to innovation in the application of computer technology. A career path in this area can involve advanced graduate work, followed by a position in a research university or industrial research and development laboratory; it can involve entrepreneurial activity such as was evident during the dot-com boom of the 1990s; or it can involve a combination of the two.
- Career Path 3: Developing effective ways to solve computing problems. This refers to the application or development of computer science theory and knowledge of algorithms to ensure the best possible solutions for computationally intensive problems. As a practical matter, a career path in the development of new computer science theory typically requires graduate work to the Ph.D. level, followed by a position in a research university or an industrial research and development laboratory.
- Career Path 4: Planning and managing organizational technology infrastructure. This is the type of work for which the new information technology (IT) programs explicitly aim to educate students.
Career paths 2 and 3 are undenably in the domain of computer science graduates. Career paths 1 and 4 have spawned the new majors in software engineering and information technology, respectively, and information systems graduates often follow Career path 1, too. Computer scientists continue to fill these positions, but programs in software engineering, information technology, and information systems offer alternative paths to these careers.