Skip to main content

Programmer IU

Auto-translated from French · original: Programmeur.euse IU

5 day week30 days PTOOnsite · Montreal, QC, Canada

Company Description

Ubisoft is a global leader in video games, with teams spread across the four corners of the world who create original and memorable gaming experiences, from Assassin's Creed to Rainbow Six, including Just Dance and many more. We believe that diversity of perspectives drives 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 Description

The holder of this position is responsible for developing gameplay modules for general presentations (menus, HUD, etc.).

What you will do

  • Read game design documents to understand the intended gameplay experience and actively take part in design feedback discussions aimed at facilitating this experience;
  • Help define UI features and implementation, while staying aligned with the needs of the graphic designer;
  • Design and implement menu and UI systems for the desired platforms, ensuring visual and logical consistency;
  • Provide tools for UI systems and internal "draw" debugging;
  • Study and thoroughly understand the UI structure so that you can support the presentation team;
  • In collaboration with designers and other programmers, quickly propose prototypes of interaction concepts;
  • Be responsive to feedback and produce rapid iterations;
  • In collaboration with the graphic designer, integrate designs and animation;
  • Provide hooks for the graphic designer's animations and support for sound;
  • Understand UI requests and identify or review technical limitations (performance tracking and memory);
  • Work closely with designers and artists to implement new ideas, providing technical, creative and planning feedback;
  • Collaborate with the team to ensure the UI meets aesthetic and functional requirements;
  • Actively keep your knowledge and skills up to date by following the latest industry innovations;
  • Supervise and maintain the modules or systems underlying the UI;
  • Optimize UI code for efficient operation on the desired platforms;
  • Interact and collaborate with the various departments;
  • Challenge game design as well as its user experience (UX);
  • Develop automated test APIs related to UI systems to ensure the ongoing health of the game;
  • Have a solid knowledge of the ergonomic and UX principles that apply to the UI;
  • Apply your knowledge of accessibility and localization features;
  • Perform any other related tasks.

Qualifications

Education:

  • Bachelor's degree in computer science or computer engineering, or other equivalent education or experience.

Experience:

  • Minimum of 5 years of C++ programming experience in the video game or embedded systems industry, or other relevant fields.

Knowledge:

  • Ability to write clean, robust, high-performance and maintainable C++ code;
  • Excellent understanding of the MVVM philosophy and workflows;
  • Strong troubleshooting and debugging skills;
  • Solid understanding of software engineering best practices (design reviews, coding standards, code reviews, testing, documentation);
  • Strong collaboration and communication skills within a multidisciplinary environment;
  • Bonus: Experience with Unreal Engine 5, Slate and UMG;
  • Bonus: Experience with UI frameworks such as CommonUI;
  • Bonus: Experience with MVVM toolchains such as the Unreal MVVM plugin;
  • Bonus: Experience working on a PC-focused platform experience.

Skills:

  • Problem solving;
  • Attention to detail;
  • Good oral and written communication;
  • Proactive attitude at work with a sense of autonomy and ethics;
  • Motivation to take on large-scale challenges;
  • Organizational skills in defining and estimating tasks;
  • Adaptability to change;
  • Results-oriented.