On Electrical Engineering, Computer engineering, Computer Science, and career choices…

by | November 13, 2019

As a professor, I get a lot of questions from prospective students at open houses, via phone call, or by email about the fields of Computer Science, Computer Engineering, and Electrical Engineering. There is a lot of overlap between these disciplines, and students are often confused, and find it hard to choose among them. So I wanted to offer a first order, and perhaps simplified distinctions between these fields. The easier ones to sort out are Computer Science and Electrical Engineering. You can think of Computer Science as being all about software, so if you don’t like programming, then Computer Science is not for you. If you can’t get enough of programming, go for it (Computer Science!). At the other end of the spectrum, there is Electrical Engineering, which can be thought of as mostly related to hardware and circuit design. But in the case of Electrical Engineering, it is more complicated than that. Topics like microwave, radio, and power systems can be very hardware intensive; while subjects like Control Systems and Digital Signal Processing can entail a great deal of software development, while having a good amount of knowledge about what is happening at the hardware level. The point is that if you are trying to decide between Computer Science, Computer Engineering, and Electrical Engineering, and you dislike software development, go for Electrical Engineering. You may end up developing high power lasers, microwave amplifiers, or sensors. Then there are people that are sort of in the middle. They like to do some level of programming, but they also like to work with hardware and communication networks. Computer Engineering is good for you. You will delve into issues of digital chip design and the software associated with it.

Doing robotics is a good way of exploring Electrical and Computer Engineering, and Computer Science, beyond the obvious Mechanical Engineering content that Robotics has. In reality, when developing any complex systems, you work as part of an interdisciplinary team, and robotics models this process well. That’s why teachers are so fond of using robotics as a technology teaching tool. You could have an Electrical Engineer working on the robot’s power subsystem, a Computer Engineer working on low level drivers for sensors, and a Computer Scientist working on the Artificial Intelligence algorithms that govern the robot’s behavior.

But what if you pick wrong, and then after trying a particular job market you find out that it is not for you. Well, don’t worry about it. In reality, these disciplines have a great deal of synergism and commonality. I studied Electrical Engineering only, but ended up working on the design of digital chips for cell phones, MP3 Players, and Digital Cameras. This was closer to a Computer Engineering job; and in retrospect, I would have gone for Computer Engineering, but it was sort of a new degree when I went to college – Now, it has fully matured. Also, the work I did in grad school with Computer Vision was more like computer science – all software, all 50K lines of C++ code.

Students also worry about other issues, such as, are there jobs? How does globalization affect a particular career? Among other things … To them I say what I told my then 15-year old son. Don’t pick you career, and what you are going to be doing for many years to come based on what CNN is saying today to sell advertising. Half of you will take about five years to earn your Bachelor degree, and it can be a very different world by then than what it is today. Gain a profound understanding of the possibilities and what all disciplines have to offer, and then pick what you are going to put your effort into for the next few years, based on what excites you and what interests you. If you do this, you will be successful, no matter the environment or the competition.

I would love to read what other parents and/or engineers out there think about this topic. Send me your comments.