Portfolio Guide: Game Programming
This Portfolio Guide: Game Programming edition is designed specifically to help anyone looking to apply to our Game Programming course. Above all else, the best programmers are the ones who can communicate that they have a proven interest in programming that they’ve acted on. There’s more to it (as you’ll see below) than just that, but that’s the one thing you can’t work without. If you’re looking to apply, then definitely take a minute or so to look over what we think are key qualities any potential programming student. Much like any game studio, we’re looking for people who might be a good culture fit and could benefit from learning at our campus.
A proven interest in programming.
First and foremost, we want to hear about why you’re excited to use code to solve problems. Do you enjoy fully-autonomous characters that can “think” for themselves? Are you interested in implementing complex systems like a spell-crafting system that uses five elements? Programming doesn’t have to be your one and only interest (and it shouldn’t be), but it’s important that you know why and can express why you want to learn programming and what you want to do with it.
If you’re having trouble thinking of what that might be for you, think back to the last game you played and consider what might be interesting to create! How would you create a wave-based enemy spawn? What kinds of problems would you have to solve if you wanted to create a dynamic environment that can deform or reshape when explosions occur?
Be ready to show us what you’ve done when you walk into the interview. Bring compiled builds of your games, copies of your source code, and any supporting documents that you’ve made while making your project. It’s preferred that you bring your own laptop, but we can supply one during the interview if you need it. (Tip: Class work like exercises are cool if that’s all you’ve got. At AIE, we value creative individuals who embrace the “do-it-yourself” mentality, what you do on your own. We want to see what you can come up with, not necessarily what your teachers have come up with.)
If you haven’t dabbled in code before and you’re interested in gaining a basic introduction to the world of game programming, check out our Game Programming intro course.
A plan of action for getting into the game industry
Let’s suppose that you apply for the Game Programming course, study for two years, and then get out to look for a job. What kind of job are you expecting to get? The better you define your goals, the more you’ll get out of your time in with AIE in the classroom.
This goes hand in hand with the whole “proven interest in programming” idea. We want to know that you’re serious about getting a job, and that means clearly identifying what those jobs would be. You can have your dream job of working Blizzard, Valve, or wherever, but don’t let that distract you from setting immediate goals for the next few years.
Check sites like Gamasutra or Gamedev.Jobs and try looking at different positions you might be interested in. Tell us what jobs you would be interested in doing and why you want to do it.
Applied problem solving skills (not just in programming!)
Surprisingly, the bulk of what you do as a programmer is not writing code, but fixing problems in your code. Two chunks of code can totally work independently of each other but wreak havoc when combined, and it’s your job to fix it. How do you approach solving problems? Where would you start looking if you were trying to fix an issue in your game? What kinds of problems did you run into when you were making your own game and how did you solve them?
We want you to tell us how you solve problems (in code, if possible, but we’ll take other examples). The simplest way to do this is talk to us about the last project you worked on and some of the bugs or issues you tried to solve. Whether you were successful or not, we want to hear about your process.
Having the basic math skills used in game mechanics.
Don’t worry if you’re “not good” at math; you just need an understanding of concepts like linear algebra and trigonometry. If you’re still in school, reach out to your favorite math teacher or send them an e-mail asking about what you can do. Generally, if you’ve passed pre-calculus, you’ll have covered a lot of the math concepts that you’ll use in games as well.
If all else fails, there are a ton of resources you can find that will help you improve your math skills. If you’re really committed to learning more intensive mathematics, pick up a copy of 3D Math Primer for Graphics and Game Development (by Fletcher Dunn). If you prefer a more structured learning style, we suggest giving Khan Academy a try, as they have free tutorials and exercises for you to practice your math.