Electrical and Computer Engineering (ECE) majors play an essential role in the technologies that modern society runs on. The integrated circuits that enable our smart phone and laptop to perform billions of computations per second, and the global network infrastructure connecting us all, are designed by ECE majors. The electrical power grid was, of course, designed by ECE majors, and ECE majors are now working on a range of innovations including LED lighting, power electronics, sensing and control systems to usher in a renewables-based future. The multimedia revolution in digital audio, imagery and video that underlies so many apps that we interact with is driven by ECE majors. The sensing, perception and control systems that underlie automation, including emerging vehicular autonomy systems, count on the expertise of ECE majors. It is no wonder that electrical and computer engineers are sought after both by established companies such as Apple, Intel and SpaceX, and by start-ups leading the next wave of tech disruption.
For students who matriculated before 2024-25 – refer to your year of entry major requirements in the College of Engineering (COE) GEAR publication.
EEs spend their first two years building up a "core" of skills and knowledge covering fundamentals of math, physics, programming, and ECE, which provides them with the solid foundation needed to pursue more specialized topics as well as to be able to effectively collaborate with other scientists and engineers in developing new technologies. Our EE core also includes a variety of courses that expose students to key subfields of ECE, enabling them to make informed choices on which areas to pursue more deeply in junior and senior years.
Learn More about EE Core
The EE core in freshman and sophomore years builds your background in mathematics, physics, and ECE fundamentals, with the latter providing a glimpse of the diverse tracks that you can choose between in your junior and senior years.
These provide the basic grounding in calculus, linear algebra, differential equations and vector calculus required to pursue an engineering degree. Many of our freshmen have AP credits for calculus and end up skipping Math 3A and/or 3B.
These courses provide a background in classical mechanics, thermodynamics, electrostatics, electromagnetics. This material is considered essential background for all ECE majors. You may not need to use it all, but you need this material to have a background broad enough that you have meaningful interactions with other engineers and scientists.
ECE 3 combines an introduction to signal processing with exposure to software implementations in Python. ECE 5 offers hands-on project experience spanning a diversity of areas within ECE on an Arduino platform. ECE 6 is an introduction to the fundamentals and applications of electronic and photonic systems.
ECE 130A introduces fundamental concepts in signals and systems, providing the applied math foundation critical for later ECE courses. ECE 139 provides an introduction to probability and statistical models, again a critical foundation for modern engineering.
CMPSC 9 establishes core concepts such as data structures and object-oriented programming using the Python language. CMPSC 16 introduces basic programming concepts, typically using C++. EE majors are only required to take one of these, and for most students we recommend CMPSC 9.
All EE students are required to either complete ECE 130B or Physics 5, although we strongly suggest that students complete both courses (students that come in with any AP calculus credits will have room in their schedules for both courses in the Spring of sophomore year). ECE 130B is a prerequisite for students wishing to take ECE elective courses in tracks associated with communication, control and signal processing. Physics 5 is a prerequisite for students wishing to take courses in tracks associated with electronics and photonics.
The junior and senior years provide the flexibility to specialize in one or more of the subfields of ECE through additional coursework (9 ECE electives are required), and by exploring research opportunities in faculty labs. In order to build depth in a subfield, your electives must include a depth sequence in a track corresponding to a subfield of ECE. The tracks that we offer are designed to align and evolve to remain at the cutting edge of technology and to benefit from the world-class research expertise of our faculty. You can also craft your own elective tracks, subject to approval from your departmental faculty advisor. Every ECE major also participates in a year-long capstone design project during their senior year. Most capstone projects are directly sponsored by companies or by a research laboratory at UCSB.
Learn More About Tracks and Capstone
In the junior and senior years, students take 9 ECE elective courses, which provides ample flexibility to explore their interests, building on the exposure to the subfields of ECE provided by the EE Core. These electives must include a depth sequence consisting of a series of electives associated with an elective track. Completing the majority of electives in the depth sequence in junior year is recommended, since it enables you to pursue meaningful capstone or research projects in their chosen track during senior year. You may use your remaining ECE electives (remember, you have 9 of them!) to go deeper into the specialization covered by your chosen track, or to broaden into other specializations.
In addition to these ECE electives, all students must take either ECE 153A (Hardware/Software Interface) or ECE 153B (Sensor and Peripheral Interface), in order to provide the hands-on experience needed for most capstone projects. ECE 153B is the preferred choice for the EE tracks listed below, but given the background in embedded systems provided by ECE 153A is also extremely useful in industry, so you should seriously consider taking both courses.
Next, we provide a list of pre-defined tracks, including the associated depth sequences (which include 4 or more electives), together with additional recommended electives for going deeper in the track. In addition to the pre-defined tracks below, you can also craft your own specialization (e.g., on a cross-cutting theme), but you must obtain approval (by the end of the fall quarter of the junior year) from a faculty member in the department that certifies that your course plan includes at least four electives that build depth in your area of interest.
Must complete before entering track: ECE 130B
At least 4 out of the following
ECE 130C (Introduction to Applied Linear Algebra)
ECE 133 (Optimization)
ECE 148 (Signal Processing Applications, particularly Sensing)
ECE 158 (Digital Signal Processing)
ECE 178 (Image & Video Processing)
ECE 180 (Introduction to Deep Learning)
ECE 181 (Computer Vision)
ECE 186 (Probabilistic Machine Learning)
Notes
Students are encouraged to explore courses from adjacent tracks such as Robotics and Control, and Signal Processing and Machine Learning.
Robotics and Control
Must complete before entering track: ECE 130B
At least 4 out of the following
ECE 130C (Introduction to Applied Linear Algebra)
ECE 147A (Feedback Control Systems)
ECE 147B (Digital Control Systems)
ECE 147C (Control System Design Project)
ECE 179D (Introduction to Robotics)
Additional Recommended Electives
ECE 133 (Optimization)
ECE 149 (Game Theory/Multiagent Systems)
ECE 179P (Robotics Motion Planning and Kinematics)
ECE 180 (Intro to Deep Learning)
ECE 181 (Computer Vision)
ECE 183 (Nonlinear Phenomena)
ECE 186 (Probabilistic Machine Learning)
Notes
Students are encouraged to explore electives from adjacent tracks such as Image/Video Processing and Computer Vision, and Signal Processing and Machine Learning.
High Speed, High Frequency Integrated Circuits
Must complete before entering track: Physics 5/5L or PHYS 7D/7L
Required
ECE 132 (Intro to Semiconductor Devices)
ECE 137A (Circuits and Electronics I)
ECE 137B (Circuits and Electronics II)
ECE 145A (Communication Electronics I)
ECE 145B (Communication Electronics II)
Additional Recommended Electives
ECE 144 (Electromagnetic Fields and Waves)
ECE 145C (Communication Electronics III)
Notes
While ECE 130B is not required for this track, it is highly recommended and is also a prerequisite for many upper-division electives that students on this track may wish to take. For their remaining upper-division EE elective courses, students in this track may pursue courses that provide additional depth in semiconductors, electronics/photonics, and circuits (e.g., ECE 144, ECE 142, ECE 136 ABC), and/or semiconductor device fabrication (e.g., ECE 120A/B, ECE 153A), and/or communication theory (ECE146 AB).
Must complete before entering track: ECE 130B
At least 4 out of the following
ECE 130C (Introduction to Applied Linear Algebra)
ECE 146A (Digital Communication Fundamentals)
ECE 146B (Communication Systems Design)
ECE 148 (Signal Processing Applications, particularly Sensing)
ECE 158 (Digital Signal Processing)
Notes
Students are encouraged to explore electives from adjacent tracks such as Image/Video Processing and Computer Vision, Signal Processing and Machine Learning, and Robotics and Control. Of particular interest are ECE 133 (Optimization), ECE 180 (Intro to Deep Learning), and ECE 186 (Probabilistic Machine Learning). Students primarily interested in hardware should consider the Wireless Hardware track.
Must complete before entering track: Physics 5/5L or PHYS 7D/7L
Students must take at least 4 courses from the list below, which includes both core photonics courses and related activities in Materials and Devices
Core Photonics
ECE 132 (Intro to Semiconductor Devices)
ECE 135 (Optical Fiber Communications)
ECE 136A (Introduction to Photonics)
ECE 136B (Optics and Imaging)
ECE 136C (Quantum Photonics)
ECE 144 (Electromagnetic Fields and Waves)
Suggested junior year: 132, 134, and 136A can be taken together in the fall quarter; 144, 136B can be taken in the winter quarter; and 136C & 135 can be taken in the spring quarter.
Related Electives
ECE/MATRL 162A (The Quantum Description of Electronic Materials)
ECE/MATRL 162B (Fundamentals of the Solid State)
ECE 162C (Optoelectronic Materials and Devices)
Notes
Students are encouraged to explore electives from adjacent tracks such as Semiconductors and Integrated Circuits.
Semiconductors and Integrated Circuits
Must complete before entering track: Physics 5/5L or PHYS 7D/7L
Required
ECE 120A (Integrated Circuit Design and Fabrication I)
ECE 120B (Integrated Circuit Design and Fabrication II) OR ECE 137B (Circuits and Electronics II)
ECE 132 (Intro to Semiconductor Devices)
ECE 137A (Circuits and Electronics I)
ECE 142 (Power Electronics)
Additional Recommended Electives
ECE 120B (Integrated Circuit Design and Fabrication II)
ECE 137B (Circuits and Electronics II)
Notes
While ECE 130B is not required for this track, it is highly recommended and is also a prerequisite for many upper-division electives that students on this track may wish to take. For their remaining upper-division EE elective courses, students in this track may pursue courses that provide additional depth in semiconductors, electronics/photonics, and circuits (e.g., ECE 122AB, ECE 135, ECE 144, ECE 145ABC, ECE 136 ABC), and/or take some complementary courses in robotics/controls (e.g., ECE 147ABC, ECE 179D), signal processing and machine learning (e.g., ECE 146AB, ECE 148, ECE 158, ECE 178, ECE 180, ECE 181), or computer engineering (e.g., ECE 150, ECE 153A).
Required
ECE 154A (Introduction to Computer Architecture)
ECE 154B (Advanced Computer Architecture)
At least 2 out of the following
ECE 150 (Mobile Embedded Systems)
* ECE 153A (Hardware/Software Interface)
* ECE 153B (Sensor and Peripheral Interface Design)
Notes
* 153A and 153B do not count as an elective except if both are taken, then one will count as an elective.
Required
ECE 122A or 123 (VLSI Principles, or High Performance Digital Circuit Design)
ECE 122B (VLSI Architecture and Design)
At least 2 out of the following
ECE 132 (Introduction to Solid State Electronic Devices)
ECE 157A (Machine Learning in Design and Test Automation)
ECE 157B (Artificial Intelligence in Design and Test Automation)
At least 4 out of the following:
ECE 133 (Introduction to Optimization and Learning)
ECE 157A (Machine Learning in Design and Test Automation)
ECE 157B (Artificial Intelligence in Design and Test Automation)
ECE 180 (Introduction to Deep Learning)
ECE 181 (Introduction to Computer Vision)
ECE 186 (Probabilistic Machine Learning)