Nethaera: For someone maybe looking to get into a programming position what would you recommend they do, how could they go about getting the knowledge and experience they would need to come work at Blizzard?
Monte:
So that’s a great question, Danielle, and I would absolutely recommend Computer Science. I really think that getting a degree in Computer Science really really gives a good strong foundation for the kind of skills you need to come work on my team. Within that I do have a couple specific recommendations. We use lots of C++, I get the question all the time, what kind of languages should I learn? I’m working with C Sharp. I’m working Java. I’m working with C++. I look for generalists, you know, people who are good on their feet , who can kind of use the right tool to solve a problem that we have. By far the largest set of that happens in C++, so I would recommend, learn C++. The other thing I’d recommend is learn math. Math turns out to be really important : linear algebra, trigonometry, a lot of stuff we checked out in turns out to kinda come back in force.
Nethaera: Actually have some use, huh?
Monte:
Oh, it really does. Especially when we do 3D graphics. It’s really really important. Trig is important. Linear Algebra. Matrix Math. That stuff kind of comes back in force. It sneaks up on you too, you think “I won’t need this to program” but then all of a sudden, “hey!”
Nethaera: And then suddenly you’re looking at a problem going, “Oh, yeah I might need that.”
Monte:
Yeah finding the math book is like the moldy tome out on the shelf there. Crack it open, hopefully the pages are still intact and see if you can find the uh...
Nethaera: Flip to the back where the answers are...
Monte:
yeah
Nethaera: And hope that it’s there.
Monte:
Yeah right, the chart in the little overleaf, look for that.
But, the math turns out to be really important, so I would definitely tell people to make sure to study the math.
So, a couple of more pieces of advice. Since I look for generalists or people who are kind of quick on their feet to solve problems, there are a couple of other languages that can be sort of useful doing one off development or data processing kind of stuff, so I look for people who have some background in something else maybe, maybe a little bit of Perl or Python or Ruby, those all turn out… Those are popular today and they turn out to be really useful for solving problems. So I think that’s some good stuff, I look for that.
And my last piece of advice for getting involved is to get involved. I know that sounds kind of like a totology there but there’s a lot of opportunities to kind of, without having to go out and actually get a job, there’s a lot of opportunities to get involved in game development. For instance a lot of people who want to maybe get involved with WoW, we recommend that you… Like if you’re not sure, you’ve never worked in programming and you’re not sure if you’ll like it, not sure if you do, you can try writing an add on for instance for WoW. And the UI part is written in XML and the programming part is written in LUA, which is another programming language that’s pretty easy to pick up. It’s similar to some of the other ones we work with and it’s a great way to kind of get a feel for the kind of work we do. And when we interview, we look for those sorts of sets of skills and some interest. So if you’ve written a WoW add on, or a War 3 modification, or like a conversion for Half-Life or a Quake mod or those kinds of things, those go a long way towards helping get into our industry.