What degree should I pursue for a career in Software Engineering?

Click For Summary

Discussion Overview

The discussion revolves around the choice between pursuing a Computer Engineering (CE) degree and a Computer Science (CS) degree for a career in Software Engineering. Participants explore the implications of each degree on various aspects of software design, development, and potential career paths, including interests in gaming, AI, cryptography, and quantum computing.

Discussion Character

  • Debate/contested
  • Technical explanation
  • Exploratory

Main Points Raised

  • Jordan Joab expresses concern that a CE degree might overlook important aspects of Software Engineering that a CS degree would cover, and seeks advice on which path would be more beneficial.
  • Michael Courtney suggests that a CE degree may be advantageous for jobs requiring lower-level programming, while a CS degree may be better for large projects, citing his experience at Cisco Systems and Microsoft.
  • Participants discuss the absence of a Compiler class in the curricula, with some suggesting that programming language paradigms might cover similar content.
  • Jordan Joab mentions interests in game development, cryptography, quantum computing, and AI, indicating a need to evaluate which subfield aligns with long-term career goals.
  • Another participant notes that a CE degree could be beneficial for companies developing game hardware, while a CS degree might be preferable for writing games for existing platforms.
  • Michael Courtney adds that economic factors and job market trends may influence the relative value of each degree over a long career, suggesting that a CE degree might offer more job security in certain contexts.

Areas of Agreement / Disagreement

Participants have differing views on the advantages of CE versus CS degrees, with no consensus reached on which degree is definitively better for a career in Software Engineering. The discussion reflects a range of opinions based on personal experiences and career aspirations.

Contextual Notes

Participants reference specific courses within each degree program, but there are no definitive conclusions about the adequacy of the curricula in preparing students for Software Engineering roles. The discussion highlights the importance of individual career goals and market conditions.

Jordan Joab
This thread is aimed mainly at individuals holding Computer Engineering, Computer Science, and Software Engineering degrees however even if you do not hold one of these feel free to add your .02 Thank you.

Hello all. I am interested in becoming a Software Engineer. I want to design, plan, build and program software. My interest in hardware does not go beyond basic knowledge. The institution I plan to attend offers a CS and CE degree. Both programs are very similar, they are administered by the same Departments, and either one would get me to my destination. The logical option would be pursuing a CE degree. However, I am worried that a CE degree might skip important aspects about SoftEng that a CS degree wouldn't skip and vice versa.

In short, for a SoftEng. what path would be more beneficial to take? Thanks for your time.



Jordan Joab.
 
Physics news on Phys.org
Can you post the classes for each? That might help.
 
Computer Engineering

Math and Science
General Chemistry I (or General Chemistry for Engineers)
Calculus I, II, III
Methods of Differential Equations
Linear Algebra and Vector Analysis for Engineers
General Physics

Engineering
Engineering Design I
Computer-Aided Analysis Tools for Electrical Engineers
Electrical Circuits

Computer Science
Introduction to Computing
Discrete Mathematical Structures
Computers and Assembly Langauge Programming
Data Structures
Algorithms
Software Design Laboratory
Software Engineering
Operating Systems
Computer Organization and Laboratory

Electrical Engineering
Linear Systems Analysis I
Switching Systems
Electrical Engineering Laboratory I
Electronics I
Linear Systems Analysis II
Probability and Statistics
Communication Theory
Electrical Engineering Laboratory II
Electromagnetics
Computer Engineering Laboratory
Digital Integrated Circuits
Computer Communication Systems


Computer Science


Mathematics & Science
Calculus I, II, III
Elements of Linear Algebra
Biological Foundations
General Chemistry
General Physics

Computer Science
New Freshman Seminar
Introduction to Computing
Discrete Mathematical Structures
Computers and Assembly Langauge Programming
Data Structures
Introduction to Simulation Science
Algorithms
Software Design Laboratory
Numerical Issues in Scientific Programming
Introduction to Theoretical Computer Science
Software Engineering
Operating Systems
Programming Langauge Paradigms
Computer Organization
Computer Systems Design Laboratory
Senior Project I
Senior Project II

Ethics and Social Issues
Social Issues in Computing
Philosophy of Artificial Intelligence
Applied Ethics: Computer Ethics
Applied Ethics: Engineering Ethics


Electives Shared by both Programs

Computability
Image Processing
Computer Vision
Computer Graphics
Artificial Intelligence
XML Technologies
Real-Time Computing Systems
Computer Networks
Introduction to Theoretical Computer Science
Concurrency in Operating Systems
Introduction to Database Systems

This is a short list. For a better detailed one you can look up City College of New York's undergraduate bulletin (PDF pgs 223 - 231). Also, you can google the Grover School of Engineering for more specific information. Thanks for your time.



Jordan Joab
 
Hmmm looks like the best option is CS after all. Well, guess I solved that problem!Jordan Joab
 
The CE degree would be an advantage for some jobs that require more lower level programming, and the CS degree would be an advantage for jobs that entail very large projects. I worked as an engineer for Cisco Systems for 7 years, and the CE degree would probably be a better choice for most jobs there. In contrast, at MicroSoft, the CS degree would serve you better. At most companies with hardware products the CE would probably serve better.

Michael Courtney
 
Jordan Joab said:
Hmmm looks like the best option is CS after all. Well, guess I solved that problem!

Glad that you're getting closer to a decision. I agree with Dr. Courtney's assessment, BTW.

How come there is no Compiler class in either major? (Maybe I'm missing seeing it) Heck, even I wrote a compiler in undergrad...
 
I think that would be programming language paradigms.
 
Vid said:
I think that would be programming language paradigms.

Yeah, I think you are probably right. Sure hope that they actually get to write a compiler or an interpreter or something in that class, and not just study them. That was such a great learning experience -- very non-intuitive how compilers and such are written.
 
berkeman said:
Glad that you're getting closer to a decision. I agree with Dr. Courtney's assessment, BTW.

How come there is no Compiler class in either major? (Maybe I'm missing seeing it) Heck, even I wrote a compiler in undergrad...

Dr. Courtney said:
The CE degree would be an advantage for some jobs that require more lower level programming, and the CS degree would be an advantage for jobs that entail very large projects. I worked as an engineer for Cisco Systems for 7 years, and the CE degree would probably be a better choice for most jobs there. In contrast, at MicroSoft, the CS degree would serve you better. At most companies with hardware products the CE would probably serve better.

Michael Courtney

Thanks to both of you for your time. I'll certainly take Dr. Courtney's advice in consideration. I guess I should mention that at the moment I see myself creating video games; I grew up on Mario, Sonic, Doom, etc. and even today at 24 I am still a gamer (more casual nowadays). However, cryptography, quantum computing, and AI do interest me so I'll have to evaluate what subfield I will really enjoy 30 years down the road. Once again, thanks for your replies.



Jordan Joab.
 
  • #10
In the game world, a CE degree would be the ticket if working for a company that makes the game hardware, but a CS is a better bet if you are writing games for existing platforms. Of course, if you really are a good programmer, either degree will work in either situation.

In my opinion, AI, cryptography and quantum computing probably favor the CE degree, but the edge is smaller and will depend on the program details.

In a 30-40 year long career, your interests and job description will probably change a number of times. Economic factors will also effect the relative marketability of each degree. You might also want to consider that it is probably slightly easier to farm out work to other countries that requires a CS degree than work that requires a CE degree. In other words, a CE degree might have a slight advantage in terms of long term job security. On the other hand, the CS degree has the advantage in working from home.

Michael Courtney
 

Similar threads

  • · Replies 9 ·
Replies
9
Views
2K
  • · Replies 8 ·
Replies
8
Views
3K
  • · Replies 13 ·
Replies
13
Views
2K
  • · Replies 18 ·
Replies
18
Views
2K
  • · Replies 17 ·
Replies
17
Views
3K
Replies
12
Views
4K
  • · Replies 7 ·
Replies
7
Views
1K
  • · Replies 3 ·
Replies
3
Views
3K
  • · Replies 4 ·
Replies
4
Views
2K
  • · Replies 4 ·
Replies
4
Views
2K