Comparing Undergraduate Computer Engineering Programs at Different Schools

            All schools like to claim their programs are far superior than the programs of their contemporaries and it is a major draw of many students to a particular school. However, I am a natural skeptic when it comes to this type of thing so I decided to take a look at the Computer Engineering programs of some notable universities in both the United States and around the world in order to compare it to mine. I only looked at the Computer Engineering classes students were required to take as each school has a different sequence of general education classes that cannot be directly compared to each other. I also excluded those classes that lay the foundation of engineering classes such as physics and calculus due to every school requiring them and I did not want to get carpel tunnel trying to type it that many times. However, this should be a comprehensive overview of the basic classes every electrical engineer should take in order to earn the degree without including technical electives because once again those are specific to the school and not every CPE will take the same classes due to having different interests. Although this is not a full list of every University it provides an adequate overview of the classes you should expect to take in the pursuit of a Computer Engineering degree.

 

Class List from Michigan Tech In order of class taken

First we are starting out at my university because I am most familiar with this program and am just a little biased towards it. If you look at it you will notice it is a heavy set of classes and will see many similarities to other universities.

  1. CS 1121- intro to programming 1
  2. intro to programming 2
  3. EE 1110- Essential Math for EE
  4. EE 1111- ECE 1.0
  5. EE 2111- Electrical Circuits 1
  6. EE 2174- Digital Logic and Lab
  7.  CS 1142- Programming at H/S interface
  8. CS 2311 Discrete Structures
  9. EE 2112 Circuits 2 and Lab
  10. CS 2321 Data Structures
  11. EE 3160/CS 3331- Signals and Systems or Concurrent Programming
  12. EE 3131- Electronics and Lab
  13. CS 3421- Computer org
  14. EE 3901- Design Fundamentals
  15. EE 3173- H/S Integration
  16. CS 3411 Systems Programming
  17. CS 4321- Intro to Algorithms
  18. EE 4173- Computer Systems Engineering and Performance
  19. EE 4272- Computer Networks
  20. Tech Electives

Class list from other Universities

Moving on from my university we will take a look at other Universities from around the world including some of the top universities both domestic to the United States and abroad.

  1. University of Michigan
    1. EECS 215- Introduction to Circuits
    2. EECS 216- Signal and Systems
    3. EECS 270- Intro to Logic Design
    4. EECS 203- Discrete Mathematics
    5. EECS 280- Programming and Elem. Data Structures
    6. EECS 301- Probabilistic methods in EE
    7. EECS 370- Intro to Computer Organization
    8. Take 2
      1. EECS 312- Digital Integrated Circuits
      2. EECS 351- Digital Signal processing and analysis
      3. EECS 373- design of microprocessor based systems
      4. EECS 281- Information systems design and programming
    9. Take 3
      1. EECS 427- VLSI
      2. ECS 452- Digital Signal Processing Design Lab
      3. EECS 461- Embedded Control Systems
      4. EECS 478- Logic Circuit Synthesis and Optimization
      5. EECS 442-Computer Vision
      6. EECS 489- Computer Networks
  1. University of California- Los Angeles
    1. Computer Science 1 (Freshman Computer Science Seminar) or Electrical and Computer Engineering 1
    2. Computer Science 31 — Introduction to Computer Science I
    3. Computer Science 32 — Introduction to Computer Science II
    4. Computer Science 33 — Introduction to Computer Organization
    5. Engineering 96C — Introduction to Engineering Design: Internet of Things
    6. Electrical and Computer Engineering 3 — Introduction to Electrical Engineering
    7. Computer Science 35L — Software Construction Laboratory
    8. Computer Science M51A or Electrical and Computer Engineering M16 — Logic Design of Digital Systems
    9. Electrical and Computer Engineering 100 — Electrical and Electronic Circuits
    10. Electrical and Computer Engineering 102 — Systems and Signals
    11. Computer Science 111 — Operating Systems Principles
    12. Computer Science 118 (Computer Network Fundamentals) or Electrical and Computer Engineering 132B (Data Communications and Telecommunication Networks)
    13. Computer Science M152A or Electrical and Computer Engineering M116L — Introductory Digital Design Laboratory
    14. Computer Science 180 — Introduction to Algorithms and Complexity
    15. Electrical and Computer Engineering 115C — Digital Electronic Circuits
    16. Computer Science M151B or Electrical and Computer Engineering M116C — Computer Systems Architecture
    17. Technical Electives
  1. Georgia Institute of Technology
    1. ECE 2026Intro Signal Processing
    2. ECE 2031 Digital Design Lab
    3. ECE 2035 Programming HW/SW System
    4. ECE 2036 Engr Software Design
    5. ECE 2040 Circuit Analysis
    6. ECE 3020 Math Foundations of CmpE
    7. ECE 3030 Physical Foundations CmpE
    8. ECE 3056 Comp Arch, Concurr, Energy
    9. ECE 4011 ECE Culminating Design 1
    10. ECE 4012 ECE Culminating Design 2
    11. Tech Electives
  1. University of Pennsylvania
    1. CIS 120- Programming Languages and Techniques I
    2. CIS 121  Programming Languages and Techniques II
    3. ESE 150  Digital Audio Basics
    4. ESE 215  Electrical Circuits and Systems
    5. CIS 240  Introduction to Computer Systems
    6. ESE 350  Embedded Systems/Microcontroller Laboratory
    7. CIS 350  Software Design/Engineering
    8. ESE 370  Circuit-Level Modeling, Design, and Optimization for Digital Systems
    9. CIS 371  Computer Organization and Design
    10. CIS 380  Computer Operating Systems
    11. CIS 441  Embedded Software for Life-Critical Applications
    12. ESE 407  Introduction to Networks and Protocols
    13. ESE 532  System-on-a-Chip Architecture
    14. Tech Electives
    15. Senior Design
  1. University of Texas- Austin
    1. Same as Electrical 
    2. EE 302, Intro to Electrical and Computer Engineering
    3. EE 306, Introduction to Computing
    4. EE 319K, Introduction to Embedded Systems
    5. EE 411, Circuit Theory
    6. EE 313, Linear Systems and Signals
    7. EE 312, Software Design Implementation I
    8. EE 312, Software Design Implementation I
    9. EE 351K, Probability and Random Processes
    10. EE 333T, Engineering Communications*
    11. EE 364D, Introduction to Engineering Design
    12. EE 464R/K/H/C/G, Senior Design Project

Abroad

Not many universities abroad offer a direct Computer Engineering degree. That isn’t to say you cant get one its just not offered directly. Many schools bundle a computer engineering degree with Electrical Engineering or Computer Science.

  1. National University of Singapore
  1. CS1010Programming Methodology
  2. CS2040CData Structures and Algorithms
  3. CS2113TSoftware Engineering & Object-Oriented Programming 1
  4. CG2271Real-time Operating System
  5. CG2027Transistor-level Digital Circuits
  6. EE2026Digital Design
  7. CG2028Computer Organization
  8. EE4204Computer Networks
  9. CG2023Signals & Systems
  10. CG1111Engineering Principles and Practice I (Computer Engineering)
  11. CG1112Engineering Principles and Practice II (Computer Engineering)
  12. CG4002Computer Engineering Capstone Project
  1. Nanyang Technological University
    1. CE1003 Introduction to Computational Thinking
    2. CE1013 Physics for Computing
    3. CE1005 Digital Logic
    4. HW0188^ Engineering Communication I  
    5. CE1006 Computer Organisation and Architecture
    6. CE1007 Data Structures
    7. CE1015 Introduction to Data Science and Artificial Intelligence G
    8. CE2001 Algorithms
    9. CE2002 Object Oriented Design & Programming
    10. CE2004 Circuits and Signal Analysis
    11. CE2005 Operating Systems
    12. CE2007 Microprocessor‐based Systems Design
    13. CE2003 Digital Systems Design
    14. CE2006 Software Engineering
    15. CE3001 Advanced Computer Architecture
    16. CE3002 Sensors, Interfacing and Control
    17. CE3003 Microcontroller Programming
    18. CE3004 Multidisciplinary Design Project
    19. CE3005 Computer Networks
    20. CE3006 Digital Communications
    21. CE3007 Digital Signal Processing
    22. Tech Electives
    23. Senior Design

 

            As you can see the programs at the different universities aren’t to different after all with almost all of the classes at one university being taught at the other universities. This isn’t to say that the classes are all taught in the same way or have the exact same content in them. In fact I know at the University of Michigan there is much more theory emphasized in the classes than in Michigan Tech where there is a focus on application of theory through lab work. Each university has its own way of teaching and doing things which will suit different people better than others, however, when selecting the university select the teaching style that is best for you because the Computer Engineering program isn’t terribly different. That is unless you go abroad where the classes will be the same but the degree you will receive will be different as they tend not to offer Computer Engineering directly.

Sources:

All of my information came directly from the university websites and information about their programs.