Key Advantages of Working as an Engineer in the Mobile Gaming Industry
Engineering games involves a deep understanding of multiple technologies, building highly dynamic content, interacting with multiple disciplines and having a constant eye on how the game impacts players in every way.
Below are some of the key advantages and experiences one could gain by working on engineering within the games industry.
Large Scale Entertainment
Being a B2C product, games have a direct visible impact on the lives of millions of players across the world. Games create an environment to fulfill intrinsic motivations of autonomy, mastery and relatedness; and, as game creators, you have the responsibility to make that happen in the best manner possible. Building great features, improving load time, FPS, memory, solving player pain points, building meaningful social features to engage players — all have a direct, visible impact across millions of players.
Exposure to Variety of Game Architectures
Each game genre has a distinct architecture. Slots games, simulation games, strategy games, racing games, casual word games, MMOs and more, each of them have very different backends, client tech stacks and architectures.
For example, real-time games like racing need a real-time tech stack built on top of UDP protocols, whereas strategy games need to be heavily server authoritative to prevent cheating in social features such as leaderboards. Engineers can get exposure to a wide variety of tech stacks, architectures and can increase their exposure and expertise.
Common Patterns Across Consumer Behavior
One can get wide exposure to different products and consumer behaviors. Consumer behaviors and meta loops on gaming products are extremely interesting from a neuroscience perspective and similar gamification patterns can be adopted across all consumer products. A few examples of these include game meta loops and game core loops. The core loops are typically responsible for engagement within a game, whereas the meta loops take care of long term player retention. Most of these game loops and patterns are portable across games. A very good example of this is the battle pass feature, which has been adopted by several gaming genres.
Breadth of Technology Exposure
Engineers can build exposure at all layers of the tech stack starting from GPU (Graphics), high
performance clients (C++ based), game engines, native code on Android and iOS, backend tech, storage layers, infrastructure provisioning, cloud native tech and analytics. Games use well-architected generic services for authentication, storage, payment gateways, identities, leaderboards, messaging and many more generic game requirements. A lot of the patterns learned here have wide applicability across all consumer applications and can be applied to non-gaming domains as well.
Using Cutting-Edge Tech
A lot of tech may be tried and tested in the gaming domain before going mainstream, such as blockchain, NFTs and 5G networks. Some of the deep learning tech also has direct applications in the gaming domain.
Upcoming technological trends that may further fuel the growth of the mobile gaming industry, including:
- Cloud streaming – reduces the friction for installing larger games and allows for running console quality titles on the mobile devices
- Augmented reality – allows us to place game objects in the real world
- 5G – can take real-time synchronous player-vs-player games to the next level
- Superior mobile hardware – can give a new degree of realism and console quality graphics to mobile titles
- Machine learning and AI – allows for personalizing the right experience for sets of players
Tech Challenges and Complexities of Live Games
There are several challenges to managing a live game — massive code bases, designing storage layers for high concurrency, managing multi device gameplay, version controlled asset systems, highly dynamic events, performance optimizations, ever evolving features — fixing a player issue might involve debugging across various layers of the code base, changing the client without doing a release, jumping into code which you have never seen before and solving issue. This could involve touching a variety of layers on the system right from client to backend to analytics and telemetry. Full systemic understanding equips developers to solve such issues much faster and can be a great learning experience.
Exposure to Non-Engineering Domains
Engineering successful games requires the right collaborative effort across various functions. Each function has a distinct responsibility – for example, product managers need to make sure the game has healthy metrics around player revenue and engagement. They also build a roadmap and feature specifications in alignment with business goals. Game designers have a responsibility to make the game fun and exciting to play, the art and UX functions need to make the game look great, production ensures that collaboration across functions is smooth and effective and game release schedules are met, and QA ensures the game is built as per specifications laid out and all the non-functional requirements such as performance and smooth gameplay are also met. Engineering has to work closely with all of these functions while developing features that excite players and achieve business objectives. Each of these functions has a very specialized focus area and unique perspective towards how things work and eventually plays a critical role in the gameplay experience.
‘What Will Our Players Thank Us For?’
This question drives Zynga’s game teams, empowering them with a high degree of autonomy for making decisions that benefit our players. This allows engineering to contribute not just to their role but also to other functions. Engineers can contribute to PM and game design functions and collaborate with them effectively to make the gameplay experience better.
Gaming is a great domain to work on as it gives end to end exposure to the full product development lifecycle and allows engineers to grow their technical skills and knowledge as well. In case you are looking forward to working at Zynga, we are hiring for multiple game teams.
Senior Director Of Engineering