Academics / Undergraduate First-Year Focus
Computer Science Prerequisites
Recommended Course Sequence
The Department of Computer Science invites undergraduate students across Northwestern University, particularly those considering a major or minor in computer science or AI, to explore introductory courses in the following order:
CS/GEN_ENG 150/1 → COMP_SCI 180 → COMP_SCI 208 → COMP_SCI 211
Advanced Placement and International Baccalaureate Credits
An updated Advanced Placement (AP) or International Baccalaureate test credit policy is published annually for the incoming class. See the Office of the Registrar table for the current year’s policy. AP or IB test score equivalencies for the 2026-27 academic year:
- AP Computer Science Principles (score of 4 or 5) will transfer in as COMP_SCI 1CP. This can only count towards unrestricted electives, will not serve as a prerequisite for any COMP_SCI courses, and will not replace any COMP_SCI courses.
- AP Computer Science A (score of 4 or 5) or IB Computer Science (score of 5, 6, or 7) will transfer in as COMP_SCI 1CA. For McCormick AI or computer science majors, this course can count towards the “Advanced Electives” category of major requirements. It will only serve as a prerequisite for GEN_ENG 151 and will not replace any COMP_SCI courses.
View the Office of Registrar AP/IB policy
Transfer Credits and related coursework
Upon your transfer to Northwestern, the Registrar's Office will evaluate your transfer credits. Credits accepted from your former school will appear on the transfer credit evaluation with the department name and the course level (e.g. COMP_SCI 1XX, COMP_SCI 2XX, or COMP_SCI 3XX). The 1XX/2XX/3XX designation does not satisfy prerequisites for CS courses.
Courses from Weinberg's Department of Statistics and Data Science and other related coursework do not serve as prerequisites to CS courses. The required prerequisites for each CS course are listed on the course pages and in CAESAR, Northwestern's online student portal to the University's Student Enterprise System.
Placement Exams
An optional Computer Science Placement Exam will take place in-person on campus during the first week of the fall quarter. While some students will undoubtedly come to Northwestern with a lot of programming experience, that experience may not line up with the learning objectives of specific courses. The placement exams are not for everyone, but rather for the small number of students with extensive programming experience beyond AP coursework and are planning to pursue formal CS study through a CS/AI major/minor. Placement exams are available for CS 180, 208 and 211.
Additionally, students who do not have AP CS A credit but have extensive object-oriented programming experience can take an optional entrance exam (given during Wildcat Welcome week) for permission to join GEN_ENG 151: Honors Programming for Engineers.
View the Northwestern Division of Student Affairs placement exams and assessments guide.
Courses
The Department of Computer Science invites undergraduate students from across Northwestern University to explore computer science by taking introductory courses. The classes described below can be taken on an individual basis to explore the field. Should you become more interested, consider pursuing a minor or major in computer science or AI.
Entry Points to Computer Science Courses
Any student who takes CS courses at Northwestern will start in one of the following courses, focused on object-oriented programming Python.
- COMP_SCI 150: Fundamentals of Programming and Computational Problem Solving — Non-McCormick students across the University will take this course.
- GEN_ENG 150: Programming for Engineers — all McCormick students will take this core curriculum course.
- GEN_ENG 151: Honors Programming for Engineers — All Northwestern students will have the option to take GEN_ENG 151 course if they meet the prerequisite: Comp_Sci 1CA OR placement exam administered during during Wildcat Welcome. IMPORTANT: GEN_ENG 151 is only offered in fall quarter each year.
Foundational Coursework for CS/AI Majors/Minors
After COMP_SCI/GEN_ENG/ 150/151, the set of computer science courses below introduces students to the fundamentals of the field. Students intending to major or minor in computer science or AI typically continue on to COMP_SCI 180 then COMP_SCI 208.
- COMP_SCI 180: Software Design and Composition — Prerequisite: GEN_ENG 150 or GEN_ENG 151 or COMP_SCI 150. Cannot be taken in the same quarter as COMP_SCI 211.
- COMP_SCI 208: Data Structures and Algorithms — Prerequisite: Comp_Sci 180. Cannot be taken in the same quarter as Comp_Sci 211.
- Comp_Sci 211: Programming in Systems-Level Languages —Prerequisite: Gen_Eng 150 OR Gen_Eng 151 OR Comp_Sci 150. Cannot be taken in the same quarter as either Comp_Sci 180 or Comp_Sci 208.
- Comp_Sci 212: Math Foundations of CS Part 1: Discrete Math for CS — Prerequisite: Gen_Eng 150 OR Gen_Eng 151 OR Comp_Sci 150
- Comp_Sci 213: Introduction to Computer Systems — Prerequisite: Comp_Sci 211
Non-AI or CS Major/Minor Introductory Courses
The following courses provide an introduction to computer programming using Python, but do not count towards the CS/AI majors/minors.
- COMP_SCI 110: Introduction to Computer Programming
- COMP_Sci 217: Applied Data Management — Prerequisite: Gen_Eng 150 OR Gen_Eng 151 OR Comp_Sci 150.
Contact Us
If you have any questions, please email the CS advising team at cs-permissions-advising@northwestern.edu.