Computer Engineering Major

 

NOTE: WITH THE EXCEPTION OF SP20, FA20, WI21 AND SP21, ALL COURSES USED TO SATISFY MAJOR REQUIREMENTS MUST BE TAKEN FOR A LETTER GRADE AND RECEIVE A GRADE OF C- OR BETTER.

ECE P/NP EXCEPTION


Students wishing to pursue the computer engineering curriculum may do so in either the ECE or CSE department. The set of required courses and allowed electives is the same in both departments; please note that the curriculum requires eighteen upper-division courses. The Computer Engineering Program requires a total of 132 units (not including the general-education requirements).

The Computer Engineering Program offers a strong emphasis on engineering mathematics and other basic engineering science as well as a firm grounding in computer science. Students should have sufficient background in high school mathematics so that they can take first-year calculus in their first quarter. Courses in high school physics and computer programming, although helpful, are not required for admission to the program.

CE MAJOR REQUIREMENTS Effective FALL 2024:

Lower-Division Requirements 
(total of sixty units)

Mathematics (twenty units)

MATH-018 and 020A-B-C-D

Physics (twelve units)

PHYS-002A-B-C, or PHYS-004A-B-C. MATH-020A is a prerequisite for PHYS-002A. Students whose performance on the Department of Mathematics placement test permits them to start with MATH-020B or a higher course may take PHYS-002A in the fall quarter of the first year; all others will take PHYS-002A in the winter quarter of the first year. Students who receive high grades in both calculus and physics in high school may substitute the major’s sequence, PHYS-004A-B-C for PHYS-002A-B-C.

Computer Science (sixteen units)

CSE011 or 008B,* CSE-012, CSE-029 or ECE-015, CSE-030 or ECE-030.

*Students without any programming experience are advised to take CSE-008A, and then CSE-008B, instead of CSE-011. CSE-011 is a faster-paced version of CSE-008A and CSE-008B and requires experience in programming with a compiled language.

Electrical Engineering (eight units)

ECE-035, ECE-045

Probability and Statistics (four units)

MATH-011 or ECE-109. If ECE-109 is listed as a prerequisite to a particular course, MATH-011 cannot be used to replace ECE-109.

Upper-Division Requirements 
(total of sixty-four units)

  1. All BS computer engineering students are required to take CSE-140 and CSE-141 or CSE-142.
  2. BS computer engineering students must fulfill the following upper-division ECE requirements: ECE-101, ECE-108, and ECE-111.
  3. CSE or ECE Project Course: Students need to select and complete one course from this list: CSE-118, CSE-145, CSE-147, CSE-148, CSE-170, CSE-176A, CSE-176E, ECE-115, ECE-140B, ECE-144, ECE-191, ECE-196. (four units).
  4. Electives: Ten courses (forty units) must be completed
    • At least forty units of upper-division (or graduate) CSE and ECE courses need to be taken as electives, which includes CSE-100–299 and ECE-100–299. 
    • Maximum of four units of P/NP courses may count among the following: CSE-198, CSE-199, CSE-199H, ECE-197, ECE-198, ECE-199. Beyond CSE/ECE electives, additional units of these courses can count toward the total degree units.
    • Undergraduate students may use CSE or ECE graduate-level courses toward their major requirements but may need a petition if they have taken the equivalent/similar undergraduate course. Undergraduate students must get instructor's permission and departmental approval (EASy request) to enroll in a graduate course.
    • Only eight units of CSE or ECE electives or technical elective courses from departments outside of CSE or ECE may be used to fulfill major requirements.

Open Electives (eight units)

At most eight units of either lower- or upper-division CSE or ECE courses, which includes courses taken for a letter grade among courses CSE-3–199 and/or ECE-5–199.

Notes for Selecting and Scheduling Classes for BS Computer Engineering

(All courses must be taken for a letter grade unless they are offered P/NP only.)

  1. First Programming Course: CSE-011 is a faster-paced version of CSE-008A and CSE-008B. CSE-008B or CSE-011 must be taken before CSE-012.* Students may self-select which course they wish to take. Students without experience in programming in a compiled language are advised to take CSE-008A and then CSE-008B, instead of CSE-011.

For CE major requirements effective prior to fall 2024, click HERE.

 

I was a Computer Engineering major before fall 2023. Am I required to complete ECE-108?

No. You can replace ECE-108 with a CSE or ECE Elective. After you enroll in the replacement course, contact the ECE UG Advisors through the VAC and we can update your degree audit to reflect the substitution.

I switched my major to Computer Engineering in summer 2023. Am I required to complete ECE-108?

No. You can replace ECE-108 with a CSE or ECE Elective. If you applied to switch your major to Computer Engineering at the end of spring 2023 for the summer 2023 admissions cycle, you are not required to complete ECE 108. After you enroll in the replacement course, contact the ECE UG Advisors through the VAC and we can update your degree audit to reflect the substitution.

I switched my major to Computer Engineering in fall 2023, winter 2024, and spring 2024. Am I required to complete ECE-108?

Yes, you are required to complete ECE-108 as it is offered twice a year in fall and spring quarters. If you applied to switch your major to Computer Engineering at the end of summer 2023 for the fall 2023 admissions cycle, you are required to complete ECE-108 regardless of what year you entered UC San Diego. All other students who switched to the CE major in winter 2024 and spring 2024 are also required to complete ECE-108.

I am currently a CE major and I want to switch to the new FA24 curriculum. Am I required to complete ECE-108?

Yes, you are required to complete ECE-108.

I am a CE major who entered UC San Diego before FA24. How can I switch to the new curriculum?

Students interested in switching to the new CE curriculum must fill out their intent to change their degree audit on the link below:

Intent to Switch to the New FA24 CE Curriculum