The gaming industry almost has been growing steadily for the past 3 decades. In the 70s, it was a very small industry that only a few geeks cared about, but it currently generates more profits than the film industry, and it is becoming a major source of employment.
In the US alone, the gaming industry has hired more than one hundred thousand people with an average salary of 90K. If you are into gaming, then it is a good idea to seek employment in the sector, because not only is the pay, but you’ll be doing something you love. This article will introduce you to some common jobs in the gaming industry, and how you can teach yourself the relevant skills and land a job.
People who want to become game programmers usually don’t know where to start. There are a lot of different tools and programming languages out there, and they each have their associated ecosystem that you need to be familiar with to be able to successfully program a game. All of these are details that will become relevant later on in your career, and you shouldn’t let them discourage you from starting.
The first step you need to make towards becoming a successful game programmer is to familiarize yourself with key programming concepts, terminology, and techniques. It matters very little which programming language and tools you use to learn, because the basics of functional and Object-oriented programming are the same across all languages, and you just need to learn the basics.
After creating a strong foundation, you next have to decide which type of programmer you want to be.
With the release of the Unity and Unreal Engines, people got access to professional gaming engines for free, and this opened the window for a new kind of game dev in the market. A game developer that might not have a very solid theoretical background, but one who loves to design levels and program behavior.
The pros of being a game engine professional user are that you don’t need to spend years studying coding and theory, and you can start developing games right away. The GUI the engines offers makes a lot of the tasks extremely easy, and recently, we’ve seen an explosion of games created through the Unity and Unreal Engines.
Although it is easy to become an independent game dev this way, it is much harder to land a job if you only know these engines. Unless you’re able to create a hugely popular game, you should expect to send dozens of resumes without much luck.
A regular game developer working for a triple-A gaming company is well-versed in theory, knows how to write quality code in powerful languages like C++, and does most of his work using in-house game engines.
At this point, you also require higher specialization in a particular field, be it networks, artificial intelligence, gameplay experience, or optimization. You’ll need to learn how to work with larger teams and do specific tasks very well.
The advantages of becoming a game developer include getting great compensation and facing no shortage of jobs. You’ll be able to work in the largest gaming companies developing very popular games.
There are also a few disadvantages you should keep in mind:
- You’ll be responsible for very specific parts of the game, and the work will get more abstract. So, it isn’t like developing your own game with a game engine, and you might feel alienated.
- It is hard to learn the skills necessary on your own, and it requires a lot of diligence. Expect to have a more challenging time attempting this career path.
This is not to mention that you might start working on an unconventional game. For example, massive multiplayer online games are completely different beasts that require a lot of network engineering and optimization. Imagine managing League of Legends accounts NA, EU, and SEA areas and having a central server connecting all of them.
If you want to work near to the metal developing the basic operations other parts of a game developing team depend on, you can become a game engine developer. You’ll be responsible for creating the backbone of the games in your company – games with very different playstyles and designs will depend on your tools to function correctly. You’ll be able to be creative at the lowest level and design new APIs and push higher performance on existing hardware.
The problem is, to even start thinking about this career path, you need to have extensive knowledge of the different gaming hardware, graphics cards, and low-level graphics APIs (like DirectX and Vulkan).
The main advantage of working as a game engine developer is connected to one of its disadvantages. Because it is so hard to garner the necessary skills and experience to successfully be capable of developing low-level tools, there is always a shortage of developers who can do this job.
This means very generous compensation packages and a better employment atmosphere that most other employees in the gaming industry dream about.
The major disadvantage of being a game engine dev is that you’re far removed from the games and other employees. While you might get contacted from time to time about performance issues and bugs, most of your work is done alone working on low-level features and optimizations that some of the team might not even notice.