Job Description
As our new Animation Programmer (f/m/d) at Ubisoft Düsseldorf, you will work closely with designers and gameplay programmers to implement gameplay interactions using animation technology.
What you will do:
1. Work as a key part of an agile development team, organizing and planning the implementation of features with direction from your lead.
2. Use practical solutions to implement feature requests, taking into account performance, maintainability and resource usage.
3. Development with an in-house engine, Snowdrop™, you will ensure coding standards are followed in your own and others' code.
4. Collect, interpret and analyse the technical feasibility of system/feature specifications.
5. Write clear and well-structured code using the appropriate data structure and algorithms while bearing in mind performance, maintenance and architectural requirements.
6. Include comments in the code and document implemented features.
7. Demonstrate an understanding of the basics of load testing and game feature testing and write test code.
8. Stay up-to-date with technology advances within the field.
9. Perform code reviews for peers.
10. Extract and interpret relevant runtime system resource information (disk IO, network, CPU, memory, etc).
Qualifications
What you bring:
11. Knowledge of character animation, IK, procedural or physics based animation.
12. Good mathematics and physics skills.
13. Very good C/C++ programming skills, with very good knowledge of object oriented development including design patterns and UML.
14. Experience working with a large game codebase, and it's modules, middleware and associated pipeline.
15. Understanding of speed and memory considerations, and able to implement basic optimizations.
16. Knowledge of common algorithms, data structures and patterns, and their application.
17. Ability to analyse unfamiliar code of a reasonable complexity to understand, extend and refactor an existing module.
18. Ability to debug defects of a reasonable complexity, including memory related issues, and multi-threading.
19. Knowledge of different software development methods such as Test Driven Development, Unit Testing, Agile etc.
20. Understanding the constraints and technical requirements for console platform development within their area.
21. Ability to adapt to change.
22. Good interpersonal and communication skills.
What to send our way:
23. Your CV, highlighting your education, experience and skills.
24. A cover letter including your earliest starting date, expected salary and why you would like to join us.