Guide to Undergraduate Electives in Electrical and Computer Engineering
The clusters of undergraduate courses below are intended to help juniors and seniors in CE and EE choose electives by understanding how courses are thematically related in their concepts, tools, or applications. Students should not view these clusters as “tracks”; rather, they can mix elective courses from different clusters to achieve their academic or professional goals. Indeed, some courses are listed in more than one cluster. Taking courses across multiple clusters will add to the breadth and diversity of knowledge, whereas taking several courses from one cluster will provide depth within that cluster.

Computer Engineering Focus
- Common prerequisites: many CE elective courses require proficiency in the following fundamental courses:
- EK121 Introduction to Programming and Data Science
- EK122 Programming for Engineers
- EK125 Introduction to Programming for Engineers*
- EK307 Electric Circuits
- EC311 Introduction to Logic Design
- EC327 Introduction to Software Engineering
- EC330 Applied Algorithms and Data Structures for Engineers
- EC413 Computer Organization
*Until (including) class of 2026. Replaced by EK121 & 122 starting class of 2027.
Hardware Design
This group of courses focuses on designing the processing and memory hardware of computing systems including servers that are deployed in data centers/cloud, hand-held/mobile devices, and sensor systems. The concepts, tools, and applications in these courses are relevant to industries such as semiconductor chips, Internet-of-Things, augmented/virtual reality, mobile computing, cloud computing, autonomous systems, and biomedical systems
Software
This group of courses focuses on the design and efficient implementation of software at various scales, from low-level drivers to smartphone applications to cloud-based web applications. This group also includes the study of algorithms and data structures and software-based tools and frameworks such as databases and networking.
Cybersecurity
This group of courses focuses on the security of systems. Indeed, cybersecurity applies to systems across all levels of abstraction, from hardware, over operating systems, to software that powers modern clouds or mobile applications, and finally to the weakest link – humans. It also includes building secure systems (by design), analyzing systems for security deficiencies (bugs and vulnerabilities), and rectifying identified deficiencies.
Systems
This group of courses focuses on the design, implementation, and evaluation of software and hardware systems at various scales from embedded edge devices to connected and cloud computing distributed across multiple data centers. Depending on student focus, it may make sense to combine with elements of cybersecurity, software engineering, and hardware design.

Electrical Engineering Focus
- Common prerequisites: most elective EE courses require proficiency in the following fundamental courses:
- EK 103 Computational Linear Algebra
- EK121 Introduction to Programming and Data Science
- EK122 Programming for Engineers
- EK125 Introduction to Programming for Engineers*
- EK 307 Electric Circuits
- EK 381 Probability, Statistics, and Data Science for Engineers
- MA 225 Multivariate Calculus
- Although not essential, students who wish to gain a deep and thorough preparation for a career related to the Signals, Imaging, and Vision cluster or the Artificial Intelligence and Machine Learning cluster should strongly consider taking EC 327 (Introduction to Software Engineering) and EC 330 (Applied Algorithms and Data Structures for Engineers).
*Until (including) class of 2026. Replaced by EK121 & 122 starting class of 2027.
Signals, Imaging and Vision
This group of courses pertains to the acquisition, analysis, and transformation of a variety of signals such as audio; medical time series such as ECG and EEG; 2D grayscale, color and hyperspectral images; 3D volumetric images such as ultrasound and x-ray CT; and video. The concepts, tools, and applications in these courses are relevant to industries such as augmented and virtual reality; telepresence and audiovisual communication; autonomous navigation; and medical imaging and devices.
Robotics and Autonomous Dynamical Systems
This group of courses pertains to the analysis and design of adaptive systems that stabilize and optimize the performance of dynamically evolving phenomena. The concepts, tools, and applications covered in these courses are relevant to industries such as robotics & automation; automobiles; drone, airline, and space aviation; power generation; defense; and chemical & pharmaceutical industries.
Communications and Networks
This group of courses pertains to the efficient and reliable representation and transmission of information over a noisy medium, such as a wireless channel or a fiber-optic cable. It also explores how many users can efficiently share resources in a communications network via clever signal and protocol design. The concepts, tools, and applications covered in these courses are relevant to industries such as cellular and internet service providers, modem and base station manufacturers, data compression, and cloud and networked storage providers.
Artificial Intelligence and Machine Learning
This group of courses pertains to the design and analysis of efficient and robust algorithms and automated systems that can learn latent patterns in observed data and make accurate predictions of expected behavior on unobserved data or synthesize realistic new data. The concepts, tools, and applications covered in these courses are relevant to an expanding set of industries such as internet search and recommender systems, logistics, finance, medical diagnostics, drug discovery, cybersecurity, graphics, gaming, and robotics.
Optical Imaging and Sensing
This group of courses pertains to the detection, analysis, and generation of optical and electrical signals for imaging, sensing, and biomedical applications. The concepts, tools, and techniques acquired in these courses are relevant to advanced imaging technology and industries such as augmented and virtual reality, medical imaging and integrated devices for surveillance and security, as well as the development of optical instrumentation.
Photonics and Quantum Engineering
This group of courses focus on the physics and engineering of light-matter interactions for quantum photonic systems and devices such as integrated lasers, semiconductor devices, nanotechnology systems and quantum coherent devices for information processing, sensing, and quantum communication. The concepts, tools, and applications in these courses are relevant to semiconductors industries as well as communications, defense, emerging quantum technology sectors and medical imaging and devices. Students should take at least one course from each of the two categories below.
Quantum Engineering of Photonics Devices
Quantum Engineering of Semiconductors Devices
Energy and Sustainability
This group of courses prepares the students to a career in the science and technology of energy sustainability, renewable and alternative energy sources, with focus on the technology of efficient devices and systems for energy conversion, distribution, and storage. The concepts, tools, and applications in these courses provide a rigorous engineering foundation for a career in industries focused on emerging technologies for alternative, sustainable, and renewable energy sectors.