What will you do?

  • Analyse and determine if current animation functionalities in the game meet the project’s requirements

  • Working closely with designers and gameplay programmers to implement gameplay interactions using animation technology, such as character locomotion

  • Work as a key part of an agile development team, and assist the lead with planning and review of features and mentoring less experienced programmers

  • Implement innovative solutions to feature requests, taking into account performance, maintability and appropriate resource usage

  • Participate in the definition of coding practices and ensure coding standards are followed with regular code reviews

  • Collaborate with stakeholders to gather and analyse technical constraints and establish solutions

  • Demonstrate an understanding of load and feature testing , write test code, and develop test frameworks and processes

  • Stay up-to-date with state-of-the-art technology and promote its use within the studio

  • Integrate large-scale modules or components while minimising the impact on the rest of the programming team

  • Contribute to and on occasion lead cross-studio collaboration communications in conjunction with the Lead Programmer

  • Establish and maintain contact with their counterparts within the studio, share knowledge and best practices, and put those learnings to use on their projects

  • Be involved in the optimisation of systems.

What will you bring?

  • Significant knowledge of character animation, IK, procedural or physics based animation • Strong mathematics and physics skills

  • Excellent C/C++ programming skills, with excellent knowledge of object oriented development including design patterns and UML

  • Extensive experience working with a large game codebase, and it's modules, middleware and associated pipeline

  • Deep understanding of software performance considerations, with ability to design and implement well performance systems/features

  • Significant knowledge of common algorithms, data structures and patterns, and their application

  • Proven ability to analyse unfamiliar code of a reasonable complexity to understand, extend, refactor and optimise an existing module

  • Proven ability to debug defects of a reasonable complexity, including memory related issues, multi-threading, and assembly level debugging

  • In-depth knowledge of different software development methods such as Test Driven Development, Unit Testing, Agile etc.

  • Understanding of the constraints and technical requirements for console platform development within their area

  • Excellent interpersonal and communication skills

  • Ability to mentor others

  • Bachelor’s degree in computer science or computer engineering or equivalent experience

  • 6 years commercial software development experience with significant involvement in multiple published games in a relevant programming capacity is a major plus

  • Experience working with at least one modern console platform is an advantage

  • Experience with profiling tools

  • Experience working in a multi-site collaboration environment is a plus

  • Experience with Havok Behavior, Natural Motions’ Morpheme or similar animation middleware is an advantage.

Ubisoft offers the same job opportunities to all, without any distinction of gender, ethnicity, religion, sexual orientation, social status, disability or age. Ubisoft ensures the development of an inclusive work environment which mirrors the diversity of our gamers community.