3D programmer
Montréal (Montréal)
Job description
Company Description
Ubisoft is a global leader in gaming, with teams across the world creating original and memorable experiences — from Assassin’s Creed and Rainbow Six to Just Dance and more. We believe that diverse perspectives help both players and teams thrive. If you’re passionate about innovation and pushing the boundaries of entertainment, join us on our journey and help create the unknown!
Job Description
The person in this role is responsible for the features that enable the on‑screen display of the game’s 3D universe (e.g., rendering architecture, textures, SFX, lighting, etc.).
Main Responsibilities
·
Profile and optimize the game’s GPU usage
·
Collaborate with the Technical Art Director to establish constraints and communicate to the art team the technical possibilities of various 3D features
·
Gather and understand the project’s 3D intentions, identify development needs, and analyze technical feasibility
·
Review existing 3D engine features and determine whether they meet the project’s goals
·
Propose improvements when needed by designing and implementing new systems
·
Suggest innovations inspired by other games in the industry
·
Validate and verify that newly developed and integrated 3D systems meet both specific and overall project intentions and do not create inconsistencies with existing code
·
Support the 3D features and systems developed for production
·
Identify and fix 3D bugs reported by other teams and the QA department
·
Document work to share knowledge and help other teams understand how to use 3D systems and features
·
Perform any other related tasks
Qualifications
Education
·
Bachelor’s degree in Computer Science, Computer Engineering, or any equivalent training
Relevant Experience
·
Minimum of 3 to 5 years of experience in 3D programming, ideally in the video game industry or other relevant fields
Skills and Knowledge
·
Knowledge of linear algebra
·
Understanding of GPU architecture and best practices for performance optimization
·
Familiarity with low‑level 3D APIs (DirectX, Vulkan)
·
Knowledge of shader languages
·
Asset: experience with Unreal Engine
·
Asset: experience with GPU profiling tools (RenderDoc, NVIDIA Nsight, etc.)
·
Asset: multiplatform knowledge
·
Understanding of software design best practices and memory / CPU / GPU trade‑offs
·
Strong analytical and synthesis skills
·
Problem‑solving abilities
·
Autonomy and resourcefulness
·
Attention to detail
·
Results‑oriented mindset
·
Strong interpersonal and communication skills
·
Ability to work effectively in a team
·
Ability to adapt to change