Updated June 28, 2023
This is CSE’s core major, preparing students to contribute to the profound societal changes being brought about by innovations in computing. Courses and research are centered on exciting areas like algorithms, computer architecture, computer vision & graphics, cryptography & security, databases, embedded systems, machine learning (AI), mobile computing, programming languages, software engineering, and systems & networking. Students interested in a hardware emphasis might also consider Computer Engineering (CS25). The CSE program provides three majors in all, with numerous electives, allowing flexibility to explore your academic and career interests. The lower-division course requirements are designed to provide a strong foundation in mathematics, physics, programming methodology and skills, and computer organization. Upper-division core courses deal with the theory and design of algorithms, hardware, and software. Electives allow students to gain additional breadth and/or depth in computer science and engineering.
Effective Fall 2023, the Computer Science (CS26) major curriculum has been updated. The FA23 curriculum is designed to ensure flexibility and adaptability for first year students and transfer students with the goal of ensuring students are prepared for the growing breadth known as Computer Science. Our lower division requirements remain unchanged while the Upper Division core requirements reflect the following topics: Data Structure and Programming, Algorithms, and Software Engineering. Once students have taken our Core Courses, our elective courses allow students to explore multiple paths to graduation and dive into these areas of specialization:
- (Systems) The implementation of abstractions behind, and security of, computer hardware, software, and networking.
- (Theory/Abstraction) Abstract computational ideas using mathematical or formal tools.
- (Applications of Computing) Applying appropriate computing knowledge and problem-solving techniques to guide and shape the impact of computing on the world.
Degree Plan Checklist:
- BS Computer Science Checklist (Fall 2023 Curriculum): a checklist for all major requirements for students on the Fall 2023 Curriculum
- All major requirements must be taken for a letter grade AND passed with a C- or better (with the exceptions of: CSE 91, CSE 95, CSE 197, CSE 198, and CSE 199).
- Students will notice that some tagged elective courses are bolded. These bolded courses indicate that students who have completed the lower-division CSE coursework and the CS26 FA23 core courses (CSE 100/100R, CSE 101, and CSE 110) have fulfilled the prerequisites for these bolded courses.
BS Computer Science Checklist (FA22 and Prior):
- BS Computer Science Checklist (Fall 2022 Curriculum): a checklist of all major requirements for students on the Fall 2022 curriculum
- All major requirements must be taken for a letter grade AND passed with a C- or better (with the exception of CSE 91, CSE 95, 197, 198, and 199).
- BS Computer Science Checklist (Fall 2021 Curriculum): a checklist of all major requirements for students on the Fall 2021 curriculum
- All major requirements must be taken for a letter grade AND passed with a C- or better (with the exception of CSE 95, 197, 198, and 199).
- BS Computer Science Checklist (Fall 2020 Curriculum): a checklist of all major requirements for students on the Fall 2020 curriculum
- All major requirements must be taken for a letter grade AND passed with a C- or better (with the exception of CSE 95, 197, 198, and 199).
- BS Computer Science Checklist (Fall 2019 Curriculum): a checklist of all major requirements for students on the Fall 2019 curriculum
- All major requirements must be taken for a letter grade AND passed with a C- or better (with the exception of CSE 95, 197, 198, and 199).
- BS Computer Science Checklist (Fall 2017 Curriculum): a checklist of all major requirements for students on the Fall 2017 curriculum
- All major requirements must be taken for a letter grade (with the exception of CSE 95, 197, 198, and 199).
- For CSE majors on an old degree curriculum, if you want to switch to Fall 2017 requirements, please send a request to advising through the Virtual Advising Center (VAC) or come in to meet with an advisor
Four Year Plans
-
Academic Planning Worksheet (link to copy a Google Sheet): blank worksheet for students to be able to create a sample long term plan which can be brought to an advising meeting
-
Sample Plans By College: sample long term plan that includes college requirements
- Sample 4 Year Plan (Fall 2023 Curriculum)
-
These plans only include CSE major requirements. For questions regarding your college and university requirements, please check with your college.
YEAR
FALL
WINTER
SPRING
First Year
CSE 8A or 11*1
MATH 20A
CSE 8B*1
MATH 20B
CSE 12
CSE 15L
CSE 20*2
MATH 20C
Second Year
CSE 21*3
CSE 30
CSE General Science
CSE 100
Math 18
CSE General Science
CSE 101
CSE 110
Statistics
Third Year
Systems Elective
Theory/Abstraction Elective
Applications Elective
Systems Electives
Theory/Abstraction Elective
Applications Elective
Systems Elective
Theory/Abstraction Elective
Applications Elective
Fourth Year
Open CSE Elective*4
Open CSE Elective*4
Open CSE Elective*4
Open CSE Elective*4
Open CSE Elective*4
Open CSE Elective*4
Elective
*1: Students who do not have programming experience should begin with the two-track course: CSE 8A (take CSE 8B in the second quarter). Students who have programming experience may begin with CSE 11 (take CSE 12 and CSE 15L in the second quarter).
*2: CSE 20 may be substituted with MATH 109 or MATH 31CH. This is a manual update an advisor needs to make. Send a message through the Virtual Advising Center (VAC).
*3: CSE 21 may be substituted with MATH 154 or MATH 184. This is a manual update an advisor needs to make. Send a message through the Virtual Advising Center (VAC). *Effective Winter 2023: CSE 21 may be substituted with MATH 154 or MATH 184 or MATH 188*
*4: Open CSE Electives: CSE UD courses, including Special Studies along with any non-CSE courses that have any of the above tags. For a full list of policies and limitations on Open CSE Electives, please visit the CSE Electives website
Transfer Students
Transfer students are in a special situation where the credits they come in with vary vastly from one student to another. To assist transfer students with their long term plans for completing major requirements, we have created different long term plans with different entry points depending on the CSE credits students typically come in with. These plans only include CSE major requirements, for questions regarding your college and university requirements, please check with your college.
*These plans only focus on CSE coursework. For a list of all CSE Major requirements (including math and general science courses needed), please see the BS Computer Science Checklist above.
- Incoming Computer Science (CS26) Majors with Transfer Credit for CSE 11, 12 and 20, click here for Sample Long-Term Plan
-
Fall Quarter - Year One
Winter Quarter - Year One
Spring Quarter - Year One
CSE 30
CSE 100/100R
CSE 110
CSE 21*3
CSE 101
Systems Elective
CSE 15L
Statistics
Abstraction Elective
Application Elective
Fall Quarter - Year Two
Winter Quarter - Year Two
Spring Quarter - Year Two
Systems Electives
Systems Elective
Open CSE Electives*4
Open CSE Electives*4
Abstraction Elective
Open CSE Elective*4
Application Electives
Applications Electives
Open CSE Electives*4
Abstraction Elective
Open CSE Electives*4
Open CSE Electives*4
*1: Students who do not have programming experience should begin with the two-track course: CSE 8A (take CSE 8B in the second quarter). Students who have programming experience may begin with CSE 11 (take CSE 12 and CSE 15L in the second quarter).
*2: CSE 20 may be substituted with MATH 109 or MATH 31CH. This is a manual update an advisor needs to make. Send a message through the Virtual Advising Center (VAC).
*3: CSE 21 may be substituted with MATH 154 or MATH 184. This is a manual update an advisor needs to make. Send a message through the Virtual Advising Center (VAC). *Effective Winter 2023: CSE 21 may be substituted with MATH 154 or MATH 184 or MATH 188*
*4: Open CSE Electives: CSE UD courses, including Special Studies along with any non-CSE courses that have any of the above tags. For a full list of policies and limitations on Open CSE Electives, please visit the CSE Electives website
- Incoming Computer Science (CS26) Majors with Transfer Credit for CSE 11, 12, 20, and 30 click here for Sample Long-Term Plan
-
Fall Quarter - Year One
Winter Quarter - Year One
Spring Quarter - Year One
CSE 21*3
CSE 100/100R
CSE 110
CSE 15L
CSE 101
Systems Elective
Statistics
Abstraction Elective
Application Elective
Fall Quarter - Year Two
Winter Quarter - Year Two
Spring Quarter - Year Two
Systems Electives
Systems Elective
Open CSE Electives*4
Open CSE Electives*4
Abstraction Elective
Open CSE Elective*4
Application Electives
Applications Electives
Open CSE Electives*4
Abstraction Elective
Open CSE Electives*4
Open CSE Electives*4
*1: Students who do not have programming experience should begin with the two-track course: CSE 8A (take CSE 8B in the second quarter). Students who have programming experience may begin with CSE 11 (take CSE 12 and CSE 15L in the second quarter).
*2: CSE 20 may be substituted with MATH 109 or MATH 31CH. This is a manual update an advisor needs to make. Send a message through the Virtual Advising Center (VAC).
*3: CSE 21 may be substituted with MATH 154 or MATH 184. This is a manual update an advisor needs to make. Send a message through the Virtual Advising Center (VAC). *Effective Winter 2023: CSE 21 may be substituted with MATH 154 or MATH 184 or MATH 188*
*4: Open CSE Electives: CSE UD courses, including Special Studies along with any non-CSE courses that have any of the above tags. For a full list of policies and limitations on Open CSE Electives, please visit the CSE Electives website
FALL 2022 Curriculum and Prior Sample Plans
Four-Year Plans:
-
Academic Planning Worksheet (link to copy a Google Sheet): blank worksheet for students to be able to create a sample long term plan which can be brought to an advising meeting
-
Sample Plans By College: sample long term plan that includes college requirements
-
Sample 4-year Plan (Fall 2022 Curriculum)
- Sample 4-year Plan (Fall 2022 Curriculum):
-
YEAR
FALL
WINTER
SPRING
First Year
CSE 8A or 11*1
MATH 20A
GE
LDE
CSE 8B*1
MATH 20B
GE
GE
CSE 12
CSE 15L
CSE 20*2
MATH 20C
Second Year
CSE 21*3
CSE 30
CSE General Science
CSE 100
Math 105
CSE General Science
CSE 101
CSE 110
MATH 18
Third Year
CSE 140
CSE 140L
Statistics
Systems/Networks
CSE 141 or 142*2
CSE 141L or 142L*2
Language/Databases
Learning/Vision/Graphics
CSE Elective
Fourth Year
Security/Cryptography
CSE Elective
CSE Elective (CSE 197)
CSE Elective*4
CSE Elective*4
CSE Elective (or Technical Elective) *4
CSE Elective (or Technical Elective)
*1: Students who do not have programming experience should begin with the two-track course: CSE 8A (take CSE 8B in the second quarter). Students who have programming experience may begin with CSE 11 (take CSE 12 and CSE 15L in the second quarter).
*2: CSE 20 may be substituted with MATH 109 or MATH 31CH. This is a manual update an advisor needs to make. Send a message through the Virtual Advising Center (VAC).
*3: CSE 21 may be substituted with MATH 154 or MATH 184. This is a manual update an advisor needs to make. Send a message through the Virtual Advising Center (VAC). *Effective Winter 2023: CSE 21 may be substituted with MATH 154 or MATH 184 or MATH 188*
*4: Students must either take CSE 141 + 141L or CSE 142 + 142L.
*Electives: Students are permitted to take any of these pre-approved courses to fulfill their CSE Electives and Technical Electives requirements. Please note that courses on this list may not automatically populate in the correct area of a student's degree audit. In order to update the audit, please contact the CSE major advisors through the Virtual Advising Center (VAC).
Major restrictions - The following majors may NOT double major or minor in CSE:
- Any majors that fall under the Jacob's School of Engineering
- Data Science majors (DS25)
- Math-Computer Science majors (MA30)
Transfer Students:
Transfer students are in a special situation where the credits they come in with vary vastly from one student to another. To assist transfer students with their long term plans for completing major requirements, we have created different long term plans with different entry points depending on the CSE credits students typically come in with. These plans only include CSE major requirements, for questions regarding your college and university requirements please check with your college.
*These plans only focus on CSE coursework. For a list of all CSE Major requirements (including math and general science courses needed), please see the BS Computer Science Checklist above.
- Incoming Computer Science (CS26) majors with transfer credit for CSE 8A and CSE 20, click here for sample long-term plan.
-
Fall Quarter - Year One
Winter Quarter - Year One
Spring Quarter - Year One
CSE 11
CSE 12
CSE 30
CSE 21
CSE 15L
Systems
Technical Elective
CSE Elective
CSE Elective
Technical Elective
Fall Quarter - Year Two
Winter Quarter - Year Two
Spring Quarter - Year Two
CSE 100
CSE 101
CSE 120/123/124
CSE 140
CSE 130/CSE 132A
CSE 141 or 142
CSE 140L
CSE 110
CSE 141L or 142L
CSE 103/Math 183
CSE Electives
CSE Electives
Fall Quarter - Year Three
CSE 107/127
CSE 150/151/152/158/167
CSE Elective
- Incoming Computer Science (CS26) majors with transfer credit for CSE 11 and CSE 20, click here for sample long-term plan.
-
Fall Quarter - Year One
Winter Quarter - Year One
Spring Quarter - Year One
CSE 12
CSE 30
CSE 100
CSE 15L
CSE 105
CSE 140
CSE 21
Technical Elective
CSE 140L
Technical Elective
CSE Elective
Fall Quarter - Year Two
Winter Quarter - Year Two
Spring Quarter - Year Two
CSE 101
CSE 141 or CSE 142L
CSE 120/123/124
CSE 110
CSE 141L or 142L
CSE 141 or 142
Statistics
CSE 120/123/124
CSE 141L or 142L
CSE Electives
CSE Electives
Fall Quarter - Year Three CSE 107/127
CSE 150/151/152/158/167
CSE Elective
- Incoming Computer Science (CS26) majors with transfer credit for CSE 11, CSE 12 and CSE 20, click here for sample long-term plan.
-
Fall Quarter - Year One
Winter Quarter - Year One
Spring Quarter - Year One
CSE 15L
CSE 100/100R
CSE 101
CSE 21
CSE 105
CSE 110
CSE 30
CSE 140
CSE Elective
CSE 140L
Technical Elective
Fall Quarter - Year Two
Winter Quarter - Year Two
Spring Quarter - Year Two
CSE 120/123/124
CSE 130/132A
CSE 107/127
Statistics
CSE 141 or 142
CSE 150/151/152/158/167
CSE Elective
CSE 141L or 142L
CSE Elective
CSE Elective
Technical Elective
CSE Elective
*1: Students who do not have programming experience should begin with the two-track course: CSE 8A (take CSE 8B in the second quarter). Students who have programming experience may begin with CSE 11 (take CSE 12 and CSE 15L in the second quarter).
*2: CSE 20 may be substituted with MATH 109 or MATH 31CH. This is a manual update an advisor needs to make. Send a message through the Virtual Advising Center (VAC).
*3: CSE 21 may be substituted with MATH 154 or MATH 184. This is a manual update an advisor needs to make. Send a message through the Virtual Advising Center (VAC). *Effective Winter 2023: CSE 21 may be substituted with MATH 154 or MATH 184 or MATH 188*
*4: Open CSE Electives: CSE UD courses, including Special Studies along with any non-CSE courses that have any of the above tags. For a full list of policies and limitations on Open CSE Electives, please visit the CSE Electives website
Major restrictions - The following majors may NOT double major or minor in CSE:
- Any majors that fall under the Jacob's School of Engineering
- Data Science majors (DS25)
- Math-Computer Science majors (MA30)