Selon les sociétés et les projets, les programmeurs, appelés aussi développeurs, ont différentes fonctions et remplissent différentes missions.
Mais toute programmation se déroule en trois phases successives : analyse (besoins informatiques du jeu), conception détaillée (écriture du programme), tests et corrections.
Le programmeur technique développe ou adapte le moteur de jeu vidéo dans son ensemble. Il fait en sorte que le jeu puisse fonctionner en synthétisant les comportements, images et sons en temps réel, tout en respectant les contraintes du support technique. Il veille ainsi à optimiser les performances du jeu.
Le programmeur technique travaille avec le programmeur jeu, qui développe les comportements interactifs de tous les objets du jeu. Il rassemble également les parties du jeu produites par les autres membres de l’équipe : les visuels des infographistes et des modeleurs 3D, les cartes et niveaux des level designers, les musiques et les bruitages des sound designers… C’est cet assemblage qui permet de former un tout cohérent pour une jouabilité maximale.
Avec le développement de la réalité virtuelle ou augmentée, de nouvelles compétences sont de plus en plus recherchées comme le développeur XR. Le développeur XR conçoit des environnements numériques de réalité étendue (expérience immersive ou enrichie, manipulation d'objet numériques...)
Le programmeur technique maîtrise naturellement les outils de développement en équipe (Perforce, SourceSafe…), les outils de VR et RA, les outils et langages de programmation C, C++, C#, Unity3D, Unreal Engine 4 et Java, sans oublier les programmations Windows et DirectX, pour les jeux connectés et Web (PHP, Ajax).
Le programmeur travaille souvent sous pression, avec des horaires très flexibles. Il doit faire preuve de rigueur et d’une grande technicité en informatique, sans jamais négliger la dimension créative. Il est autonome, mais il doit savoir travailler en équipe.