Ubisoft is committed to enriching players’ lives with original & memorable entertainment experiences. Ubisoft builds worlds that are a playground for the imagination, offering moments of surprise, fun and adventure as well as opportunities for learning and self-discovery.
With over 30 locations worldwide, 94 nationalities and 55 spoken languages, Ubisoft teams are a creative force with a diverse range of specialties in development, business and operations.
Through cross-studio collaboration and a forward-looking approach, they dream up new ideas, anticipate new technologies, and continually enhance their expertise.
From breathtaking gaming experiences to award winning marketing campaigns, Ubisoft creates engaging worlds that foster passionate communities.
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.
Main responsibilities :
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.