19 Jun 2016

Software Engineering != Computer Science

Whenever someone asked me what did I majored in as an undergrad, I always replied with “software engineering”. And many times I’ve been asked if software engineering is the same as computer science. The answer not really, though there is an overlap between the two fields. Both cover the core concepts of computer technologies. Computer scientists typically expand the horizons of a field and studies the theoretical properties and limits of those abilities, while engineers use that knowledge to create something in the real world. A computer scientist can in fact become a software engineer, and a software engineer can become a computer scientist.

Which one’s better?

Well, that depends on your interests and what you’d like to do when you grow up. Ask yourself. Do you see yourself working in computer security, coming out with the next latest and greatest encryption and decryption algorithms? Do you want to work on the next operating system by Microsoft? Do you like studying the theory of computing? Or would you rather manage a software project? Design large and complex software systems? Or follow an organized process while coding?

The first three questions are relating towards computer science. As you may have guessed, software engineering is more of the design and process management of the software systems. Software engineers do not just write code, but they write code right. They use design patterns, comments, and other tools to help make software programs on time, under budget, and easier to maintain. In my experience in SE program, the program is much more team-oriented than CS. Clear communication is crucial. You would interact with people that’s both technical and non-technical.

I feel that this picture sums up the dividing line between the fields quite nicely. Of course, keep in mind there are overlaps in tasks bertween the two fields.


Software Engineering oriented task on top, computer science on bottom

Tags:
0 comments