Computer Engineering Curriculum
For a more visual version of the information on this page, download the Computer Engineering degree checklist.
All prerequisite courses and major requirements require a minimum grade of 2.0 or higher.
- Course descriptions
- General education requirements
- Entry prerequisites
- Core requirements
- Elective requirements
- Petitions
Course descriptions
Follow the links below to read about the content covered in each course:
- Chemistry (BCHEM)
- Computing and Software Systems (CSS)
- Computer Engineering Capstone (BCE)
- Electrical Engineering (BEE)
- Science and Technology Mathematics (STMATH)
General education requirements
All UW students must complete a common set of general education requirements. As a Computer Engineering major, you will be on track for completing the English Composition (C), some Additional Writing (W), Natural Science (NSc), and Reasoning (R), but make sure to plan for completion of the following:
- Additional Writing (W) – 5 credits
- BWRIT 135 (Research Writing) or similar recommended
- Diversity (DIV) – 5 credits
- Almost always also fulfills A&H or SSc
- Only 3 credits prior if admitted prior to autumn 2023
- Arts & Humanities (A&H) – 15 credits
- Cannot overlap with SSc
- Social Sciences (SSc) – 15 credits
- Cannot overlap with A&H
Entry prerequisites
Visit our Admissions page for information on prerequisite coursework.
Core requirements
Math and Chemistry (26 credits)
These courses can be taken before or after entry into the major.
- BCHEM 143+144: General Chemistry I + Lab (6 credits)
- STMATH 207: Introduction to Differential Equations (5 credits)
- STMATH 208: Matrix Algebra with Applications (5 credits)
- STMATH 224: Multivariable Calculus (5 credits)
- STMATH 390: Probability & Statistics in Engineering (5 credits)
Computer Science (30 credits)
- CSS 301: Technical Writing (5 credits)
- CSS 342: Advanced Data Structures, Algorithms, and Discrete Mathematics I (5 credits)
- CSS 343: Advanced Data Structures, Algorithms, and Discrete Mathematics II (5 credits)
- CSS 360: Software Engineering (5 credits)
- CSS 427: Intro to Embedded Systems (5 credits)
- CSS 430: Operating Systems (5 credits)
Electrical Engineering (30 credits)
- BEE 215: Fundamentals of EE (5 credits)
- BEE 233: Circuit Theory (5 credits)
- BEE 235: Continuous Time Linear Systems (5 credits)
- BEE 271: Digital Circuits & Systems (5 credits)
- BEE 331: Devices & Circuits I (5 credits)
- One of either BEE 425: Microprocessor System Design (5 credits) or CSS 422: Hardware and Computer Organization (5 credits)
Computer Engineering Capstone (10 credits)
Elective requirements
You must complete ten (10) credits (usually two courses) of “CSS” or “BEE” elective coursework. Of these 10 credits:
- Elective courses must have either the CSS or BEE prefix
- At least 5 elective credits must be 400-level
- The remaining 5 elective credits must be 300-level or higher
- Maximum of 5 credits combined can be CSS or BEE “Special Topics” courses
- Maximum of 5 credits combined can be CSS or BEE Independent Study (498) or Undergrad Research (499)
Petitions
Computer Engineering-related courses that are not included on the core or elective requirements lists are considered on a case-by-case basis. If you have a syllabus, letter from the instructor, or other detailed description for the class you wish to use as an elective, you may submit a petition to request for the course to count.