informa
8 min read
article

Advice for getting your first programming gig in games

Way back when, I used to return to my University and give a talk about getting your first programming gig. Here is the article version

Back in the day I used to travel back up to Hull to give a talk about getting your first programming gig in the games industry. These days however, I don't get to go as much as I would like and usually not in term times, so instead I have taken the talk and put it into blog post form.

Portfolio, Portfolio, Portfolio, Portfolio

For me, when I was applying back in 2012 and back when I used to interview applicants, the Portfolio was the single most important thing. Yes it is nice to have a blog as well especially if you are looking into programming things outside of your studies, and of course have a nice LinkedIn page and CV, but your Portfolio is what will sell you the best. It helps the people recruiting visualise your skills rather than just seeing C#, C++, DirectX, Unity, etc on a bit of paper.

When building your Portfolio, don't just include University work. You should have some non-course realted items as well. If you don't it can potentially tell your employer that you aren't passionate about what you are doing. And come on, for most of us it is why we get into the business in the first place. 

Only include your best work that is easiest to show. I personally would not show C++ code that measures how long it takes to sort a vector vs a linked list vs an array. It is dull and it is obvious that it is an exercise from a worksheet. Show something that looks cool, maybe a graphics demo or physics demo, a full game or even a demo for a game.

When presenting full games however, Pong clones and Space Invaders Clones have all been done before and are also often done as uni coursework. If you are going to do these they need to be SUPER polished or have some nice enhanced features.

Something a bit different is going to make you stand out.

If you are stuck for ideas here are some games/genres you can look at as reference for "relatively" easy stuff to make that also covers a couple of Games disciplines such as Graphics, Gameplay, Physics and AI. Don't full on clone them though, make sure they are your work and have your unique flair in them.

Make sure you tailor your portfolio for what you want to do. OK, you maybe going into a generalist role, but it is good to have specialisms as well. Although as a graduate you maybe limited to what options you have (for example you may not be an A.I. programmer right off the bat). You can still tailor it for what you want to do in the future.

If you love graphics make a really sexy looking demo. You could look at graphically beautiful games that use very unique effects such as Journey, or grab ideas from SIGGRAPH papers and implement them using the technology of your choice, whether it is somehting like MonoGame or pure C++ and Direct X.

If you really like AI have a look at something like TORCS where you can make a cool A.I. car controller to race against others. If you like gameplay then make a really polished simple game with some awesome mechanics. For example, with Storm Ship Shiro I basically took the "R-type genre" added a energy mechanic to make it harder.

One of the best ways to spice up your portfolio is game jams. Game Jams are brilliant and you should get involved with as many as you can, especially in teams at it is shows your potential employer that you can work under pressure, to deadlines with others. Keep an eye on CompoHub to keep track of what is going on.

Show you are passionate. Look at your favourite games and get inspired! Like Borderlands 2's art style? Reasearch non-realistic rendering and have a go at making a cool shader!

Swot up

Basically, revise all the things. OK maybe not all the things but definitely the things your employer is looking for.

You will need 3D/2D maths regardless so mug up on your vector and matrix maths (if you haven't already I suggest grabbing this book or something similar that has a nice little overview and gives you the core, easy to revise knowledge that you will need).

If you are applying to a big AAA company like EA, etc, chances are you will need C++ so make sure your knowledge is good and if they use Unreal, make sure you know the ins and outs of how the engine works. Similarly if you are going for a C# job make sure you know the nice little nuances of C# and again the same with Unity. Also if the job is a graphics related jobs make sure you know about various graphics related techniques and if it is a tools job make sure you know elements like how C# interops with C++, the GAC and how Windows Forms and WPF work.

Be nice, polite and passionate in interviews and don't panic

Be likable. You are a human being at the end of the day and so are the ones that interview you. You aren't some programming robot that is just gonna whack out code consistently, you are going to be in a team working with artists, producers, QA testers, etc. Show that you can fit into these teams.

Be polite, say thank you and shake hands with your interviewee. Although it is the games industry and we don't often where suits, smartish clothes such as a nice shirt, jeans and pair of shoes is always a win (in my opinion anyway some people won't mind).

Also be passionate about what you do, love games. If you don't love what you do is it worth doing? Talk about what games you love and why you love them and if you get asked by someone "how would you make it better?" don't just reply with "make it longer". Look at the mechanics, graphics techniques, physics, A.I. and really think about how that could be improved.

Finally if you get asked a question you don't know about, try to solve it calmly. You may get asked some more out of the box stuff. If you get it wrong then and you are calm about it that is much better than freaking out because you got it wrong.

Don't just jump at the first job

Once you leave Uni, you will not know everything. And if a company expects you to know EVERYTHING when you leave Uni then it is probably not going to be the right place for you. When you start as a junior it is good to have someone who will guide you and teach you cool, interesting and most importantly useful stuff. It is hard but try and get a feel for the place when you go for an interview. If they are going to mentor you and improve your professional skills as a programmer, that is a brilliant place to be. If they are just going to throw you in the deep end and not give you clear deadlines or expectations, then great if you want to learn things the hard way, but I would suggest going somewhere where there will be somewhere to mentor you and help you in your career development.

Remember it is not just what you can give the company, it is what the company can give back to you so look around before instantly accepting the first offer. Don't be scared to ask about mentoring in interview as well, it shows you are willing to learn.

Avoid CERTAIN recruiters and try and do it yourself before you use them

Before you think of using recruiters, go through the job boards yourself. It actually often costs money for companies to use recruiters then a direct applicant and going to a company direct shows you are a bit more willing to put the effort in. Use them as a last resort.

If you are going to use recruiters know that like everything else some are good and some are bad. The best ones I have dealt with take a very personal and professional approach and were helpful in every step of the way, with clear communication regarding what is going on and where in the process you are. The ones I would avoid are those who jsut clusterbomb every company with a CV, which you could do yourself, but it is a terrible idea. Feel like you are a candidate they care about, not just commission.

Well I hoped this all helped and good luck to you all applying for your first gig in games!

Latest Jobs

Treyarch

Playa Vista, California
6.20.22
Audio Engineer

Digital Extremes

London, Ontario, Canada
6.20.22
Communications Director

High Moon Studios

Carlsbad, California
6.20.22
Senior Producer

Build a Rocket Boy Games

Edinburgh, Scotland
6.20.22
Lead UI Programmer
More Jobs   

CONNECT WITH US

Register for a
Subscribe to
Follow us

Game Developer Account

Game Developer Newsletter

@gamedevdotcom

Register for a

Game Developer Account

Gain full access to resources (events, white paper, webinars, reports, etc)
Single sign-on to all Informa products

Register
Subscribe to

Game Developer Newsletter

Get daily Game Developer top stories every morning straight into your inbox

Subscribe
Follow us

@gamedevdotcom

Follow us @gamedevdotcom to stay up-to-date with the latest news & insider information about events & more