EE-CS Courses at Stanford

Stanford Computer Science and Electrical Engineering are deeply interrelated disciplines, and numerous faculty members are jointly appointed in the two departments. Many fundamental principles, key technologies and important applications lie at the intersection between the two disciplines.

The intersection of EE and CS is addressed by many courses, including those listed below. We encourage students in both the Stanford Department of Electrical Engineering and the Stanford Department of Computer Science to consider including these courses in their degree programs.

Course Number: Course Name
CS Courses, Stanford ExploreCourses EE Courses, Stanford ExploreCourses
CS 103: Mathematical Foundations of ComputingEE 101A: Circuits I
CS 106A: Programming Methodology EE 101B: Circuits II
CS 106B/ENGR 70B: Programming AbstractionsEE 102A: Signal Processing and Linear Systems I
CS 106X/ENGR 70X: Programming Abstractions (Accelerated)EE 102B: Signal Processing and Linear Systems II
CS 107: Computer Organization and SystemsEE 103: Introduction to Matrix Methods
CS 107E: Computer Systems from the Ground UpEE 108: Digital System Design
CS 108: Object-Oriented Systems DesignEE 109: Digital Systems Design Lab
CS 109: Introduction to Probability for Computer ScientistsEE 168: Introduction to Digital Image Processing 
CS 110: Principles of Computer SystemsEE 179: Analog and Digital Communication Systems
CS 131: Computer Vision: Foundations and ApplicationsEE 180: Digital Systems Architecture
CS 140: Operating Systems and Systems ProgrammingEE 262: Two-Dimensional Imaging
CS 143: CompilersEE 263: Introduction to Linear Dynamical Systems
CS 144: Introduction to Computer NetworkingEE 264: Digital Signal Processing
CS 145: Introduction to DatabasesEE 271: Introduction to VLSI Systems
CS 148: Introduction to Computer Graphics and ImagingEE 273: Digital Systems Engineering
CS 149: Parallel ComputingEE 278: Introduction to Statistical Signal Processing
CS 155: Computer and Network SecurityEE 285/CS 241: Embedded Systems Workshop
CS 194: Software ProjectEE 282: Computer Systems Architecture
CS 194W: Software Project (WIM)EE 364A/CS 334A: Convex Optimization I
CS 221: Artificial Intelligence: Principles and Techniques EE 364B: Convex Optimization II
CS 223A: Introduction to RoboticsEE 368: Digital Image Processing
CS 224N: Natural Language Processing with Deep LearninEE 382C: Interconnection Networks
CS 225A: Experimental RoboticsEE 384A: Internet Routing Protocols and Standards
CS 229: Machine LearningEE 384B: Multimedia Communication over the Internet
CS 231A: Computer Vision: From 3D Reconstruction to RecognitionEE 384C: Wireless Local and Wide Area Networks
CS 231N: Convolutional Neural Networks for Visual RecognitionEE 384S: Performance Engineering of Computer Systems and Networks
CS 241/EE 285: Embedded Systems WorkshopEE 384X: Packet Switch Architectures
CS 244: Advanced Topics in Networking