What's the Difference Between Computer Science and Software Engineering?

What's the Difference Between Computer Science and Software Engineering?

What's the difference Between Computer Science and Software Engineering?

Computer science, software engineering, same thing, right?


Computer science is the underlying science that acts as the foundation for software engineering, just like physics and math for mechanical engineering.

A scientist runs experiments, postulates, and proves theories, while engineers build and scale systems.

Software engineering is still a relatively nascent discipline, explaining why many universities have not fully split out computer science from software engineering.

Many schools gear their CS programs towards software engineering, though, since that’s now the typical path graduates are taking.

That said, there are many aspects of computer science a software engineer likely won’t ever need to handle — the inverse is also true.

I enjoyed my theoretical computer science course at UCLA, proving various things about state machines and learning about NP-hard problems.

That said, I have not been able to leverage that knowledge in my day to day software engineering work yet.

I appreciate and think the breadth of knowledge is valuable for everyone, but there is much more to learn after earning a CS degree to become a top software engineer.

For some, a software engineering degree (where available) is the best path.

Share this article

Leave your comments

Post comment as a guest

terms and condition.
  • James Nicholls

    Well explained. Thanks for the info.

  • Max Price

    Straight to the point.

  • Nigel Silcork

    Good explanation

  • Josh Taylor

    Software engineering is trending.

  • Andrew Stone

    Thanks for sharing your experience.

  • Peter Nightingale

    Remind me of my classes. I am a bit nostalgic.

Share this article

Benjamin Hendricks

Tech Expert

Benjamin is a passionate software engineer with a strong technical background, with ambitions to deliver a delightful experience to as many users as possible. He previously interned at Google, Apple and LinkedIn. He built his first PC at 15, and has recently upgraded to iOS/crypto-currency experiments. Benjamin holds a bachelor's degree in computer science from UCLA and is completing a master’s degree in Software Engineering at Harvard University.

Cookies user prefences
We use cookies to ensure you to get the best experience on our website. If you decline the use of cookies, this website may not function as expected.
Accept all
Decline all
Read more
Tools used to analyze the data to measure the effectiveness of a website and to understand how it works.
Google Analytics