Company DescriptionThe 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.Job DescriptionThe 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. QualificationsTraining Bachelor’s degree in computer science or computer engineering or equivalent. Relevant Experience 5 or more years’ experience in software programming, ideally in the video game industry or any other relevant experience. Skills and Knowledge 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.