Computer Engineering or Computer Science

In summary, the conversation discusses the decision between pursuing a degree in computer science or computer engineering for a career in software development. The individual is interested in low-level software and hardware interaction, as well as algorithms and artificial intelligence. They have received mixed advice on which degree would be better, with some saying computer engineering would be more respected by employers and allow for the opportunity to learn about electronics design. However, the individual is more interested in software and is considering the flexibility and electives offered by a computer science degree. They are concerned about the difficulty and potential job opportunities for each degree. Ultimately, they are seeking advice and insight on their decision.
  • #1
clint222
36
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
  • #2
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.
 
  • #3
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.
 
  • #4
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:
  • #5


I would advise you to carefully consider your interests and goals before making a decision between computer engineering and computer science. Both fields have their own unique strengths and offer different career paths.

Computer engineering focuses on the design and development of computer hardware and low-level software. This includes topics such as electronics, embedded systems, and operating systems. If you are interested in understanding how computers function at a fundamental level and want to work on the hardware side of things, then computer engineering may be a better fit for you.

On the other hand, computer science focuses on the theoretical and practical aspects of software development. This includes areas like algorithms, artificial intelligence, and software engineering. If you are more interested in the design and development of software and want to work on higher-level programming, then computer science may be a better fit for you.

It is important to note that both fields have a significant overlap and you can still pursue a software development career with either degree. However, it is true that some employers may prefer computer engineers for certain roles, such as embedded software development. But this does not mean that computer scientists cannot also work in these roles. It ultimately depends on the individual's skills and experience.

In terms of difficulty, both degrees have their own challenges. Computer engineering may require a stronger foundation in math and physics, while computer science may require more programming skills. It is important to choose a degree that you are passionate about and willing to put in the effort to excel in.

You mentioned your interest in taking math courses and potentially pursuing a PhD in computer science. In this case, a computer science degree may be a better fit as it allows for more flexibility in terms of electives and minors. However, if you are also interested in electronics and want a more well-rounded education, then computer engineering may be a good option.

It is also important to consider your university's curriculum and the courses offered in each program. Look into the course descriptions and see which ones align more with your interests and goals.

In terms of job prospects, both degrees can lead to fulfilling careers in software development. It is important to gain practical experience through internships and projects to stand out to potential employers.

Ultimately, the decision between computer engineering and computer science should be based on your interests, strengths, and career goals. I suggest talking to professionals in both fields and seeking advice from your academic advisor to make an informed decision. Good luck!
 

Related to Computer Engineering or Computer Science

1. What is the difference between Computer Engineering and Computer Science?

Computer Engineering is a discipline that combines principles of computer science, electrical engineering, and mathematics to develop computer hardware and software. It focuses on designing, developing, and testing computer systems and their components. On the other hand, Computer Science is a broader field that deals with the theory, design, and application of computers. It involves programming, algorithms, data structures, and software development. In simpler terms, Computer Engineering is more hardware-oriented, while Computer Science is more software-oriented.

2. What are the career options for Computer Engineering or Computer Science graduates?

Both Computer Engineering and Computer Science offer a wide range of career opportunities. Graduates can work as software engineers, computer systems analysts, network architects, web developers, database administrators, and many more. They can also pursue careers in research and development, academia, or entrepreneurship.

3. Is coding the only skill required for Computer Engineering or Computer Science?

No, coding is not the only skill required for Computer Engineering or Computer Science. While programming is an essential aspect of these disciplines, other skills such as problem-solving, critical thinking, and analytical skills are also crucial. Additionally, strong communication skills and teamwork are necessary for success in these fields.

4. What are the latest developments in Computer Engineering or Computer Science?

Computer Engineering and Computer Science are constantly evolving fields, and there are always new developments and advancements being made. Some of the latest developments include the growth of artificial intelligence, machine learning, and data science, as well as the rise of quantum computing and the Internet of Things (IoT).

5. Can I pursue a career in Computer Engineering or Computer Science without a degree?

While a degree in Computer Engineering or Computer Science can provide a strong foundation for a career in these fields, it is not the only path. Many successful professionals in these disciplines have self-taught or have taken alternative educational routes, such as coding bootcamps or online courses. However, a degree can offer a comprehensive understanding of the fundamentals and may be required for certain job positions.

Similar threads

  • STEM Academic Advising
Replies
8
Views
2K
Replies
3
Views
243
  • STEM Academic Advising
Replies
1
Views
543
  • STEM Academic Advising
Replies
3
Views
553
  • STEM Academic Advising
Replies
23
Views
3K
  • STEM Academic Advising
Replies
3
Views
859
Replies
3
Views
261
Replies
2
Views
1K
  • STEM Academic Advising
Replies
7
Views
1K
  • STEM Academic Advising
Replies
3
Views
918
Back
Top