About the role
Company Description
Ubisoft is a world leader in video games, with teams spread across the globe creating original and memorable gaming experiences, from Assassin’s Creed to Rainbow Six, Just Dance, and many others. We believe that diverse perspectives drive progress for both players and teams. If you are passionate about innovation and want to push the boundaries of entertainment, join our adventure and help us create the unknown.
Job Responsibilities
As a Lead 3D Programming Team Lead at Ubisoft Montreal, you will guide the development and optimization of the project's 3D systems while collaborating closely with technical and artistic teams to ensure a coherent and high-performance vision.
- Profile and optimize GPU usage to ensure high performance.
- Collaborate with graphic technical leadership to define constraints and communicate technical possibilities to art teams.
- Analyze the project's 3D intentions and evaluate the technical feasibility of identified needs.
- Evaluate existing engine 3D features and their suitability for project goals.
- Design and implement new 3D systems as needed.
- Propose improvements and innovations inspired by industry practices.
- Validate that new 3D systems meet project intentions and integrate with existing code.
- Support 3D systems and features during production.
- Identify and fix 3D bugs reported by development and quality assurance teams.
- Document systems to facilitate knowledge sharing and their use by other departments.
Qualifications
- Degree in Computer Science or Computer Engineering (or equivalent training).
- Minimum of 7 years of experience in programming.
- Solid knowledge of linear algebra applied to 3D programming.
- Mastery of GPU architecture and performance optimization practices.
- Practical experience with low-level 3D APIs such as DirectX or Vulkan.
- Understanding of shader languages and their integration.
- Knowledge of software design best practices and CPU/GPU memory trade-offs.
- Ability to analyze and solve complex problems.
- Clear communication and effective collaboration with multidisciplinary teams.
- Adaptability and comfort in an evolving environment.
- Knowledge of Unreal Engine 5 (or similar engines).
- Knowledge of GPU profiling tools (RenderDoc, NVIDIA Nsight, etc.).