Computer Science as a field grew out of Electrical Engineering, Mathematics, and Psychology over 50 years ago. It synthesized aspects of these fields and grew exponentially over the past half century, both in terms of the number of computer science practitioners and its economic and social impact on the world. The field continues its exponential growth. In November 2009 the U.S. Bureau of Labor Statistics estimated that among all occupations in all fields of science and engineering, computer science occupations are projected to account for nearly 60% of all job growth between now and 2018. The Bureau of Labor Statistics report (January 2012) says "computer and mathematical occupations are projected to add 778,300 new jobs between 2010 and 2020, after having added 229,600 new jobs from 2006 to 2010." The National Association of Colleges and Employers (NACE) Salary Survey 2013 reports that the average starting salary for those graduating with a B.S. in computer science was $64,400 in 2012, up from $62,100 in 2011.Given this growth, and the sheer breadth and scale of the computer science enterprise in industry and academia, what are the goals of the Northwestern undergraduate degree? A Northwestern computer science graduate will
- Comprehend the breadth of computer science, its key intellectual divisions and questions, and its past and likely future impacts on engineering, science, medicine, business, and law;
- Approach problems from the algorithmic perspective, understanding the nature of and broad reach of computation and how to apply it abstractly;
- Approach problems from the systems perspective, understand the evolving layers of the software/hardware stack and how to use and extend them;
- Approach problems from the intelligence perspective, understanding how to make progress against seemingly intractable problems;
- Design and implement complex software systems, individually and as a team member; and
- Design and implement effective human-computer interfaces.
Additionally, Northwestern graduates also will have had the opportunity to broaden their education by taking advantage of Computer Science’s strong connections to Northwestern programs in Computer Engineering, Cognitive Science, and the Learning Sciences. Northwestern graduates may have also participated in directed research.A Northwestern graduate will be imminently employable in the computer and software industries, and well beyond, as skills such as these are widely sought after. Our program will also provide effective preparation for graduate studies in Computer Science.