Computer Engineering, BSE
Computer Engineering is the discipline that designs and engineers computer systems from digital circuits, through compilers and runtime systems, to networking and world-wide distributed systems. As an engineering discipline, the computer engineer must appreciate the physical aspects of computations (energy, delay, area, reliability, costs) and be able to expertly navigate the multidimensional tradeoff space associated with implementing computations. Since today’s high performance programmable computing devices mean enormous computational tasks can be performed entirely in software, the computer engineer must manage computational capabilities and functionalities which migrate between hardware and software driven by advancing technology and these engineering tradeoffs. Recent advances in manufacturing make it economical to construct systems containing billions of components and millions of lines of code, and these systems are increasingly invaluable in life-critical and real-time systems; computer engineering is the discipline that seeks to understand how to design and manage systems of this complexity while providing adequate guarantees of safety and trustworthiness for such systems.
For more information: https://www.seas.upenn.edu/prospective-students/undergrad/majors/computer-engineering/
Computer Engineering (CMPE) Major Requirements
Code | Title | Course Units |
---|---|---|
Engineering | ||
ESE 1110 | Atoms, Bits, Circuits and Systems | 1 |
or ESE 3600 | TinyML: Tiny Machine Learning for Embedded Systems | |
CIS 1100 | Introduction to Computer Programming | 1 |
CIS 1200 | Programming Languages and Techniques I | 1 |
CIS 1210 | Programming Languages and Techniques II | 1 |
ESE 2150 | Electrical Circuits and Systems | 1.5 |
CIS 2400 | Introduction to Computer Systems | 1 |
ESE 3500 | Embedded Systems/Microcontroller Laboratory | 1.5 |
ESE 3700 | Circuit-Level Modeling, Design, and Optimization for Digital Systems | 1 |
CIS 4480 | Operating Systems Design and Implementation | 1 |
or CIS 5480 | Operating Systems Design and Implementation | |
CIS 4710 | Computer Organization and Design | 1 |
or CIS 5710 | Computer Organization and Design | |
Intermediate CIS or ESE Elective | ||
Select 1 CU of 2000+ level CIS or ESE engineering courses | 1 | |
Advanced CIS or ESE Electives | ||
Select 2 CUs of 3000+ level CIS or ESE engineering courses | 2 | |
Senior Design | ||
CIS 4000 | Senior Project | 1 |
or ESE 4500 | Senior Design Project I - EE and SSE | |
CIS 4010 | Senior Project | 1 |
or ESE 4510 | Senior Design Project II - EE and SSE | |
Math and Natural Science | ||
MATH 1400 | Calculus, Part I | 1 |
MATH 1410 | Calculus, Part II | 1 |
or MATH 1610 | Honors Calculus | |
MATH 2400 | Calculus, Part III 1 | 1 |
or MATH 2600 | Honors Calculus, Part II | |
or ESE 2030 | Linear Algebra with Applications to Engineering and AI | |
ESE 3010 | Engineering Probability | 1 |
or CIS 2610 | Discrete Probability, Stochastic Processes, and Statistical Inference | |
or STAT 4300 | Probability | |
CIS 1600 | Mathematical Foundations of Computer Science | 1 |
MEAM 1100 | Introduction to Mechanics | 1 |
or PHYS 0140 | Principles of Physics I (without laboratory) | |
or PHYS 0150 | Principles of Physics I: Mechanics and Wave Motion | |
or PHYS 0170 | Honors Physics I: Mechanics and Wave Motion | |
ESE 1120 | Engineering Electromagnetics | 1.5 |
CHEM 1012 | General Chemistry I | 1 |
or EAS 0091 | Chemistry Advanced Placement/International Baccalaureate Credit (Engineering Students Only) | |
or BIOL 1101 | Introduction to Biology A | |
or BIOL 1121 | Introduction to Biology - The Molecular Biology of Life | |
or PHYS 1240 | Principles of Physics IV: Modern Physics (without laboratory) | |
Math or Natural Science Elective | 1 | |
Natural Science Lab (if applicable) 2 | .5 | |
Professional Electives 3 | ||
Math, Natural Science, or Engineering Electives | 2 | |
Select one of the following: | 1 | |
Math, Science, or Engineering Elective | ||
Engineering Economics | ||
Engineering Entrepreneurship I | ||
Foundations of Leadership | ||
Management of Technology | ||
Scaling Operations in Technology Ventures: Linking Strategy and Execution | ||
General Electives | ||
LAWM 5060 | ML: Technology Law 4 | 1 |
or EAS 2030 | Engineering Ethics | |
or CIS 4230 | Ethical Algorithm Design | |
or CIS 5230 | Ethical Algorithm Design | |
Select 4 Social Science or Humanities courses 5 | 4 | |
Select 2 Social Science, Humanities, or Technology in Business & Society courses | 2 | |
Free Elective | 1 | |
Total Course Units | 37 |
- 1
If MATH 2400 is taken, ESE 2030 will not count. If ESE 2030 is taken, MATH 2400 will not count.
- 2
If BIOL 1121, CHEM 1012, EAS 0091, MEAM 1100 or PHYS 0140 are taken, choose one natural science lab from the list: BIOL 1124, CHEM 1101, MEAM 1470, PHYS 0050 or another department approved Natural Science lab.
- 3
At most, two freshman-level Engineering courses may be used as a Professional Elective.
- 4
Only the "Technology Law and Ethics" section satisfies the Engineering Ethics requirement.
- 5
Must include a Writing Seminar (a list of approved Writing Seminars can be found in the SEAS Undergraduate Handbook)
The degree and major requirements displayed are intended as a guide for students entering in the Fall of 2025 and later. Students should consult with their academic program regarding final certifications and requirements for graduation.
AI & Robotics
Code | Title | Course Units |
---|---|---|
AI & Robotics Concentration | ||
Select 4 courses: | 4 | |
Big Data Analytics | ||
Applied Machine Learning | ||
or CIS 5200 | Machine Learning | |
Natural Language Processing | ||
Computer Vision & Computational Photography | ||
Artificial Intelligence | ||
GPU Programming and Architecture | ||
Artificial Intelligence Lab: Data, Systems, and Decisions | ||
Signal and Information Processing | ||
Deep Learning: A Hands-on Introduction | ||
TinyML: Tiny Machine Learning for Embedded Systems | ||
Control For Autonomous Robots | ||
Feedback Control Design and Analysis | ||
Hardware/Software Co-Design for Machine Learning | ||
F1/10 Autonomous Racing Cars | ||
Learning in Robotics | ||
Introduction to Robotics | ||
Total Course Units | 4 |
CHIPs
Code | Title | Course Units |
---|---|---|
CHIPs Concentration | ||
Select 4 courses: | 4 | |
Fundamentals of Solid-State Circuits | ||
Analog Integrated Circuits | ||
Chips-design * | ||
Chips-measurements | ||
System-on-a-Chip Architecture | ||
RFIC (Radio Frequency Integrated Circuit) Design | ||
Power Electronics | ||
Mixed Signal Circuit Design and Modeling | ||
Advanced Topics in Computer Architecture | ||
Total Course Units | 4 |
- *
Students who take ESE 4730/5730 must take ESE 4750/5750.
Networking & Distributed Systems
Code | Title | Course Units |
---|---|---|
Networking and Distributed Systems Concentration | ||
Select 4 courses: | 4 | |
Scalable and Cloud Computing | ||
Introduction to Networks and Protocols | ||
or CIS 5530 | Networked Systems | |
Datacenter Architecture | ||
Internet and Web Systems | ||
Software Systems | ||
Total Course Units | 4 |
Security and Safety
Code | Title | Course Units |
---|---|---|
Security and Safety Concentration | ||
Select 4 courses: | 4 | |
Introduction to Blockchain | ||
Embedded Software for Life-Critical Applications | ||
Computer and Network Security | ||
Software Analysis | ||
Cryptography | ||
Hardware Security | ||
Total Course Units | 4 |