Should I study computer science or software engineering?

"Please leave a message at the beep, we will get back to you when your support contract expires."

Moderators: phlip, Moderators General, Prelates

KeirTuS
Posts: 3
Joined: Sat Aug 20, 2011 3:24 am UTC

Should I study computer science or software engineering?

Postby KeirTuS » Sat Aug 20, 2011 3:31 am UTC

Hello,

I'm currently in Grade 11 highschool (Canada), and I have always loved computers. I've always liked programming and have attempted to learn c++ on my own. I have gotten some basics down, but I never fully learned the language. I'm taking introductory courses to computer science, and computer engineering in the upcoming school year. However, I'm almost positive computer engineering isn't something I want to pursue. I just took it mainly because it was the only other computer course.

Right now, my main aspiration is to work as a video game programmer. Now, I've been looking around, and it seems, everyone points to computer science as a degree to major in. I just want some clarification that would apply directly to my situation.

Would computer science be a better choice than just merely software engineering?

Also, for all the Canadians from Ontario/Montreal, I was thinking of going to Waterloo, or McGill. It would seem that McGill offers courses in game programming specifically, however, Waterloo offers a co-op program that could very well establish a full-time job right out of school.

Thanks for any help.

User avatar
b1ackcat
Posts: 274
Joined: Mon Oct 20, 2008 4:35 pm UTC
Contact:

Re: Should I study computer science or software engineering?

Postby b1ackcat » Sun Aug 21, 2011 12:31 am UTC

I feel like I'm really well qualified to help here because I just graduated with a (US) degree in Computer Science with a minor in Game Design.

First, the difference between computer science and software engineering:

Computer science is literally the 'study of using computers to solve problems'. There are generally two ways to approach computer science: Applicability and Theory. Applicability meaning using your skills to write software to do stuff. The theory side is much more math oriented and it focused on solving complex problems through research. The class set i took was a strong mix of both, with probably more focus on application (but I had a wide choice of electives to design my degree to be more job oriented since i knew I didn't want to do CS in grad school, which is almost exclusively Theory and research).

Software Engineering is literally studying how to design, develop, and maintain software. It's about the job of programming, specifically. You'll learn more about design patterns, UML diagrams, process models, probably some specific languages, data structures and popular algorithms, etc. You'll get a good chunk of this with a computer science degree as well, but with a software engineering degree it will be your main focus.


Now onto game design. The minor was kind of odd in that there were no classes for specific fields in game design (there was no 'game programming' class, but i hear they're working on one). The classes focused on design principles for games (level design, making games 'fun', etc), with all types of people in the same class (art, programming, design, sound). Whatever your background was, that's what you focused on. So I programmed games for all our projects (put in teams where we could practice combining skills in a team environment). We also learned a lot about the current game design job environment, which is a whole other post that i'll do later as I have to go now.


If you KNOW you want to go into game programming, I would say do some research on the game industry. Jobs are hard to get, harder to keep, and easy to lose, unless you work at a AAA studio (which requires experience) and are willing to have some LONG weeks.


I'll be back, but leave me any questions you'd like answered. I'll do my best.
My favorite Churchill quote: "The best argument against democracy is a five-minute conversation with the average voter."

KeirTuS
Posts: 3
Joined: Sat Aug 20, 2011 3:24 am UTC

Re: Should I study computer science or software engineering?

Postby KeirTuS » Sun Aug 21, 2011 7:12 pm UTC

http://cfm.uwaterloo.ca/about/degree_requirements.html

I stumbled upon this program. It has computer science, and financial side as well. Since you said finding a job in the game industry is hard, I thought maybe I could broaden my spectrum and get a degree in finance as well. Money is always going to be a part of our lives, if I have no luck in the game industry (CS), maybe I can step into the finance side.

It seems like it's the best of both worlds for me, seeing as I have a backdrop in case one side of the degree doesn't work out.

What do you think?

User avatar
b1ackcat
Posts: 274
Joined: Mon Oct 20, 2008 4:35 pm UTC
Contact:

Re: Should I study computer science or software engineering?

Postby b1ackcat » Mon Aug 22, 2011 12:56 pm UTC

I think a guidance councilor is much more qualified to make a decision like that with you, but I do think having a foundation in a secondary field is a fantastic idea. With a game-oriented computer science degree, you can always fall back on traditional programming, especially if you go the software engineering route. Keep in mind that with a CS degree, as opposed to SE, it will be easier for you to get a non-programming job. I would only recommend SE for someone who truly loves programming and knows it's what they want to do with their life. Computer Science is great for those that aren't so sure because it's still programming, but the focus isn't on software, it's on problem-solving, which makes you more flexible. I'd especially consider a minor in finance, business, anything non science-y to give you some wiggle room.


The game industry is a tough nut to crack, and now that I have more time, here's some more info. keep in mind that this is just what I've learned through talking with various people who've been in the industry for years (not just professors, we had a lot of really cool guest speakers).


1) Networking is EVERYTHING in the game industry. Getting picked up out of the blue is tough. it's much easier to call someone you know and see if he knows of an open position, for example.

2) There aren't a ton of 'mid-level' companies. There are the few AAA companies (Blizzard, Activision, EA, etc) that put out the huge blockbuster games, SOME mid-level companies that put out more obscure but still moderately successful titles, and a million billion start-ups that focus on 'casual games' and other small-sale-high-volume markets like android, internet/flash based, iphone type games. The start-ups are always looking for talent, but the job security is really low, as unless the company has a string of somewhat successful games to keep funding their employees, they go under rather quickly. (read: 1-3 years on average)

3) Jobs are volatile, meaning it's hard to hold onto them unless you're lucky enough to get in with the big dogs, and even then, you have to be good to keep your job.

4) if you do work for those big companies (and sometimes, even if you don't), there will be long hours. You'd better love what you do, because you'll be doing it a LOT. 50-60 hour weeks are not uncommon. If you're 3 or so weeks before a huge deadline, you can bet your ass you'll be working 60-80 hour weeks, especially prior to a release. This industry accepts that as the norm for big games, and you probably won't see much, if any, overtime pay for it. Depending on the employer, you may get some comp time, extra vacation days, etc, but don't expect a doubled paycheck for an 160 hour pay period.

5) While it's important to do something you enjoy, keep in mind that for a lot of people, this job can turn into such a grind (especially as a tester), that some people lose the joy they get out of playing games. While I was taking my classes, whenever I played games I'd look at the level design, critique the controls, how the AI worked, if things felt too linear, etc. It took a long time of not being involved in those classes to not analyze what I was playing and just enjoy it. i still do it sometimes. A lot of people in the industry say that the job has killed their love of video games, which is sad.




I'm not trying to steer you away from the industry. The people are great and the atmosphere is a lot of fun. These are just a few things I wish people had told me before I took my minor in game design. Looking back, I probably should've taken it in business, finance, project management, etc. But that's just me. YMMV.
My favorite Churchill quote: "The best argument against democracy is a five-minute conversation with the average voter."

KeirTuS
Posts: 3
Joined: Sat Aug 20, 2011 3:24 am UTC

Re: Should I study computer science or software engineering?

Postby KeirTuS » Mon Aug 22, 2011 7:10 pm UTC

Wow thank you so much for all your help!

It really makes me reconsider my option for game programming. I guess I'll have to wait and see when I get into my computer science class and experience it myself. But to be honest, I think I'm going to get a minor in the finance sector, as I said before, money's always going to be around. And if I do get lucky enough to get into the game industry, well I have my computer science major to fill in that void right?

Again, thanks for the information you've given me!

User avatar
b1ackcat
Posts: 274
Joined: Mon Oct 20, 2008 4:35 pm UTC
Contact:

Re: Should I study computer science or software engineering?

Postby b1ackcat » Tue Aug 23, 2011 2:55 pm UTC

No problem, and again, I don't mean to shy you away from it, just be informed. If you don't mind long hours, and less money than you could be making programming non-games, and you really love games, it can be a great choice. It just takes a certain type of person i think.

I would highly recommend a minor (or at least some classes) in something business related. I would also recommend you talk to a counselor to get some more ideas of your options. You're young and it's important to have a goal, but don't miss out on exploring your options and seeing what's out there.
My favorite Churchill quote: "The best argument against democracy is a five-minute conversation with the average voter."

User avatar
Arancaytar
Posts: 1642
Joined: Thu Mar 15, 2007 12:54 am UTC
Location: 52.44°N, 13.55°E
Contact:

Re: Should I study computer science or software engineering?

Postby Arancaytar » Sun Aug 28, 2011 3:20 pm UTC

I studied something similar to software engineering (called Scientific Programming) for a few years, but am now studying CS. Mind you, I'm studying in Germany, and the college system varies a lot between countries (and even between colleges).

I started out with the software engineering because I originally was much more interested in the practical aspects, but that changed, and I ended up abandoning that and starting CS instead, because I enjoyed the theory. A decent CS program does involve learning to program, but there is a lot of stuff (logic, theory of complexity, etc.) that you don't need for programming (though some math like numerical analysis and differential calculus is useful for real-time physics simulation, so there's that).

Not sure how much of this applies elsewhere, but at my current university it's possible to focus on different aspects while studying computer science, including software engineering. It is probably less easy, while studying software engineering, to take theoretical classes. In addition, that kind of choice doesn't have to be made immediately, as the first year or so consists of basics anyway. If you want to keep your options open, then CS may be the better choice.
"You cannot dual-wield the sharks. One is enough." -Our DM.
Image


Return to “The Help Desk”

Who is online

Users browsing this forum: No registered users and 8 guests