Latest EECS News
1. Undergraduate McCormick Office of Undergraduate Engineering (L269)
2. The Office of Dean Joe Holtgreive (L268)- for signature for Registration Exemption Forms (Late Registration).
More NU & EECS Maps
Technological Institute (Tech) Room Finder and Other Maps (2133 Sheridan Road Evanston, IL 60208-4001)
Exterior Map of Technological Institute (Tech) 2145 (Sheridan Road Evanston, IL 60208-3100)
Dear Prospective Students,
I am very pleased to inform you about the opportunities available to you as an undergraduate in our department.
Our graduates immediately go to work at such illustrious companies as Google, Microsoft, Motorola, Apple, Ford, Pixar, General Motors, IBM, Intel, Yahoo, Sun, HP, Northrup Grumann - the list goes on. Many continue on to graduate school; a degree from Northwestern assists in placement in top graduate programs for PhD and professional degrees.
Many of our 250 undergraduate majors work in the labs alongside professors and graduate students doing real research and publishing papers. Our students are involved in Design Competition, developing competing robots, building and racing NU's solar car, creating music games, animation and computer graphics, and numerous other exciting projects. Economics, communications, linguistics, music/audio, graphics, video, networks, theory, optimization, distributed computing -- all and more are found within EECS at Northwestern University.
Degree options are wide-ranging. Within our three core areas, EE, CE and CS, we offer an option to get your Masters degree simultaneously with your BS degree, or to choose a course of study within the Weinberg School of Arts & Sciences (as an alternative to the McCormick School of Engineering). You can also choose to minor in CS, EE and CE.
Are you interested in programming but majoring in something else? We have courses specifically for non-CS-majors.
I invite you to explore our website and learn more about us. If you have questions, or would like specific information about one or more of our programs, you are welcome to download our Undergraduate Study Manual, or to phone us at 847-491-3451, or email us at firstname.lastname@example.org - someone will look into your question and get back to you as soon as possible. We look forward to hearing from you!
Professor and Chair
Electrical Engineering involves the development and application of electronic and optical technologies for generating, communicating, and processing information. Our EE curriculum includes courses in electronic circuits, solid-state electronics, electromagnetics, optics, lasers, controls, digital signal processing, communications and networks.
The Computer Engineering (CE) program teaches the design of complex digital systems, from transistors to software systems. It deals with digital circuit and system design, computer architecture, robotics, microprocessors, software systems, and embedded systems. The interrelationships between and appropriate roles of hardware and software are emphasized. Our Computer Engineering curriculum involves courses in digital logic, electronic circuits, computer architecture, robotics, VLSI design, VLSI CAD, software development, operating systems, microprocessor-based systems, and parallel computing.
Students who are interested in pursuing a curriculum in computing that emphasizes understanding of computer hardware and the hardware/software interface should sign up for a B.S., M.S. or Ph.D. degree in Computer Engineering in the EECS Department.
Computer engineers have broad professional employment opportunities including design and management responsibilities, working with microchips and computers, applicationspecific hardware-software systems, computer-aided design (CAD) tools for digital systems, aerospace systems, defense systems, and networked systems. 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 engineering was $70,400 in 2012, up from $67,800 in 2011.
Our Computer Engineering curriculum has strong lab-based learning emphasis and culminates in three design-projects-based courses. Interested undergraduates can get involved earlier in significant project or research work. Our teaching laboratories have recently been upgraded with the latest computer workstations, computer-controlled instruments and new experiments in newly renovated labs.
The Computer Engineering curriculum allows students to focus on a particular area of specialization. The areas include
- High-Performance Computing
- VLSI and Computer Aided Design
- Embedded Systems
The Computer Engineering program involves the design and engineering of computers including hardware and software design. It is a carefully chosen synthesis of computer engineering, computer science, and electrical engineering courses to train students how do design complex digital systems, from transistors to software. Computer engineering is a broad area involving many possible areas of specialization. These include Computer Architecture, VLSI Systems, Computer-Aided Design, Software Design, Robotics, Computer Vision, and Embedded Systems.
Program Educational Objectives
The broad objectives we expect graduates to obtain from our program are:
- Career Preparation: Graduates will apply their computer engineering skills to a variety of challenges in industry, academia or in the pursuit of other fields.
- Professionalism and leadership: Graduates will attain careers in which they become leaders in their chosen fields, work in multi-disciplinary teams, make decisions that are socially responsible, and communicate effectively.
- Intellectual curiosity: Graduates will continuously learn new concepts, identify new directions, and adapt in response to the needs of a rapidly changing world.
To prepare our graduates to achieve these objectives, we intend for students of the Computer Engineering program to graduate with the following knowledge and skills:
- Knowledge of continuous and discrete math
- Knowledge of core Computer Engineering topics
- An ability to use modern engineering techniques for analysis and design
- An ability to apply knowledge of math, science and engineering to the analysis of Computer Engineering problems
- Knowledge of probability and statistics
- An ability to design and conduct scientific and engineering experiments, as well as to analyze and interpret data
- An ability to design systems which include hardware and/or software components
- An ability to identify, formulate and solve novel Computer Engineering problems
- An ability to function in multidisciplinary teams
- An understanding of ethical and professional responsibility
- An ability to convey technical material through oral presentation and interaction with an audience
- An ability to convey technical material through formal written papers and reports
- A broad education and knowledge of contemporary issues
- A recognition of the need for, and an ability to engage in, life-long learning
- The ability to get a good job or admission to a top graduate school.
The computer engineering program is accredited by the Engineering Accreditation Commission of ABET, http://www.abet.org. For current enrollment and degrees conferred, see McCormick's Enrollment and Graduation Data. Further details of the computer engineering curriculum, the preferred schedule for computer engineering students, prerequisites, study plan, and information about conformance with ABET guidelines is in the Undergraduate Study Manual.
- Senior Capstone Design report requirements
- Capstone Design Requirement listing within Undergraduate Study Manual
Getting Started in this Major
For further information about the structure of the CE major, read the overview of our undergraduate programs. You may also find these links useful:
We encourage you to contact us.
Our CE curriculum chair can be emailed at: email@example.com
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. 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.
Engineering or Liberal Arts (McCormick or Weinberg)
Northwestern offers computer science degrees within McCormick, the Engineering and Applied Sciences School, and Weinberg, the Arts and Sciences School. The computer science-specific elements/requirements of the two degrees are identical. The McCormick degree offers a background in engineering, while the Weinberg CS degree offers a background in liberal arts.
Components of the Curriculum
The Northwestern Computer Science Degree is composed of five distinct sets of requirements. Background requirements build up the student’s engineering skills. The Core requirements represent essential knowledge for all computer scientists. The Breadth requirements provide exposure to every critical subfield of Computer Science. The Depth requirements provide the student with the opportunity to learn about two specializations in depth, leading to a project, and perhaps graduate courses and research. The Project requirement gives the student the experience of designing and building a complex software artifac.
Undergraduate Study Manual
Further details of the Computer Science curriculum, including Appendices A and B on how to map to the McCormick or Weinberg frameworks, a prerequisite graph, a project requirement course list, and forms, can be found in the relevant pages within the EECS Undergraduate Study Manual (download from the link in the right column).
NOTE: CS Curriculum forms for 2007-2013 are found under the Forms link at the top of this page.
Weinberg BA-CS Major
The Weinberg curriculum is discussed in the EECS Undergraduate Study Manual (link at lower-right on this page), CS Curriculum, Appendix B.
To declare CS major in Weinberg, pick up a major declaration form from the EECS Office in Tech L351.
Program of Study for the Major in CS*
Page 1 of 2