Digital games developer

Description

Digital games developers program, implement and document digital games. They implement technical standards in gameplay, graphics, sound and functionality.

Includes people performing managerial activities.

Other titles

The following job titles also refer to digital games developer:

video games developer
digital game developer
games programmer
digital games developers
virtual games developer
computer games developer

Minimum qualifications

Bachelor’s degree is generally required to work as digital games developer. However, this requirement may differ in some countries.

ISCO skill level

ISCO skill level is defined as a function of the complexity and range of tasks and duties to be performed in an occupation. It is measured on a scale from 1 to 4, with 1 the lowest level and 4 the highest, by considering:

  • the nature of the work performed in an occupation in relation to the characteristic tasks and duties
  • the level of formal education required for competent performance of the tasks and duties involved and
  • the amount of informal on-the-job training and/or previous experience in a related occupation required for competent performance of these tasks and duties.

Digital games developer is a Skill level 4 occupation.

Digital games developer career path

Similar occupations

These occupations, although different, require a lot of knowledge and skills similar to digital games developer.

embedded systems software developer
ICT system developer
ICT application developer
ICT application configurator
mobile application developer

Long term prospects

These occupations require some skills and knowledge of digital games developer. They also require other skills and knowledge, but at a higher ISCO skill level, meaning these occupations are accessible from a position of digital games developer with a significant experience and/or extensive training.

Essential knowledge and skills

Essential knowledge

This knowledge should be acquired through learning to fulfill the role of digital games developer.

Digital game genres: The classification of video games based on their interaction with the game media, such as simulation games, strategy games, adventure games and arcade games.
Computer programming: The techniques and principles of software development, such as analysis, algorithms, coding, testing and compiling of programming paradigms (e.g. object oriented programming, functional programming) and of programming languages.
3d texturing: The process of applying a type of surface to a 3D image.
Ict debugging tools: The ICT tools used to test and debug programs and software code, such as GNU Debugger (GDB), Intel Debugger (IDB), Microsoft Visual Studio Debugger, Valgrind and WinDbg.
3d lighting: The arrangement or digital effect which simulates lighting in a 3D environment.
Integrated development environment software: The suite of software development tools for writing programs, such as compiler, debugger, code editor, code highlights, packaged in a unified user interface, such as Visual Studio or Eclipse.
Tools for software configuration management: The software programs to perform configuration identification, control, status accounting and audit, such as CVS, ClearCase, Subversion, GIT and TortoiseSVN perform this management.

Essential skills and competences

These skills are necessary for the role of digital games developer.

Utilise computer-aided software engineering tools: Use software tools (CASE) to support the development lifecycle, design and implementation of software and applications of high-quality that can be easily maintained.
Apply 3d imaging techniques: Implement a variety of techniques such as digital sculpting, curve modelling and 3D scanning to create, edit, preserve and use 3D images, such as point clouds, 3D vector graphic and 3D surface shapes.
Debug software: Repair computer code by analysing testing results, locating the defects causing the software to output an incorrect or unexpected result and removing these faults.
Use software design patterns: Utilise reusable solutions, formalised best practices, to solve common ICT development tasks in software development and design.
Execute analytical mathematical calculations: Apply mathematical methods and make use of calculation technologies in order to perform analyses and devise solutions to specific problems.
Develop software prototype: Create a first incomplete or preliminary version of a piece of software application to simulate some specific aspects of the final product.
Interpret technical texts: Read and understand technical texts that provide information on how to perform a task, usually explained in steps.
Use software libraries: Utilise collections of codes and software packages which capture frequently used routines to help programmers simplify their work.
Render 3d images: Use specialised tools to convert 3D wire frame models into 2D images with 3D photorealistic effects or non-photorealistic rendering on a computer.
Analyse software specifications: Assess the specifications of a software product or system to be developed by identifying functional and non-functional requirements, constraints and possible sets of use cases which illustrate interactions between the software and its users.

Optional knowledge and skills

Optional knowledge

This knowledge is sometimes, but not always, required for the role of digital games developer. However, mastering this knowledge allows you to have more opportunities for career development.

Haskell: The techniques and principles of software development, such as analysis, algorithms, coding, testing and compiling of programming paradigms in Haskell.
Kdevelop: The computer program KDevelop is a suite of software development tools for writing programs, such as compiler, debugger, code editor, code highlights, packaged in a unified user interface. It is developed by the software community KDE.
Sas language: The techniques and principles of software development, such as analysis, algorithms, coding, testing and compiling of programming paradigms in SAS language.
Ruby (computer programming): The techniques and principles of software development, such as analysis, algorithms, coding, testing and compiling of programming paradigms in Ruby.
Common lisp: The techniques and principles of software development, such as analysis, algorithms, coding, testing and compiling of programming paradigms in Common Lisp.
Apache maven: The tool Apache Maven is a software program to perform configuration identification, control, status accounting and audit of software during its development and maintenance.
Lisp: The techniques and principles of software development, such as analysis, algorithms, coding, testing and compiling of programming paradigms in Lisp.
Visual studio .net: The techniques and principles of software development, such as analysis, algorithms, coding, testing and compiling of programming paradigms in Visual Basic.
Java (computer programming): The techniques and principles of software development, such as analysis, algorithms, coding, testing and compiling of programming paradigms in Java.
Prolog (computer programming): The techniques and principles of software development, such as analysis, algorithms, coding, testing and compiling of programming paradigms in Prolog.
Openedge advanced business language: The techniques and principles of software development, such as analysis, algorithms, coding, testing and compiling of programming paradigms in OpenEdge Advanced Business Language.
Javascript: The techniques and principles of software development, such as analysis, algorithms, coding, testing and compiling of programming paradigms in JavaScript.
Perl: The techniques and principles of software development, such as analysis, algorithms, coding, testing and compiling of programming paradigms in Perl.
Php: The techniques and principles of software development, such as analysis, algorithms, coding, testing and compiling of programming paradigms in PHP.
Software anomalies: The deviations of what is standard and exceptional events during software system performance, identification of incidents that can alter the flow and the process of system execution.
Xcode: The computer program Xcode is a suite of software development tools for writing programs, such as compiler, debugger, code editor, code highlights, packaged in a unified user interface. It is developed by the software company Apple.
Assembly (computer programming): The techniques and principles of software development, such as analysis, algorithms, coding, testing and compiling of programming paradigms in Assembly.
C#: The techniques and principles of software development, such as analysis, algorithms, coding, testing and compiling of programming paradigms in C#.
R: The techniques and principles of software development, such as analysis, algorithms, coding, testing and compiling of programming paradigms in R.
Groovy: The techniques and principles of software development, such as analysis, algorithms, coding, testing and compiling of programming paradigms in Groovy.
Asp.net: The techniques and principles of software development, such as analysis, algorithms, coding, testing and compiling of programming paradigms in ASP.NET.
Apl: The techniques and principles of software development, such as analysis, algorithms, coding, testing and compiling of programming paradigms in APL.
Object-oriented modelling: The object-oriented paradigm, which is based on classes, objects, methods and interfaces and their application in software design and analysis, programming organisation and techniques.
Puppet (tools for software configuration management): The tool Puppet is a software program to perform configuration identification, control, status accounting and audit.
Staf: The tool STAF is a software program to perform configuration identification, control, status accounting and audit.
Eclipse (integrated development environment software): The computer program Eclipse is a suite of software development tools for writing programs, such as compiler, debugger, code editor, code highlights, packaged in a unified user interface. It is developed by the Eclipse Foundation.
Ansible: The tool Ansible is a software program to perform configuration identification, control, status accounting and audit.
Microsoft visual c++: The computer program Visual C++ is a suite of software development tools for writing programs, such as compiler, debugger, code editor, code highlights, packaged in a unified user interface. It is developed by the software company Microsoft.
Typescript: The techniques and principles of software development, such as analysis, algorithms, coding, testing and compiling of programming paradigms in TypeScript.
World wide web consortium standards: The standards, technical specifications and guidelines developed by the international organisation World Wide Web Consortium (W3C) which allow the design and development of web applications.
Trigonometry: The subdiscipline of mathematics which explores relationships among angles and lengths of triangles.
Objective-c: The techniques and principles of software development, such as analysis, algorithms, coding, testing and compiling of programming paradigms in Objective-C.
Ml (computer programming): The techniques and principles of software development, such as analysis, algorithms, coding, testing and compiling of programming paradigms in ML.
Ajax: The techniques and principles of software development, such as analysis, algorithms, coding, testing and compiling of programming paradigms in AJAX.
C++: The techniques and principles of software development, such as analysis, algorithms, coding, testing and compiling of programming paradigms in C++.
Sap r3: The techniques and principles of software development, such as analysis, algorithms, coding, testing and compiling of programming paradigms in SAP R3.
Swift (computer programming): The techniques and principles of software development, such as analysis, algorithms, coding, testing and compiling of programming paradigms in Swift.
Matlab: The techniques and principles of software development, such as analysis, algorithms, coding, testing and compiling of programming paradigms in MATLAB.
Salt (tools for software configuration management): The tool Salt is a software program to perform configuration identification, control, status accounting and audit.
Python (computer programming): The techniques and principles of software development, such as analysis, algorithms, coding, testing and compiling of programming paradigms in Python.
Scratch (computer programming): The techniques and principles of software development, such as analysis, algorithms, coding, testing and compiling of programming paradigms in Scratch.
Vbscript: The techniques and principles of software development, such as analysis, algorithms, coding, testing and compiling of programming paradigms in VBScript.
Cobol: The techniques and principles of software development, such as analysis, algorithms, coding, testing and compiling of programming paradigms in COBOL.
Pascal (computer programming): The techniques and principles of software development, such as analysis, algorithms, coding, testing and compiling of programming paradigms in Pascal.
Abap: The techniques and principles of software development, such as analysis, algorithms, coding, testing and compiling of programming paradigms in ABAP.
Internet of things: The general principles, categories, requirements, limitations and vulnerabilities of smart connected devices (most of them with intended internet connectivity).
Jenkins (tools for software configuration management): The tool Jenkins is a software program to perform configuration identification, control, status accounting and audit of software during its development and maintenance.
Scala: The techniques and principles of software development, such as analysis, algorithms, coding, testing and compiling of programming paradigms in Scala.

Optional skills and competences

These skills and competences are sometimes, but not always, required for the role of digital games developer. However, mastering these skills and competences allows you to have more opportunities for career development.

Provide technical documentation: Prepare documentation for existing and upcoming products or services, describing their functionality and composition in such a way that it is understandable for a wide audience without technical background and compliant with defined requirements and standards. Keep documentation up to date.
Use concurrent programming: Utilise specialised ICT tools to create programs that can execute concurrent operations by splitting programs into parallel processes and, once computed, combining the outcomes together.
Use logic programming: Utilise specialised ICT tools to create computer code composed of series of sentences in logical form, expressing rules and facts about some problem domain. Use programming languages which support this method such as Prolog, Answer Set Programming and Datalog.
Use object-oriented programming: Utilise specialised ICT tools to create computer code based on the concept of an “object” which is an abstract data type encapsulated with a set of “methods”, which operate on the data.  Use programming languages which support this method such as  JAVA and C++.
Use automatic programming: Utilise specialised software tools to generate computer code from specifications, such as diagrams, structured informations or other means of describing functionality.
Develop virtual game engine: Create a virtual software framework that abstracts the details of doing common game-related tasks.
Develop creative ideas: Developing new artistic concepts and creative ideas.
Create flowchart diagram: Compose a diagram that illustrates systematic progress through a procedure or system using connecting lines and a set of symbols.
Use functional programming: Utilise specialised ICT tools to create computer code which treats computation as the evaluation of mathematical functions and seeks to avoid state and mutable data. Use programming languages which support this method such as LISP, PROLOG and Haskell.
Integrate system components: Select and use integration techniques and tools to plan and implement integration of hardware and software modules and components in a system. Apply specific testing techniques to ensure integrity during system integration.
Adapt to changes in technological development plans: Modify the current design and development activities of technological projects to meet changes in requests or strategies. Ensure that the organisation’s or client’s needs are met and that any sudden requests which were not previously planned are implemented.
Design user interface: Create software or device components which enable interaction between humans and systems or machines, using appropriate techniques, languages and tools so as to streamline interaction while using the system or machine.

ISCO group and title

2513 – Web and multimedia developers

 

 


 

 

References
  1. Digital games developer – ESCO
Last updated on August 8, 2022