CS Major Upper Division Degree Requirements

Enrollment Policy

All upper division Computer Science course enrollments are restricted. If a student is a declared CS or EECS major, they may be able to enroll directly in upper division courses during phase 1. If students are not in one of these categories, then they will have to add to the waiting list for the course(s) students hope to take during phase 2. See the Course Enrollment Policy for specific information

Required Courses for completion of the CS Major

All courses taken for the major must be at least 3 units and taken for a letter grade. All upper division courses applied toward the major must be completed with an overall GPA of 2.0 or above. The prerequisites for upper division courses are listed in the Berkeley Academic Guide. For course planning, HKN course guides, maps, and prerequisite charts are a great resource. 

Students need to complete:

  • 20 Upper Division Units*
    • 4 units of a Design Course from the following:
    • 8 units upper-division CS courses*
    • 8 units upper division CS/EE/EECS courses*
  • 7 units of Upper Division Technical Electives:

*Denotes that all courses for the major must be technical in nature. 199, 198, 197, 195, select 194, 191, 190, and various seminars do not count. Please see the table of approved CS 194's and grad courses. If you are unsure, please check with the CS Advisors (cs-advising@cs.berkeley.edu).

Workload

CS 150/EE 141/EECS151 (Digital Systems), CS 152 (Computer Architecture), CS 162 (Operating Systems), CS 164 (Programming Languages and Compilers), CS 169 (Software Engineering), CS 170 (CS Theory), CS 184 (Computer Graphics), and CS 189 (Machine Learning) are known to have heavy workloads. It is not recommended to take these courses in combination.

Taking CS courses at other institutions

The CS Division allows majors to satisfy at most one upper division course requirement at another four-year institution. Occasional exceptions are made. In either case, you need to make prior arrangements and consult with CS Advisors. Please use this form to start the process.