Ubisoft Montreal, an industry leading developer of video games, located in the heart of Montreal’s Mile-End, offers a unique environment where creativity, teamwork and cutting-edge technology bring to life critically acclaimed video games and iconic AAA franchises. You will benefit from a competitive compensation package, an open learning environment, and contribute to an international team driving innovation.
The generalist programmer will develop systems for a wide-range of elements including the game engine and editor or any middleware used by the production teams. The incumbent may also be called upon to work on a particular system (AI, 3D, physics, sound, animation, etc.) as part of a specific mandate.
The main and routine tasks of the generalist programmer are to:
-Program in a clear and structured manner that is in keeping with performance, maintenance, modularity, scalability and compatibility requirements; -Analyze existing system features and determine whether they meet project intentions; -Suggest improvements whenever necessary by designing and implementing new systems or enhancing existing ones; -Develop generic systems that will support the features of the specialist programmers (AI, 3D, physics, sound, animation, etc.) and facilitate integration (engine, editor or middleware); -Set out technical designs to meet system needs whenever necessary; -Support the new systems and features; -Determine and fix the bugs identified by working units and the quality control team; -Document the work to ensure knowledge transfer and help users understand the new systems and features; -Carry out all other related tasks.
Bachelor’s degree in computer science or computer engineering or equivalent.
Minimum 1-3 years’ experience in software programming, ideally in the video game industry or any other relevant experience.
Skills and Knowledge
-Expert level C++; -Good analytical and synthesis skills; -Ability to anticipate and resolve problems; -Autonomy and resourcefulness; -Attention to detail; -Flexibility in organizing work; -Good interpersonal and communication skills; -Ability to work as part of a team; -Ability to adapt to change; -Results driven -Ability to quickly learn to use new tools.