Technical Lead Programmer

Ubisoft Winnipeg logo
Posted 02 March 2022
Salary Negotiable
Job type Permanent
Contact NameDave Moss

Job description

Ubisoft Winnipeg is a tech studio with a unique mission: tasked with developing new technologies that will change the way that video game worlds are built. This is the only studio under the Ubisoft banner that is focused on exploring the unknown, developing technology that empowers game creators—at all Ubisoft Canada studios—to build even better, more immersive worlds across their major brands (such as Far Cry, Assassin’s Creed, and Watch Dogs).

As the Technical Lead Programmer, you will be the primary resource for technological issues in your field. You are a technical specialist who will assess issues in your area of expertise (technical or game console specialisation), and be accountable for the technological choices and performance of the systems. You’ll still produce code, whilst also defining best practices. You will believe in the studio’s core values and be an advocate for being a part of a collaborative team.
Your day-to-day will involve the following:

  • Oversee technical mandates from the CPI, TL or technical architect
  • Be a reference for team members for all technical issues in your field of expertise
  • Work as a senior programmer and help program high-risk elements
  • Be proactive in suggesting enhancements and technological choices
  • Assess performances on a regular basis and optimise systems whenever necessary
  • Resolve the most complex technical issues
  • Be a mentor to more junior members of the team
  • Advise the architect and/or CPI on corrective measures to meet project objectives whenever necessary
  • Work with technical directors from other working units (design, graphic design, animation, sound, etc) to ensure the efficiency of the systems that are used by other teams
  • Carry out performance assessments in collaboration with the CPI

The skills and XP you'll need to succeed:

  • Bachelor’s degree in computer science or computer engineering (or equivalent training or experience)
  • 5+ years experience in software programming, ideally in the video game industry or equivalent
  • Extensive knowledge of C/C++ programming and debugging
  • Solid proficiency in optimisation techniques
  • Excellent understanding of performance sensitive programming (algorithmic and low level optimisations)
  • Strong understanding of software development processes
  • Good understanding of software engineering principles, e.g. Object Oriented programming, etc
  • Excellent understanding of CPU and GPU bottlenecks
  • Strong 3D maths skills
  • Strong understanding of multithreaded/parallel programming