Computer Engineering or Computer Science

Click For Summary

Discussion Overview

The discussion revolves around the decision between pursuing a degree in computer science or computer engineering, particularly in the context of a career in software development. Participants explore various aspects of both fields, including curriculum differences, job prospects, and personal interests in programming and electronics.

Discussion Character

  • Debate/contested
  • Exploratory
  • Technical explanation

Main Points Raised

  • One participant expresses a strong interest in software development, particularly in low-level software and algorithms, and seeks advice on which degree would better support their career goals.
  • Some participants suggest that a computer science degree allows for more electives and flexibility, including courses in artificial intelligence and advanced mathematics.
  • Others argue that a computer engineering degree may be more respected by employers and better suited for embedded software jobs, which often prefer candidates with engineering backgrounds.
  • Concerns are raised about the perceived ease of computer science programs compared to engineering, with some participants noting that many students switch from engineering to computer science due to difficulty.
  • One participant mentions that computer science students can still take electives in embedded systems and operating systems, which could prepare them for engineering-type jobs.
  • Another participant emphasizes that for embedded applications, knowledge of the specific application area (like control theory) may be more crucial than programming skills typically associated with computer science.
  • There is a discussion about the potential for both degrees to lead to similar job outcomes, with some participants noting that both paths can lead to roles in programming and technical support.

Areas of Agreement / Disagreement

Participants express differing opinions on the value and focus of computer science versus computer engineering degrees. There is no consensus on which degree is definitively better for a career in software development, as various factors such as personal interests and job market preferences are considered.

Contextual Notes

Participants highlight the importance of elective choices and personal interests in shaping their educational paths. There are also mentions of varying experiences regarding job placements and the relevance of specific knowledge areas in embedded systems.

clint222
Messages
34
Reaction score
0
I'm a first year engineering student at a Canadian university. I've been interested in programming and computer science from a very young age, and in high school had also become interested in electronics. Entering university, I didn't know if I wanted to do computer science or computer engineering. I was advised to start in engineering and take the first year computer science courses. An academic adviser told me that doing both programs concurrently would take around 7 years, so that isn't really an option.

I’m halfway through first year engineering now and soon need to decide which program I will pursue. I know that I want a software development career. I have heard mixed advice about what degree would be best for this. I am quite interested in low level software and how it interacts with the hardware, like device drivers and operating systems. However, I’m equally or perhaps more in algorithms, artificial intelligence, and topics that would probably not be covered in much depth in computer engineering.

Some people have told me that an engineering degree is a better way to go. They said that it would still teach the important software skills, but would also go into other subjects like electronics, and is more respected by employers. It seems like a lot of embedded software jobs prefer computer engineers to computer scientists. I am interested in electronics, so it would be nice to be able to learn more about electronics design. However, I think I’m more interested in software. Can people with a computer science background get into embedded software development too?

One plus for a computer science degree is that I would have more room to take electives in other subjects that I’m interested. I’d love to take some courses in math like number theory and more advanced calculus. A computer science degree would let me minor in math. Also, I've wanted to take courses about artificial intelligence since I was little. I am also interested in the prospect of getting a PhD and becoming a researcher in computer science, but it’s obviously much too early for me to know if that’s what I would really want to do.

One thing that bothers me is that I know a lot of people in engineering that have “dropped out” and switched to computer science, because it was easier. The first year computer science at my university is an extremely easy course. I am concerned that a computer science degree may not be very challenging, at least compared to an engineering degree. I have read many people online saying that you should do an engineering degree, unless you can’t handle engineering, then you should do computer science. It also seems that a lot of people who do computer science get help-desk, IT support, type jobs. I am not at all interested in that type of work.

I’d be grateful for any advice anyone could give me about their experience with either of these fields, and what would be most suitable for me. I want a career related to software. Over the last few years I've been quite back and forth about which I’d rather do, and any insight, help, and advice would be greatly appreciated!

Thanks for taking the time to read this far! And thanks for your help!
 
Physics news on Phys.org
If you want a career in software I would study computer science or even software engineering. Depending on your school for computer science at least, you can usually take electives in embedded/systems programming, even operating systems. And this would be enough for a lot of the computer engineering type jobs assuming you can teach yourself the rest.

You might not end up learning things like circuits, but it seems like from what you posted your less interested in hardware. If not you can always take a circuits class they aren't that difficult.

Drivers/systems etc., type programming does not deviate that far from the computer science path its just a different specialization/concentration. But make sure you choose your electives wisely.

I have also never heard of a person with a computer science degree getting a job at a help desk, or IT support. I am sure it happens, but the same will happen with an engineering degree, you could easily end up a computer technician or computer repair person.
 
MathWarrior said:
If you want a career in software I would study computer science or even software engineering. Depending on your school for computer science at least, you can usually take electives in embedded/systems programming, even operating systems. And this would be enough for a lot of the computer engineering type jobs assuming you can teach yourself the rest.

You might not end up learning things like circuits, but it seems like from what you posted your less interested in hardware. If not you can always take a circuits class they aren't that difficult.

Drivers/systems etc., type programming does not deviate that far from the computer science path its just a different specialization/concentration. But make sure you choose your electives wisely.

Thanks for your reply!

A course about operating systems, and a course about computer organization are actually required course at my school, and there are a few electives in real time systems and computer architecture, so I should be good! I actually was planning on taking a one or two circuit courses as electives from the engineering department. So I suppose I'm probably good!

It's really nice how much flexibility a computer science degree has compared to an engineering degree. The computer engineers only take a few software courses (real time systems, data structures / programming, computer architecture, and operating systems I think), not as many as I'd like to take! And I am interested in more than just embedded systems, so I might find the scope and specificity of an engineering degree limiting.

MathWarrior said:
I have also never heard of a person with a computer science degree getting a job at a help desk, or IT support. I am sure it happens, but the same will happen with an engineering degree, you could easily end up a computer technician or computer repair person.

That's good! I see what you are saying.
 
My experience has been slightly different. For embedded applications (especially more complex ones) electrical/computer engineers tend to have the preference. The reason is for embedded applications knowledge of the application is more important than the computer science type knowledge.

For example if you are designing a an electromechanical control system it is more important that you understand the control theory than the programming side of things. If you are designing a radar interface then radar knowledge is more important, etc. Most embedded programming is more vanilla than many of the more esoteric computer science ideas like polymorphism.

And as far as flexibility from a straight employment perspective I think the engineering degree gives you more options. Most programming jobs will be open to you with a computer engineering degree but so will most electrical/computer engineering jobs.
 
Last edited:

Similar threads

  • · Replies 8 ·
Replies
8
Views
4K
  • · Replies 7 ·
Replies
7
Views
1K
  • · Replies 7 ·
Replies
7
Views
3K
  • · Replies 2 ·
Replies
2
Views
2K
  • · Replies 23 ·
Replies
23
Views
7K
Replies
3
Views
4K
  • · Replies 1 ·
Replies
1
Views
1K
  • · Replies 18 ·
Replies
18
Views
2K
  • · Replies 3 ·
Replies
3
Views
2K