Introduction
In this report, I will be delving a little deeper into the game development industry as a whole and analyse two job roles as well as compare them.
Programmer
Game Programmers work at the heart of the game development process. They design and write the computer code that runs and controls the game, incorporating and adapting any ready-made code libraries and writing custom code as required. They test the code and fix bugs, and also develop customised tools for use by other members of the development team.
Responsibilities and Duties
The responsibilities and duties of a games programmer are as follows:
- Collaborate with Managers and team members to develop innovative game applications.
- Assist in the development of new games or updating existing games.
- Work in a team to meet project milestones within allotted timelines.
- Develop and maintain codes for game programs.
- Perform debugging and troubleshooting of game applications.
- Develop network protocols and systems to support online play.
- Work closely with design teams to tune and enhance game dynamics.
- Document design specifications to support the development of a game application.
- Ensure that game application meets functional and performance requirements.
- Assist in quality assurance assessment of the game application to ensure quality and reliability.
- Stay abreast with latest technology developments in the gaming industry.
- Support and guide other programmers when needed.
- Document the gaming codes for future use and references.
DevOps Engineer
As games begin to become more and more focused on online features, it’s becoming vital to have an engineer dedicated to creating and maintaining that infrastructure. Due to the way games are run, each individual user of a multiplayer or online game will have an instance of the game running locally that interacts with web services in the background. This may be something as simple as the price of an item in an online store fluctuating for different players, or as complex as combat systems that combine inputs from multiple players to determine who is the winner! A DevOps Engineer is responsible for making sure all of this works cohesively for all the players. Most DevOps developers will design and build the entire system themselves, either alone or with a team.
Responsibilities and Duties
- Collaborate with Managers and team members to develop networks
- Assist in the development of new networks or updating existing networks.
- Work in a team to meet project milestones within allotted timelines.
- Develop and maintain codes for networks.
- Perform debugging and troubleshooting of networks.
- Ensure that network meets functional and performance requirements.
- Assist in quality assurance assessment of network to ensure quality and reliability.
- Stay abreast with latest technology developments in the gaming industry.
- Document the network codes for future use and references.
Employment
Generally, people will be employed full time by a games studio, however, they can also be employed part-time so that the games studio only has to pay them to work on a specific game. Another employment route for people is freelancing. This is where they will do work for a person/company for a price of their choice. While this does sound very enticing, note that it is harder to find work this way.