At my university, a degree is "Computer Science and Engineering" but at US universities I understand that the degrees are different so what is the fundamental difference? Is computer engineering lower level like hardware and operating systems while computer science is more like language technologies?

  • 1
    $\begingroup$ As far as I know, there is no consensus on such terms because there is no agreement on what "computer science" really is. Not even close. $\endgroup$ – Raphael Sep 5 '13 at 14:13

There's a fine line between the two. Because they both have some very similar ativities. But i'd say Computer Science is Software focused, the study of the science of computers while Computer Engineering is the application of the science of computers.


This is actually an easy one, particularly if you just want to see some meaningful distinction drawn by an organization people listen to. Consider the ACM/IEEE guidelines on computing curricula.

The differences between Computer Science and Computer Engineering can be seen when comparing the respective bodies of knowledge:

Computer Science (2008)

  • Discrete Structures, 43 core hours
  • Programming Fundamentals, 47 core hours
  • Algorithms and Complexity, 31 core hours
  • Architecture and Organization, 36 core hours
  • Operating Systems, 18 core hours
  • Net-Centric Computing, 15 core hours
  • Programming Languages, 21 core hours
  • Human-Computer Interaction, 8 core hours
  • Graphics and Visual Computing, 3 core hours
  • Intelligent Systems, 10 core hours
  • Information Management, 11 core hours
  • Social and Professional Issues, 16 core hours
  • Software Engineering, 31 core hours
  • Computational Science, no core hours

The total core hours for CS add up to 290 hours.

Computer Engineering (2004)

  • Algorithms, 30 core hours
  • Computer Architecture and Organization, 63 core hours
  • Computer Systems Engineering, 18 core hours
  • Circuits and Signals, 43 core hours
  • Database Systems, 5 core hours
  • Digital Logic, 57 core hours
  • Digital Signal Processing, 17 core hours
  • Electronics, 40 core hours
  • Embedded Systems, 20 core hours
  • Human-Computer Interaction, 8 core hours
  • Computer Networks, 21 core hours
  • Operating Systems, 20 core hours
  • Programming Fundamentals, 39 core hours
  • Social and Professional Issues, 16 core hours
  • Software Engineering, 13 core hours
  • VLSI Design and Fabrication, 10 core hours
  • Discrete Structures, 33 core hours
  • Probability and Statistics, 33 core hours

The total core hours for CmpE add up to 486.

A fair way to compare the two might be to find a percentage makeup based on the above curricula. The conclusion would seem to be that CS is at or above CmpE in subjects they have in common, and has fewer other subjects, whereas CmpE is lower in common areas to both programs, but has more subjects not studied in CS, mostly related to EE. This seems to be consistent with the distinction I normally draw, so I'm happy with the overall result of the analysis, but you might draw your own conclusions.

  • $\begingroup$ Can you please expand the acronyms? Your answer is very difficult to read. $\endgroup$ – Виталий Олегович Sep 5 '13 at 16:40
  • $\begingroup$ @VitalijZadneprovskij Which acronyms? CS, CmpE and EE should be fairly clear from context, and I provide a link to ACM/IEEE... $\endgroup$ – Patrick87 Sep 5 '13 at 16:47

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.