Computer games are fundamentally constructed from software which can be divided into two broad functions: the game engine that controls the flow of the game and the systems that support the live operation. Some organisations use homebrewed bespoke game engines, while others employ off-the-shelf engines such as Unity and Unreal.
While small independent games require a bit of everything, large game studios will typically have the scale to support in-house teams of software engineers who develop the different elements of a game from scratch. There are often three main roles within such a team:
Game play programmer: engineers in this role focus on how the game plays from a user perspective, which will involve plugging in bits of design and making sure the system is user-friendly.
Graphics programmer: engineers in this role are responsible for building an efficient rendering engine or tweaking technical features so that the game works well on different systems. Graphics programmers will be able to resolve hard optimisation and performance problems, typically using C++.
Back-end systems software engineer: engineers in this role write the computer code for the systems of a game that aren’t directly seen by players; for example, server-side logic and the login or billing functions of a large online game.
Beyond these programming roles are the positions that support live operations, such as networking, security and operations engineers (these fall under systems administration), and the various members of art teams, including animators, character modellers and environment artists.
What you need to know about games development
In recent years there has been a rise in the number of small outfits and individuals developing and releasing games, because it has become cheaper to do so.
Production used to be the privilege of large developers, because making a game was an expensive undertaking. This shift has created opportunities for large organisations: they have a larger pool of talented game developers to hire from, and as smaller game houses often tap into new audiences, bigger businesses are able to explore these new markets on a greater scale.
Who can apply?
There are plenty of opportunities in the industry for students and graduates; these include internships, industrial placements and graduate schemes. Some game employers see taking on students and graduates as advantageous because games are predominantly played by people in their early twenties.
For game development roles employers tend to recruit graduates with technical degrees, such as computer science, maths, physics, engineering or games development with a technology focus. An internship, a university placement, developing your own game independently, or getting involved with game jams and hackathons, are all activities that will potentially make a graduate more employable.
Graduate schemes are a relatively new route into the industry for those at entry level, with a limited number of studios offering them. Schemes will vary from employer to employer but may comprise rotations across the business to give new hires a comprehensive understanding and overview of the entire development process.
Many technical specialists working in this area develop a wide range of skills that will give them the option of moving up in game development or into other technology sectors.
Choose this if...
- You're an avid gamer.
- You want a highly technical and creative career.
- You want to develop transferable as well as bespoke technical skills.
MATHEW BURNETT is head of RuneScape Core Tech at JAGEX. He has a PhD in physics from the University of Bath and has worked in IT and technology for 12 years.
Follow us on Twitter @TjobsEng_Tech.