Computer Science or Software Engineering?

Started by
10 comments, last by GameDev.net 17 years, 6 months ago
I would be in favor of CS as well. Jobs in the field are sometimes competitive-- even entry-level positions. Job experience speaks louder than degrees in most cases (from what I've observed), so while your son might not be able to get into game programming right away, the extra options afforded by the more generalized degree would allow him to get work at a variety of locations, with the goal of getting to a game development position later. Having development experience in any software job exposes someone to the process of software development.

That said, having gone through a CS degree and working in the programming field, they are very different focuses. I would argue though that it would be easier for a CS graduate to pick up the software engineering process than the other way around. Perhaps I just learn better with the structure of a class, but like barkholt said, CS would offer a lot more exposure to math. What are 3D graphics if not intense linear algebra? And who would be a better candidate, one who knows only how to use tools, or one who knows how they work as well? Although the theory taught in a CS program can seem very esoteric (anyone remember the pumping lemma?), the groundwork of theory makes the rest make a whole bunch more sense.

And THAT being said, I would love to see more SE practices put into CS programs (source control, test-driven development, good design). CS isn't a degree in programming anymore than English Literature is a degree in the grammar of the English language, but you still need to know the basic principles to function in the field.
Advertisement
I'm just entering the industry now (have my first position as software dev :P) and based solely on the countless interviews for entry-level positions I've endured the past few weeks, I'd say CS all the way.

I'd guess about 10% of the interview questions were regarding coding, and they were all quite basic, with the majority being logic/reasoning/math. Languages, APIs, programming paradigms change all the time, but algorithms, math and logic don't, and they're a LOT harder to learn on the job.

This topic is closed to new replies.

Advertisement