Our department offers two majors: Computer Science (CS) or Computer Science and Engineering (CSE), two minors: Computer Science and Computational Biology. The CS department is highly impacted resulting in long waitlists for critical major courses. Please keep this in mind and be flexible with your course planning.
First-Year ECS Course Placement
- ECS 32/34 Series vs. ECS 36 Series
All CS/CSE majors are required to complete one of the following introductory programming series in its entirety:
1) ECS 36 Series
- ECS 32A - Introduction to Programming (needed for students who did not pass the CS Placement Exam)
- ECS 36A - Programming & Problem Solving
- ECS 36B - Software Development & Object-Oriented Programming in C++
- ECS 36C - Data Structures, Algorithms, & Programming
The ECS 36 series is recommended for students declared in the CS/CSE major. The ECS 36 series is only open to CS/CSE majors. The courses can also be completed at a California Community College. Review Assist to identify articulated courses and review our Transferring Courses webpage for information on how to transfer your credit.
2) ECS 32/34 Series
- ECS 32A - Introduction to Programming
- ECS 32B - Introduction to Data Structures
- ECS 32C - Implementation of Data Structures in C (only offered in fall quarters)
- ECS 34 - Software Development in UNIX & C/C++ (only offered in winter quarters)
The ECS 32/34 series is recommended for non-majors, CS minors, or those interested in changing to the CS/CSE major. Declared CS/CSE majors should not complete the 32/34 series. The ECS 32/34 series is open to all undergraduates during pass 1 registration.
Once you have completed the B course in a series, you cannot switch to the other series. Due to credit limitations, you must finish the series you started. You cannot receive credit for courses in both series. Review the ECS courses webpage for credit limitation information.Computer Science Placement Exam
The Computer Science Placement Exam determines your level of programming skill. You should only take the exam if your major requires you to take ECS 36A.
You must meet one of the following requirements to enroll in ECS 36A:♦ Computer Science Placement Exam Score of 15 or better
♦ C- or better in ECS 32A
♦ C- or better in ECS 10
A prerequisite petition will be needed at the time of registration for students using ECS 10 or the placement exam to enroll in ECS 36A. Students enrolled in ECS 36A without satisfying the prerequisite requirements will be administratively dropped from the course by the Computer Science Department on the first day of instruction.
The Computer Science Placement Examination is only available online. There will be one testing window per year and a student may only take it once per testing window. As with any exam, if you need special accommodations due to a disability, please contact the UC Davis Student Disabilities Center.
Visit our placement exam webpage for more information.
Internship/Research Information
- ECS 192: Internship in Computer Science
- Students interested in earning course credit for an internship can request to enroll in ECS 192.
- A maximum of one ECS 192 or 199 course may be counted towards a computer science elective for CS majors, CSE majors, and CS minors
- Work credit is for the quarter the work is being completed in. No retroactive credit will be given.
- The deadline for proposals to be accepted is the 10th day of instruction for quarters, and the 5th day of instruction for summer sessions.The instructions for applying for 192 and 199 courses can be found on Professor Christopher Nitta’s webpage. Please read ALL instructions.
- International Students Interested in ECS 192
- International students must complete a CPT form with SISS in order to work at an internship site. You must be enrolled in ECS 192 in order for a CS advisor to sign off on your CPT. If you are not enrolled in the course, please enroll first and then send the form to our office. CPT forms can be submitted via email for advisor review.
Advisor information to include in your form -- - Advisor Name: CS UG Advising
- - Advisor Email: csugadvising@ucdavis.edu
Do not send your iGlobal form to a specific CS advisor's email as the form can get easily lost in their email. Always send forms to the CS UG advising email for the quickest turn around time.
- ECS 199: Research in Computer Science
- Students interested in earning course credit for research can request to enroll in ECS 199.
- A computer science instructor must be willing to support the intended research. Instructors outside of the CS department who are part of the Graduate Group in Computer Science (GGCS) can also oversee the intended research.
- Students doing CS-related research with faculty outside of CS & GGCS can request ECS 192 credit instead.
- A maximum of one ECS 192 or 199 course may be counted towards a computer science elective for CS majors, CSE majors, and CS minors
- Work credit is for the quarter the work is being completed in. No retroactive credit will be given.
- The deadline for proposals to be accepted is the 10th day of instruction for quarters, and the 5th day of instruction for summer sessions.The instructions for applying for 192 and 199 courses can be found on Professor Christopher Nitta’s webpage. Please read ALL instructions
Computer Science
L&S Degree Requirements
COE Degree Requirements
Major Checklist (PDF)
GE Worksheet (PDF)
UCD Catalog
4-Year Sample Plan (Excel - customizable)
4-Year Sample Plan (PDF)
Major Map (PDF)
- CS Major Description
- The Computer Science (CS) major is designed to prepare students for careers involving the design of computer systems and their application to science, industry and management. Students taking this major receive solid grounding in fundamentals of computer languages, operating systems, and the formal mathematical tools required to use the computer in solving complex tasks. Emphasis in this major is on software, although introductory architecture is included. The computer science program prepares students for work in industry or postgraduate study.
- Eligibility to Declare CS Major (current UCD students)
- Minimum UC GPA required: 3.0 - no exceptions
A C- or better and a cumulative GPA of a 3.0 or higher required in the following courses:
- MAT 21A
- MAT 21B
- ECS 20
- One of the following series options:
a) ECS 36A and ECS 36B, ECS 36C - ECS 36 series is not open to non-majors
b) ECS 32A, ECS 32B, ECS 32C (offered in fall quarters only), and ECS 34 (offered in winter quarters only)
Additional Requirements:
- 2.0 UC GPA in all other completed engineering courses
- 2.0 GPA in all completed MAT, PHY, BIS, and CHE courses required for CS major
- No grade lower than a C- in any courses required for CS major
- Good academic standing
- Completed at least one quarter (12 units) at UCD
- Completed less than 135 cumulative units (excluding AP units)
- Received a letter grade (no P/NP) for all courses that satisfy engineering degree requirements
Transfers: must meet transfer admissions requirements in addition to the requirements listed above.
Important Notes:
Transfer credit counts for eligibility purposes. While only UC grades will count in your UC GPA, the courses from other institutions will satisfy the requirements to declare as long as they are articulated courses via Assist. Community colleges only offer lower division courses. Lower division courses are courses numbered 0-99. Prospective transfers students should refer to requirements set by Admissions. - Declaring CS as a Second Major
- Minimum UC GPA required: 3.0 - no exceptions
A C- or better and a cumulative GPA of a 3.0 or higher required in the following courses:
- MAT 21A
- MAT 21B
- ECS 20
- One of the following series options:
a) ECS 36A, ECS 36B, ECS 36C - ECS 36 series is not open to non-majors
b) ECS 32A, ECS 32B, ECS 32C (offered in fall quarters only), and ECS 34 (offered in winter quarters only)
Additional Requirements:
- 2.0 UC GPA in all other completed engineering courses
- 2.0 GPA in all completed MAT, PHY, BIS, and CHE courses required for CS major
- No grade lower than a C- in any courses required for CS major
- Good academic standing
- Completed at least one quarter (12 units) at UCD
- Completed less than 135 cumulative units (excluding AP units)
- Received a letter grade (no P/NP) for all courses that satisfy engineering degree requirements
Transfers: must meet transfer admissions requirements in addition to the requirements listed above.
Double Majors Not Allowed:
- Data Science
- Computer Science & Engineering
- Electrical Engineering (not being reviewed at this time - pending final decision)
- Computer Engineering (not being reviewed at this time - pending final decision) - Composition Requirement for CS Majors
- All undergraduates must fulfill a two-course writing requirement, by completing each course with a grade of C- (or P) or higher. More information about the requirement can be found on the UWP website.
Lower Division Composition Options for all CS majors:
- COM 1, 2, 3, or 4
- ENL 3
- NAS 5
- UWP 1
Upper Division Composition Options for CS majors in the College of Letters & Science:
- ANT 170 (effective Winter 2024)
- COM 139, 146, or 166A (all effective Fall 2023)
- ENL 110A (effective Winter 2024), 110B, 117, 133, 150A, 166, 180 (remaining courses effective Fall 2023)
- UWP 101/101V/101Y
- UWP 102
- UWP 104
- PHY 122, 157 (effective Winter 2024)
Upper Division Composition Options for CS majors in the College of Engineering:
- UWP 101/101V/101Y
- UWP 102
- UWP 104 - Pass/No Pass Grade Policy
CS Majors in the College of Letters & Science: The CS department has no policies against taking major courses with P/NP grading. Students are free to elect a P/NP grading option for their major courses. However, students are still subject to the P/NP policy outlined in the College Unit Requirements set by the College of Letters & Science.
CS Majors in the College of Engineering: The College of Engineering does not allow major courses to be taken as P/NP. Please refer to the EUO Policy webpage for more information.
All questions regarding P/NP policy, regardless of which college you are in, should be referred to the Engineering Undergraduate Office (EUO).
How to check which college you are in:
- Log in to OASIS
- Look in the bar at the top of your OASIS. It should be gold if you are an active student, and contain your picture, name, student ID, etc.
- Find your major information.
-Students in the College of Letters and Science should see "Computer Science (LS, BS)" listed. If you hover your cursor over LS, Letters and Science should appear.-Students in the College of Engineering should see "Computer Science (EN, BS) listed. If you hover your cursor over EN, Engineering should appear.
Computer Science & Engineering
COE Degree Requirements
Major Checklist (PDF)
GE Worksheet (PDF)
UCD Catalog
4-Year Sample Plan (Excel - customizable)
4-Year Sample Plan (PDF)
Major Map (PDF)
- CSE Major Description
- The Computer Science and Engineering (CSE) major encompasses the organization, design, analysis, theory, programming, and application of digital computers and computing systems. A key theme of this curriculum is the hardware/software interaction in computer systems design, a theme reflected in the balance between computer hardware and computer software aspects in the course requirements. The CSE major also requires additional General Education electives, helping to develop the verbal skills and intellectual breadth demanded by employers. The Computer Science and Engineering program prepares students to do further work in hardware, software, or electronics, either in industry or in postgraduate study.
- Eligibility to Declare CSE Major (current UCD students)
- Minimum UC GPA required: 3.0 - no exceptions
A C- or better and a cumulative GPA of a 3.0 or higher required in the following courses:
- MAT 21A
- MAT 21B
- MAT 21C
- PHY 9A
- CHE 2A
- ECS 20
- One of the following series options:
a) ECS 36A, ECS 36B, ECS 36C - ECS 36 series is not open to non-majors
b) ECS 32A, ECS 32B, ECS 32C (offered in fall quarters only), and ECS 34 (offered in winter quarters only)
Additional Requirements:
- 2.0 UC GPA in all other completed engineering courses
- 2.0 GPA in all completed MAT, PHY, and CHE courses required for CSE major
- No grade lower than a C- in any courses required for CSE major
- Good academic standing
- Completed at least one quarter (12 units) at UCD
- Completed less than 135 cumulative units (excluding AP units)
- Received a letter grade (no P/NP) for all courses that satisfy engineering degree requirements
Transfers: must meet transfer admissions requirements in addition to the requirements listed above.
Important Notes:
Transfer credit counts for eligibility purposes. While only UC grades will count in your UC GPA, the courses from other institutions will satisfy the requirements to declare as long as they are articulated courses via Assist. Community colleges only offer lower division courses. Lower division courses are courses numbered 0-99. Prospective transfers students should refer to requirements set by Admissions. - Declaring CSE as a Second Major
- Minimum UC GPA required: 3.0 - no exceptions
A C- or better and a cumulative GPA of a 3.0 or higher required in the following courses:
- MAT 21A
- MAT 21B
- MAT 21C
- PHY 9A
- CHE 2A
- ECS 20
- One of the following series options:
a) ECS 36A, ECS 36B, and ECS 36C - ECS 36 series is not open to non-majors
b) ECS 32A, ECS 32B, ECS 32C (offered in fall quarters only), and ECS 34 (offered in winter quarters only)
Additional Requirements:
- 2.0 UC GPA in all completed engineering courses
- 2.0 GPA in all completed MAT, PHY, and CHE courses required for CSE major
- No grade lower than a C- in any courses required for CSE major
- Good academic standing
- Completed at least one quarter (12 units) at UCD
- Completed less than 135 cumulative units (excluding AP units)
- Received a letter grade (no P/NP) for all courses that satisfy engineering degree requirements
Important Notes:
Students may not overlap more than 20% or upper-division coursework between any two majors. Triple (and more) majors will not be approved.
Double Majors Not Allowed:
- Computer Science
- Electrical Engineering
- Computer Engineering
- Data Science - Pass/No Pass Grade Policy
- The College of Engineering does not allow major courses to be taken as P/NP. Questions regarding P/NP should be referred to EUO. Please refer to the EUO Policy webpage for more information.