The Tools Programmer will work within a collaborative multidiscipline environment implementing and maintaining tools that promotes ease-of-use and workflow improvements within the engine to increase the productivity of the team.
The main and routine tasks of an engine programmer are:
- Develop tools to improve usability of existing user-facing engine features
- Collaborate with the team to improve the production pipeline
- Ensure coding standards are followed, and promote good programming practices within the engineering team
- Analyze existing system features, determine whether they meet project intentions and suggest improvements whenever necessary
- Diagnose and fix bugs in new and existing systems
- Bachelor’s degree in a relevant subject or equivalent industry experience
- Preferably with at least 1 year of software programming experience (ideally in game development)
- Strong knowledge in designing, developing and debugging multithreaded systems
- Strong knowledge and understanding of common game development workflows and bottlenecks
- Excellent C++ and C# programming skills, with excellent knowledge of object oriented development;
- Knowledge of common algorithms, data structures and patterns, and the ability to apply them to problems while keeping constraints and performance in mind
- Experience with commonly used development tools such as Visual Studio and Perforce
- Able to analyze unfamiliar code of a reasonable complexity to understand, extend the and refactor functionality of an existing module
- Ability to debug defects of a reasonable complexity, including memory related issues, multithreading, and assembly level debugging
- Excellent communication skills in spoken and written English
- Able to plan and estimate their own tasks and ensure timely delivery of work
- Self-motivated and pro-active with a strong work ethics
- Experience with WPF
- Experience with developing tools for existing game engines
- Knowledge of different software development methods such as Test Driven Development, Unit Testing, Agile etc.
- Strong understanding of 3D mathematics
- Shipped at least one game title
All your information will be kept confidential according to EEO guidelines.
Our top priority are our people: Ubisoft offers a world-class working environment that facilitates collaboration, open communication, and fun.
We ensure our team receive the best training, regularly sending them to trips to other Ubisoft studios around the globe. We work hard, but we play hard too. With our monthly events, parties, regular video game tournaments, music and sports clubs, you can bet that we’re serious about fun!