Job Description
Ubisoft is a global leader in gaming with teams across the world creating original and memorable gaming experiences, from Assassin's Creed, Rainbow Six to Just Dance and more. We believe diverse perspectives help both players and teams thrive. If you're passionate about innovation and pushing entertainment boundaries, join our journey and help us create the unknown!
Job Description
We're looking for an Engine Programmer who will be responsible of developing and improving our in-house engine. The candidate will oversee the support and optimization of the engine and will integrate the external ''middleware'' modules used by the production.
Main responsabilities:
• Create, improve, maintain and optimize the engine's system.
• Design Systems which are simple, clear, reliable, easy to extend and maintain.
• Work on software and middleware updates (stability KPIs, performance).
• Analyze existing functionality of the engine, then identify possible improvements to meet the project requirements.
• Choose the most efficient algorithms and data structures for the task at hand (keeping constraints and performance in mind).
• Propose improvements to the needs, by designing and implementing new systems.
• Identify missing details in feature requests and break down tasks into modules that can be implemented and tested.
• Collaborate with multiple disciplines to develop efficient and productive art and content pipelines.
• Write and maintain proper documentation for the programming team as well as other job families.
• Integrate and support platform specific guidelines.
• Determine and fix the bugs identified by other production and quality control teams, doing basic maintenance.
Qualifications
• Experience in gaming industry, with 3+ years as Engine Programmer.
• Strong knowledge of modern C++.
• Strong knowledge of software engineering/architecture and design patterns.
• Excellent math skills (linear algebra, trigonometry, matrix/quaternion math).
• Experience with large engines, complex pipelines, profiling & optimization.
• Strong interpersonal and communication skills, both written and spoken in English.
• Autonomous and proactive.
• Problem-solving and open mind.
• Positive attitude and a genuine team player.
Nice to have:
• Development experience on game consoles.
• Experience in commercial Engines (such as Unreal/Unity).
• Experience in rendering, shaders, raytracing
• Knowledge of Python and scripting languages.
Jobcode: Reference SBJ-wppyoj-216-73-216-62-42 in your application.