Strong proficiency in C++ with tools or editor-focused systems experience.
6-8 years of professional game programming experience with shipped titles.
Professional experience with Unreal Engine, particularly in editor and tools development.
Deep understanding of tools development, data workflows, and content pipelines.
Excellent problem-solving and debugging skills.
Strong communication skills for effective collaboration across disciplines.
Experience with version control systems like Perforce or Git.
Responsibilities
Design, implement, and maintain tools, editor extensions, and standalone applications.
Build Unreal Engine editor tools using C++, Slate, and Editor Utility Widgets.
Develop standalone tools using frameworks like Qt or .NET/WPF.
Collaborate with end-users to translate workflow needs into user-friendly tools.
Integrate tools with engine systems and automation workflows.
Build automation utilities using Python or C# as needed.
Maintain and improve existing tools for performance and usability.
Benefits
Opportunity to work on AAA productions with cutting-edge technology.
Collaborative environment with a focus on mentorship and team growth.
Access to professional development resources and training.
Flexible work arrangements with a minimum in-office requirement.
Potential for overtime pay in accordance with local labor standards.
Full Job Description
Job Description
RESPONSIBILTIES
As a Senior Tools Programmer, you are responsible for designing, implementing, and maintaining tools that support efficient content creation and development. Your work spans Unreal Engine editor tools and standalone desktop applications, enabling teams to iterate quickly and safely on an AAA production. You take ownership of complex tools and contribute to the long-term evolution of tools technology and workflows.
Design, implement, and maintain tools, editor extensions, and standalone desktop applications.
Build Unreal Engine editor tools using C++, Slate, Editor Utility Widgets, or equivalent systems.
Develop standalone tools using frameworks such as Qt, .NET / WPF, or similar technologies.
Collaborate closely with end-users to understand workflow needs and translate them into practical, user-friendly tools.
Integrate tools with engine systems, asset pipelines, data processing, and automation workflows.
Build automation and utilities using Python, C#, or command-line tools where appropriate.
Maintain and improve existing tools to ensure performance, stability, and usability.
Debug complex tools issues involving editor systems, file I/O, data validation, and external integrations.
Write clean, maintainable, and well-documented code following established team standards.
Collaborate with other engineers to ensure tools scale with project complexity.
Contribute to technical discussions and provide input on tools architecture and workflow improvements.
Mentor junior programmers through technical guidance and code reviews.
RÉSUMÉ DU POSTE
À titre de programmeur senior - Outils, vous êtes responsable de la conception, de l'implémentation et de la maintenance d'outils favorisant une création de contenu et un développement efficaces. Votre travail couvre les outils d'édition d'Unreal Engine ainsi que les applications de bureau autonomes, permettant aux équipes d'itérer rapidement et de façon sécuritaire dans le cadre d'une production AAA. Vous prenez en charge des outils complexes et contribuez à l'évolution à long terme des technologies et des workflows liés aux outils.
RESPONSABILITÉS
Concevoir, implémenter et maintenir des outils, des extensions d'éditeur et des applications de bureau autonomes.
Développer des outils d'édition pour Unreal Engine à l'aide de C++, Slate, Editor Utility Widgets ou de systèmes équivalents.
Développer des outils autonomes à l'aide de frameworks tels que Qt, .NET / WPF ou des technologies similaires.
Collaborer étroitement avec les personnes qui utilisent les outils afin de comprendre leurs besoins en matière de workflows et de les traduire en outils pratiques et conviviaux.
Intégrer les outils aux systèmes du moteur, aux pipelines d'assets, au traitement des données et aux workflows d'automatisation.
Développer des automatisations et des utilitaires à l'aide de Python, C# ou d'outils en ligne de commande, selon les besoins.
Maintenir et améliorer les outils existants afin d'en assurer la performance, la stabilité et la convivialité.
Déboguer des problèmes complexes liés aux outils, notamment aux systèmes d'édition, aux entrées/sorties de fichiers, à la validation des données et aux intégrations externes.
Rédiger du code propre, maintenable et bien documenté, conformément aux normes établies par l'équipe.
Collaborer avec les autres membres de l'équipe d'ingénierie afin de veiller à ce que les outils puissent évoluer en fonction de la complexité du projet.
Contribuer aux discussions techniques et formuler des recommandations concernant l'architecture des outils et l'amélioration des workflows.
Accompagner les programmeurs juniors en leur offrant des conseils techniques et en participant aux revues de code.
Qualifications
Basic Requirements:
Strong proficiency in C++, with experience developing tools or editor-focused systems.
At least 6-8 years of professional experience in game programming, with shipped titles or equivalent production experience.
Professional experience with Unreal Engine, including editor and tools development.
Strong understanding of tools development, data workflows, and content pipelines.
Excellent problem-solving and debugging skills.
Strong communication skills and the ability to collaborate effectively across disciplines.
Experience with version control systems such as Perforce or Git.
Exigences de base :
Solide maîtrise du C++, avec une expérience en développement d'outils ou de systèmes axés sur les éditeurs.
Au moins de 6 à 8 ans d'expérience professionnelle en programmation de jeux, avec des titres commercialisés ou une expérience de production équivalente.
Expérience professionnelle avec Unreal Engine, notamment en développement d'éditeurs et d'outils.
Solide compréhension du développement d'outils, des workflows de données et des pipelines de contenu.
Excellentes compétences en résolution de problèmes et en débogage.
Excellentes aptitudes en communication et capacité à collaborer efficacement avec différentes disciplines.
Expérience avec des systèmes de contrôle de version tels que Perforce ou Git.
Desired Characteristics:
Experience building standalone desktop tools using Qt, .NET, or similar frameworks.
Experience with Python for scripting, automation, and tooling glue.
Exposure to web-enabled tools (internal dashboards, REST services, Electron-based apps).
Familiarity with asset validation, automation, and build workflows.
A passion for improving developer workflows and productivity.
Caractéristiques recherchées :
Expérience dans le développement d'outils de bureau autonomes à l'aide de Qt, .NET ou de frameworks similaires.
Expérience avec Python pour le scripting, l'automatisation et l'intégration d'outils.
Expérience avec des outils intégrant des technologies Web (tableaux de bord internes, services REST, applications basées sur Electron).
Connaissance de la validation des assets, de l'automatisation et des workflows de build.
Passion pour l'amélioration des workflows et de la productivité des équipes de développement.
Eligibility Requirements:
Interested candidates must apply to be considered.
Must be willing to work in our Montreal office a minimum of 4 days a week.
Must be willing to work overtime when required, in accordance with Quebec labor standards.
Must be legally authorized to work in Canada.
Must be willing to travel for work related business, if necessary
Conditions d'admissibilité :
Les personnes intéressées doivent soumettre leur candidature afin d'être prises en considération.
La personne retenue doit être disposée à travailler à notre bureau de Montréal au moins 4 jours par semaine.
La personne retenue doit être disposée à faire des heures supplémentaires lorsque requis, conformément aux normes du travail du Québec.
La personne retenue doit être légalement autorisée à travailler au Canada.
La personne retenue doit être disposée à voyager pour des raisons professionnelles, au besoin.
About NBCUniversal Media, LLC
NBCUniversal Media, LLC is a media and entertainment company that operates a variety of businesses, including television networks, film studios, and theme parks. The company was founded in 2004 and is headquartered in New York, New York. NBCUniversal's television networks include NBC, Telemundo, and USA Network, among others. The company's film studios produce and distribute movies under the Universal Pictures brand. NBCUniversal also operates theme parks in the United States and Japan. The company is committed to producing high-quality content and delivering it to audiences around the world.