Many people have been asking me lately how to get into the game dev industry, so I thought I’d write a blog post about it so hopefully it reaches more people.
For entry level positions, game dev experience is not always expected, which is nice if you are just entering the industry. However, there are things you can do to get prepared and show your passion for game development, as well as to get you prepared and give you experience. When applying for a job, you want to show that you have relevant experience to the role you want to apply for.
So, what should I do?
Having good experience in one or more high level programming languages is very important. C++ is by far the most used language in the game dev industry. So go ahead and start learning that if you do not have the experience yet. There are many free, good resources available online as long as you put the time and effort.
If you don’t have game dev experience then try to work on something on your personal time, and try to focus on what is most relevant for the relevant job opening. Spend some time learning to use a specific game engine is a great advantage if it is used by the studio you target, or go ahead and build a proof of concept game, it doesn’t have to be commercial-grade but it shows you can think and take care of many things on top of programming.
I love making the fun in games and I want to work as a game programmer.
Focus on making the most out of your time, for example if you want to apply to a gameplay programmer position, focus on learning that instead of, for example, building your own engine. Go ahead and download one of the already existing engines out there, Unreal or Unity engine for example. Use it to start building a small game. The game genre doesn’t matter; the important part is to have a game to play!
I love low-level programming; engine programmer is what I want to be.
On the other hand, if you want to work as an engine programmer then change your plan accordingly: go ahead and choose a free game engine, download it, check the documentation and the source code. Start by learning and understanding the overall architecture as well as details of one specific system / component in the engine.
Understanding of modern APIs (e.g.: DX11 / DX12, OpenGL, Vulkan) is important for an engine programmer position as well, again there are plenty of very good resources to learn those online.
Have some extra time and / or want to learn more?
Great! Why not about do both? Go ahead and build two proof-of-concept games, one in Unity and one in Unreal Engine. This way you have experience using 2 game engines, experience building games from scratch, and understanding of the differences between the two engines which is very useful even if you end up working with a third one!
I believe if you could show your dedication and commitment, many companies would be happy to consider you for an application. Game development is passionate and fun, so showing passion is in my opinion a big step to reaching your goal. And you will have a lot of fun preparing for it as well 🙂
Lastly, if you have questions about game / engine programming I am glad to help, here is a link to my Twitter account.