Today, computers are in everything, everywhere. This fact is making computer scientists and software engineers indispensable because they are the ones leading the way in developing the next generation systems of mobile apps, virtual reality software, and computational biological analysis. They seek to understand society’s needs, and once they do, they create software systems that make a difference for society. As more of the world runs on software the need for these people will only continue to grow.

Software Engineering


Software engineering (SE) is concerned with developing and maintaining software systems that behave reliably and efficiently, are affordable to develop and maintain, and satisfy all the requirements that customers have defined for them. It is important because of the impact of large, expensive software systems and the role of software in safety-critical applications. It integrates significant mathematics, computer science and practices whose origins are in engineering. (ACM Computing Careers)

Computer Science


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. (ACM Computing Careers)