System Programmer, Unannounced IP | Programmeur·se système, titre non annoncé

Montreal, QC /
Behaviour Studios | Behaviour Studios – Programming | Programmation /
Permanent - full-time | Permanent Temps Plein
/ Hybrid
Since several work modes are offered to all our employees (100% from home, Flex, 100% in-office), job opportunities posted here are available whether you live in Quebec or Ontario, unless indicated otherwise.

We are now looking for experienced System Programmers to design, implement and refine the game experience we provide our users. In this role, you will be an integral part of the development team and will be responsible for the implementation and maintenance of the different basic functionalities in craft, optimization and adaptation from a platform to other ones.  

In this role, you will:

    • Code in C++ engine-related items.
    • Optimize both memory and performance in systems that have to scale from high-end to mobile systems.
    • Diagnose and solve common problems - such as load times, memory usage and performance problems - to improve the robustness of the engine.
    • Work closely with cross-discipline teams including programmers, designers, animators and artists.
    • Optimize the game code taking into account that some of our games will be live and online ones.
    • Be an active participant to our code review's process.

What we're looking for:

    • 3+ years of experience as a Programmer in the game industry. 
    • Strong skills in C++ programming and multithreading.
    • Experience in many different engineering areas with a special attention given to low-level code and deep optimization.
    • Well versed in software engineering principles, especially API design.
    • Strong understanding of how a game engine work and of editor concepts.
    • Familiarity with development tools and profiling on modern systems, including PC, console and mobile.
    • Experience developing in a large codebase at a fast pace, keeping the right balance between usability, performance, reliability and power.
    • Bonus point - Development experience with Unreal.
    • Bonus point - Development experience with Windows.

Dans ce rôle, vous devrez:

    • Programmer en C++ des fonctionnalités liées à l'engin.
    • Optimiser à la fois la mémoire et la performance dans des systèmes multi-plateformes.
    • Effectuer un diagnostic et résoudre des problèmes récurrents - tels que le temps de chargement, l'utilisation de la mémoire et les problèmes de performance - afin d'améliorer la performance de l'engin.
    • Travailler au sein d'une équipe pluridisciplinaire incluant programmation, art, conception et animation.
    • Optimiser le code du jeu en prenant en compte le fait que certains de nos jeux sont live et en ligne.
    • Participer activement au processus de revue de code.

Ce que nous recherchons:

    • 3+ ans d'expérience en programmation - dans l'industrie du jeu ou une industrie connexe.
    • Excellentes compétences de programmation en C++ et en multithreading.
    • Expérience dans différents domaine d'ingénierie avec une attention particulière pour le code bas niveau et les problématiques d'optimisation.
    • Bonne maîtrise des principes fondamentaux d'ingénierie, notamment le design API.
    • Excellente compréhension du fonctionnement d'un engin de jeu et des concepts d'édition.
    • Familiarité avec les outils de développement et de profiling des systèmes récents sur PC, console et mobile.
    • Expérience de développement au sein d'une base de code très développée et de gestion de l'équilibre entre la performance, la fiabilité et l'ergonomie.
    • Point bonus - Expérience de développement avec Unreal.
    • Point bonus - Expérience de développement avec Windows.
Toutes nos opportunités d'emploi sont offertes aux résidents du Québec et de l'Ontario et le mode de travail est choisi par l'employé (100% télétravail, Flex. ou 100% au bureau), sauf indication contraire.

Nous recherchons actuellement des Programmeurs·ses système pour renforcer nos équipes. Dans ce poste, vous travaillerez au sein d'une équipe cross-disciplinaire à la conception, la mise en œuvre et l'amélioration de nos systèmes de jeux.