This is a very common question. Although there is considerable overlap between the two fields, Computer Science focuses primarily on software systems, while Computer Engineering on hardware systems. Software application development, Internet programming, and database/information management systems are more the province of Computer Science, while Computer Engineers often work in embedded system development and low level hardware design. It is fair to say that the amount of software development performed in the US greatly exceeds that of hardware development, and that nationally far more students study Computer Science than Computer Engineering.

Both majors will teach you basic programming, fundamentals of computer hardware and will give you the skills necessary for creating software and hardware systems to solve problems in the real world. However, CS deals more with the "science" of computers, putting more emphasis on algorithm development/analysis and efficient ways of storing/processing information, while the CE track stresses more the engineering aspects of hardware systems. To put it another way, CE studies ways to build good computer systems while CS tries to figure out what to do with them.

faq weight