Skip to main content

Technical Lead - UI Programmer

Auto-translated from French · original: Chef.fe Technique - Programmeur.meuse IU

4 × 8hr days80% payOnsite · Montreal, Canada

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 more. We believe that diverse perspectives help both players and teams grow. If you are passionate about innovation and want to push the boundaries of entertainment, join our adventure and help us create the unknown!

Job Description

The Senior UI Programmer – Technical Lead is the primary technical reference for all user interface systems on the project.

This person acts as the bridge between engineering, UI integration, and technical art, ensuring that every interface element is delivered with the level of polish, performance, and accessibility expected of a AAA first-person shooter.

What you will do

Technical Leadership

  • Serve as the reference for all UI technologies on the project: Snowdrop UI framework, game-specific UI systems, and tools
  • Manage the UI technical roadmap: architecture decisions, framework upgrades, and deprecations
  • Define and enforce UI coding standards, component patterns, and integration workflows
  • Identify and resolve bottlenecks that hinder the work of UI integrators and technical artists

Team Supervision

  • Supervise a team of UI integrators and technical artists working in the visual graph editor (UI Graph)
  • Review and validate work in terms of accuracy, performance, and adherence to design intent
  • Mentor team members, conduct code and asset reviews, and provide clear, actionable feedback
  • Collaborate with UX/UI designers to ensure technical implementation matches design intent

Engineering

  • Implement and maintain UI features in gameplay, menus, HUD, and front-end interface
  • Create and extend UI scripts in the visual graph language (UI Graph); support team members in its use
  • Design reusable and scalable UI components based on modularization principles — prioritize maintainability and reusability over one-off solutions
  • Implement adaptive layouts supporting multiple target devices, screen sizes, and resolutions
  • Integrate accessibility requirements (text scaling, colorblind modes, controller navigation, screen reader support)

Performance and Stability

  • Profile UI rendering and logic; identify and resolve areas of poor performance (overdraw, excessive draw calls, expensive graph evaluations)
  • Support and triage UI-related crashes; lead retrospective analyses and drive fixes to completion
  • Establish and monitor UI performance budgets in collaboration with the engine team

Design Partnership

  • Apply and advocate for fundamental design principles in all technical decisions: consistency, simplicity, and clear user feedback
  • Challenge implementations that compromise ergonomics, even when they are technically correct

Qualifications

What you will bring to the team

Essential Skills

  • Participated in the release of at least two AAA titles with significant responsibility in UI programming
  • Solid experience with a visual, node-based UI scripting system (UI Graph or equivalent)
  • Proven ability to profile and optimize UI in a real-time engine
  • Experience debugging and resolving crashes in a game in production
  • Proven experience supervising or mentoring UI integrators or junior programmers
  • Strong mastery of UI architecture: component hierarchies, data binding, state management

Major Assets

  • Knowledge of responsive/adaptive UI design for multiplatform titles

Success Criteria

After six months, this person has become the reference for any technical question related to the UI on the project; the team works without hindrance and produces quality work; and the UI systems are stable, performant, and easy to extend.