COVID-19 Update: To help students through this crisis, The Princeton Review will extend our “Enroll with Confidence” refund policies to cover students who enroll on or after August 1st. For full details, please click here.


Assuming you haven't been living in a cave or under a rock for the last few decades, you are probably aware that an amazing computer revolution has rapidly changed the way much of the world works. Developments in radio, television, radar, transistors, computers, and robotics have fundamentally altered human life. The field of Computer Engineering is at the epicenter of this development. It encompasses a wide range of topics including operating systems, computer architecture, computer networks, robotics, artificial intelligence, and computer-aided design.

If you major in Computer Engineering, you'll learn all about the hardware and software aspects of computer science. You'll gain a solid understanding of circuit theory and electronic circuits, too. Also, because Computer Engineering is closely linked with Electrical Engineering, the fields are found in the same department at many universities. Consequently, many undergraduate programs incorporate most of the core curricula in both electrical engineering and computer science so graduates will be prepared to work in either field.

Computer Engineering is a difficult major but it's a major that's in demand. Software engineering companies, telecommunications firms, designers of digital hardware, and many other business enterprises hire Computer Engineering majors right out of college and pay them well. Computer Engineering also makes great preparation for medical school, business school, and law school (particularly if you want to specialize in patent law).


  • Calculus

  • Circuit Analysis

  • Computer Programming

  • Data Structures and Algorithms

  • Differential Equations

  • Digital Logic

  • Electromagnetics

  • Fluid and Thermal Engineering

  • Microelectronic Circuits

  • Operating Systems

  • Physics

  • Programming Languages

  • Software Engineering

  • Statics and Dynamics

  • Technical Communication


Math and science courses will be the most important. A very solid background in math and physics is essential if you want to pursue Computer Engineering, as is extensive knowledge of computers and computer programming skills. Take Trigonometry and Calculus (or the highest-level math class that your high school offers). If at all possible, getting a head start in the basics of programming in C will really help you down the road.