How To Survive In Game Industry As a Programmer

Who is This Guy….?

I thought I’d share my journey so far and how I’ve managed to survive in game industry and stay afloat in this extremely challenging environment. I’m a very ordinary person with dreams of grandeur, which I guess was the whole reason I decided to pursue a career in gaming.
At the time of writing, I’m working as a SE2 in Electronic Arts and have been working in games for about 7 years. Getting here has been quite a journey, which I wish to share with a few anonymous readers that want to try and start their career in gaming.
Is it easy? Definitely NOT!
Is it rewarding? Maybe, maybe not…
Would I do anything else? Probably not….

The Hard Truth

Let’s get one thing straight. Surviving as a game programmer is not so easy depending on how you have started.
If you manage to land your first job in a reputable company that has a number of shipped titles, you are in luck. Nothing boosts your resume so much as the experience working on a title that has been shipped and did reasonably well.
But, if your first gig was in a obscure place working on questionable projects, you are going to have it rough. This has sadly been the route that I had little choice but to tread on. In this case, you will need to work on your skills and need to switch as soon as you can. The one thing you need to be able to tell your interviewer is the work you are proud of!
If your work is boring, try doing some side projects:
– Learn the Engine that currently trending.
– Explore various domains in gaming.
– If you have a niche, work on it.
Whatever you do, never stop polishing your skills…… More you know, the better!

Where do you start…..?

Game-Making is not just Unity and Unreal. No matter what anybody tells you, period!
“How do I learn game programming?” is one of the most prevalent questions. It’s sad that answer to it is “Learn Unity” or “Learn Unreal” or “Learn <X> Engine”. Game-Making is much more than that…
This is not a diss on the “commercial” engines. They abstract some of the tedious bits of game development and lets you focus on doing the actual task – making games.
BUT! It’s this abstraction that’s harmful in the long run if you get complacent and don’t try to explore beyond what you are given.
Imagine this: What if there’s no ready-made engine available to you?
How and where will you start from?
How will you make that plane appear in a window?
How will you create a window in the first place?
How will you get those mouse clicks that are so easily accessible in Unity?

Not trying to scare you off, but questioning these basic things will turn you into a better programmer.
NOW, if you want me to answer the question, I would probably suggest the same to a beginner. Not being a hypocrite here, but I would also suggest the person to keep questioning the engine and never look at it like a holy grail that has answers to everything.
Afterall, an engine is just a tool that contains a set of tools to get the job done.

Landing your first role…..?

This is again quite important in how quickly you progress in your role. If you are able to land in a decent studio, you will definitely get a mentor or two, who are going to be extremely knowledgeable. Most people in game industry are really cool. Most people I’ve come across were always willing to share their knowledge and help out to the best of their abilities. You might even get a glimpse of one of those “geniuses” you’ve heard so much about. Game industry is filled with amazing minds.

NEVER IGNORE CORE PROGRAMMING.

You are trying to be a “programmer”. Read about data structures, time complexity, design patterns and how to design and write clean code. This will probably be one of the important things they’ll gauge a candidate on.


Some of the other topics that would help freshers with interviews would be:
– Math (Gaming revolves on math. Get your basics straight in linear algebra and you will impress quite a lot of people).
– High level overview of any of the commercial engines.
– Rendering ( This is another field that you can brag about and impress any potential interviewer).
– How engines work behind the scenes.
Get those straight and keep working on them and your trajectory will most probably keep pointing upwards.!!
It’s also good to have some prototypes you’ve worked on for better first impressions.

Once you’ve landed that role you wanted, learn as much as you can from your peers. Keep asking questions.
If any of the senior devs fixed a bug, ask them how they did it.
If anyone of working on some nice feature, ask them about challenges and implementation details.
Be a pain in the A, without showing it 🙂

Good luck

I wish you the best of luck in your journey. Once you’ve navigated past the necessary hurdles, I hope we could meet and work together to craft awesome experiences!


Leave a Reply

Your email address will not be published. Required fields are marked *