November 8, 2020
Breaking into the game development industry is tough. In fact, it is ostensibly impossible, if you listen to most rational people, particularly when you are ill-positioned for it. If you have ever floated the innocuous idea that you want to make games for a living to your nearest and dearest, here are a few of the things you have probably heard in response:
I'm here to tell you that's a load of crap. Game development is just one professional, technical domain out of many, and the world is full of smart, thoughtful, problem-solving people that aren't game developers. Breaking into this industry is just a matter of taking your critical thinking skills and applying them to game-specific problems. And I'm going to prove it to you myself.
Below you will find my approach to breaking into the game development space as a programmer with absolutely no technical background. I call it the L.E.R.P. method, which stands for Learn, Explore, (Re)connect, and Prove. While I will break down these steps in the context of programming, you can apply this approach to any aspect of game development (art, design, management, etc.).
At a bare minimum, you need to be able to do the job that you want. In the context of game programming, this means understanding core programming concepts like data structures and algorithms. It probably helps to know how computers work, but this isn't strictly necessary. You also should learn C++, the de facto standard language for game development. Understand how to debug and write functional, presentable code.
Focus on building up a foundation of fundamental skills before you try to pick up more advanced frameworks like Unreal Engine 4 or Unity. These frameworks are incredibly powerful, but you won't know what to do with all of that power unless you first understand how these tools work under-the-hood and which problems they are trying to solve.
Game development spans several discisplines: software development, 2D art, 3D art, marketing, product management. It is important to understand the big picture, in terms of how games are made from start to finish, what happens at each stage, and what it takes to make a game successful.
Exploration can be done in many different ways, but at the least you should see what other people do, what tools they use, what their processes are, and try to suss out what works versus what doesn't.
This will help you understand where you (and your particular skillset) fit in to the rest of the machine. It will also allow you to speak knowledgeably about the game development cycle at large, thus bridging the gap between what you do and your target company's goals.
Also spend time learning about what game companies are out there. You probably already know about the Activision Blizzard and Riot's of the world, but get to know the full extent of their portfolios. Similarly, figure out what indie game companies are out there that you might be interested in.
The concept of networking is hardly novel, but it takes on especial importance in the hyper-competitive games industry. It is not enough that you have valuable skills; you need other people to know that you have those skills.
Otherwise, you are just a resume in a haystack. Reach out, be honest, and be earnest. Talk to developers you know, and ask them to put you in touch with developers they know. The discipline they work in is mostly irrelevant, as long as they work at game companies. Promote your work without being too obvious about it; just enough so that people are aware of what you have done and what you have learned.
This way, when you finally reach the point where you are ready to apply for jobs, you know people who can vouch for you, or, at the very least say "I remember that guy. He seemed nice."
Remember: we are talking about video games here. It is a visual-first field, by definition, and you need to be able to show what you can do in a way that is understandable and interesting to viewers. This is naturally easier for those in art disciplines, as your creations can speak for themselves. It is tougher for programmers, who need to convert their code into something worth looking at (although clean code will also speak for itself).
Make some sample projects. Clone classic games like Pong or Space Invaders (easy enough to host on itch.io). Start a blog (like this one). Write about your adventures in gamedom. Tell your friends, tell their friends, and anyone who will listen. Shout loud enough, and someone will hear you eventually.
Nelson Mandela once said that "It always seems impossible until it is done." So it goes with game development. There will be many, many people who tell you that the path you have chosen is implausible, or unlikely, or unrealistic.
But this, like anything else in life, is only a function of dedication and elbow grease. Before embarking on this quest, steel yourself mentally. Determine your goal, and understand what it entails, and then just go for it.
See you on the other side.