The AI programmer is responsible for the behaviours of the agents and characters that are not controlled by the player and of the related systems (e.g. perception, navigation, communication) that enhance the game experience.
The main and routine tasks of the AI programmer are to:
* Analyze and understand the AI needs from the creative director and game designers in terms of informatics development and assess the technical feasibility;
* Analyze existing AI features in the engine and see if they are suitable in light of the intentions;
* Whenever necessary, suggest improvements by designing and implementing new systems or modifying existing systems;
* Collaborate with designers to discuss constraints and set out the technical possibilities for the various AI features;
* Suggest innovations inspired by other games;
* Program in a clear and structured way, keeping in mind the performance, memory, maintenance, extensibility and compatibility requirements;
* Validate and verify that the newly developed systems meet the AI intentions of the project and are coherent with the existing code and optimize the systems whenever necessary;
* Work iteratively and involve designers when implementing new features;
* Work with other working units (design, animation) to develop the tools required to efficiently adjust AI systems;
* Support the AI features and systems designed for production;
* Determine and fix the AI bugs detected by the production and quality control teams;
* Document the work to share knowledge and enable users (programmers and users from other units) to understand how to use the new AI systems and features;
* Carry out all other related tasks.
Bachelor’ degree in computer science or computer engineering or equivalent training.
Minimum 5 years’ experience in AI programming in the video game sector or any other relevant experience.
Skills and Knowledge
* Good analytical and synthesis skills;
* Problem-solving skills;
* Autonomy and resourcefulness;
* Sense of initiative;
* Attention to detail;
* Flexibility in organizing work;
* Good interpersonal and communication skills;
* Ability to work as part of a team;
* Ability to adapt to change;
* Results driven.