Saturday, April 28, 2007

Questions from a game programming student

A student at Full Sail recently mailed me some questions, so I thought I’d answer them as a blog post.

What is an average day in your life working at Heavy Iron Studios or just in the game industry?
I’ll answer this in a future post some time… Basically, for a programmer, it’s a lot of sitting and coding, but we also talk and joke around a bit. I like it…

Can you describe the type of people that you wish to work with and what personality traits make these people stand out to you?
The key attributes we look for are an ability to code C/C++, good problem solving ability, and a reasonable level of education / literacy.
On the personality front, we like to see people who are going to fit in. At Heavy Iron we’ve got quite a relaxed/friendly atmosphere, and the programmers are all helpful to each other. Working with people who think they’re the best programmer on the planet, or who don’t get along well with others isn’t something most people want. It’s best to be humble and friendly – if you are smarter than others, then you can help them improve, and if you’re not, then you’re open enough to learn.

How do you feel about accelerated technical education schools like mine?
Like any school, it really comes down to the individual. Going to Full Sail should allow you to put ‘Look - I’m educated’ on your resume, which will get your foot in the door. After that it’s down to the interview process to show you’ve got the skills. If you work hard on your course and do extra coding in your spare time for fun, then you’ve got as good a chance as anyone.

Do feel more people are hired for a specific area of expertise, or a general knowledge of all aspects in game programming?
Most people we hire are generalists. Our programmers tend to touch lots of areas of the game code, engine and tools, and so we want people who can quickly pick up anything. This doesn’t mean that we’d not want someone with a speciality however.
I’d say that to be a specialist in something you’d at least want one or two published commercial games where you worked on a specific feature from the ground up. Ideally you’d have written the same type of system more than once, from the ground up. That way you will have had chance to try different approaches to the solution.
For someone in your situation, I recommend not attempting to specialise too much to early on. Try touching everything once – rendering, sound, physics, AI, memory allocation, etc – and then find what you like. It’ll make you a better specialist if you’re a generalist first.

How can I stand out above all the other programmers out there?
If you could regurgitate live frogs, that would do it for me…
Just be as good as you can at what you do. Write games and demos in your spare time – and don’t let anything stop you (I’m waiting for my friend to work on it with me – I’m coming up with the worlds best idea – I’m going to draw the graphics first etc.). If your resume has a link to your site, and it shows things like simple games, use of physics API’s, graphics demos, shaders, then I think you should find it hard to not get a job. If you’ve not got those skills or demos, then get cracking – pick what interests you and start doing it. If you graduate and can’t get a job, then give yourself the 40 hour per week job of creating those demos. Your skills will improve and you’ll stand out!

What is your favorite game?
That’s tough. I’ll list a few, going backward through time.
- Resident Evil 4 on the Gamecube was absolutely fantastic, and it’s $20 new. Bargain!
- Command and Conquer and Total Annihilation were good.
- Captive for the Atari ST was good. (Think dungeon master but with Robots)
- ‘Elite’ was a space trading game from the 8 bit days. This was a great game. I’d say it’s the reason why about half of the game programmers in England got inspired to make games. (OK, I might be going a bit far, but I’m not alone.)
- Also, I think my favourite Heavy Iron game was ‘SpongeBob SquarePants: The Movie’. It’s a kids game, but it was a lot of fun to make and play.

Is there any other advice you can offer to an aspiring game developer?
Just the tips I’ve been posting. Oh, and I’ve said it before but – apply directly to studios instead of using recruiters. It saves the company money, which they like, and is also more personal.

1 comment:

Thomas said...

I also work at a game programming company, and I agree that in many cases game programming is a lot like regular programming - that is until things get 3D. Then they're much more complicated.