Computer Engineering Vs. Computer Science

I’m a rising senior in high school and I am interested in pursuing a major in computer engineering or computer science. I have taken several engineering courses at school and I really enjoyed them, but I really like computer programming as well. That’s why I thought computer engineering might be a good fit for me.

But, I am more interested in computer programming than building computers themselves, so I’m contemplating whether computer science will be better for me. I would like to get a job in the future as maybe a software developer, but I would still like to have other options. So my question is, would majoring in computer engineering give me less opportunities to get software engineering/programming jobs than majoring in computer science?

It probably will give you slightly less opportunities.

You will have many opportunities in both majors. Look at the course sequence at some of the colleges you’re interested in and see what courses you would be taking. Go with whichever one interests you the most.

What did you like about your engineering courses? My daughter is a computer engineer who does mostly programming - so is my husband. It’s a different kind of programming. Some different opportunities, some are the same.

You shouldn’t pick a major based solely on job statistics. Investigate the type of work you’d be doing and follow your interests.

This is a little tricky to explain but, the world of computers is built around the notion of “layers of abstraction”. There are multiple “layers” of software stacked on top of multiple “layers” of hardware.

Electrical Engineers tend to work at the very bottom levels designing circuits and subsystems. Quite often they do this by building software models to simulate the behavior of the hardware before they actually build it.

Computer Engineers tend to work at the next level designing subsystems and systems and writing software that directly controls the software. Quite often the hardware design requires building software models.

Computer Scientists tend to work at the top level wring software that controls the hardware or writing complex application programs.

“Programmers” tend to write simple applications

As a general rule, it is easier to move up the hierarchy than down the hierarchy, so it is not unusual for Computer Engineers to write applications

The most valuable people tend to be people that can move freely up and down a few layers of the hierarchy, those that have expert knowledge in a leading edge discipline (which is constantly changing) , those that are amazingly productive, or those with an idea to start their own company.

Good Luck!

Oops!

Sorry, was in a rush.

Within the realm of Computer Science, you will find some degree programs that skew towards the Engineering side (typically offered by Engineering Colleges and usually ABET accredited) and some degree programs that skew towards the Science side (typically offered by Liberal Arts Colleges).

The programs offered through Engineering Colleges tend to have more course requirements and the requirements are intended to impart a better understanding of the lower levels of the hierarchy.

The programs offered through Liberal Arts Colleges tend to encourage (via electives) more math which is intended to impart a better understanding of the algorithms used to write large, complex programs.

Some schools will offer programs in Electrical Engineering, Computer Engineering, Computer Science via the Engineering College and Computer Science via the Liberal Arts College, and some schools will only offer one or two of the programs.

Assuming the courses are available, a student can create a hybrid program that hits different points on the continuum by using their electives to take courses at another level of abstraction.