NBCUniversal company logo

NBCUniversal is hiring a Senior Programmer (AI, Engine, Rendering, UI)

Get the latest jobs to your inbox!

Job Description

As a Senior Programmer, you are responsible for designing, implementing, and maintaining core systems within Unreal Engine that support gameplay, visuals, AI behaviour, and user experience. You work on performance‑critical systems and collaborate closely with multidisciplinary teams to ensure features are scalable, maintainable, and production‑ready. You take ownership of complex systems within your specialization while contributing to the overall technical direction of the project. 

Core Responsibilities (All Specializations) 

  • Design, implement, and maintain systems and features within Unreal Engine. 

  • Translate design and technical requirements into clean, maintainable, and scalable C++ code. 

  • Collaborate closely with designers, artists, and other engineers to integrate features across systems. 

  • Optimize systems for performance, memory usage, and scalability across supported platforms. 

  • Maintain and improve existing code to ensure stability during rapid iteration and production milestones. 

  • Debug complex issues across systems, ensuring robust and reliable behaviour. 

  • Participate in profiling, performance analysis, and optimization efforts. 

  • Write clean, well‑documented code that follows team standards and best practices. 

  • Participate in playtests and reviews to identify issues, edge cases, and improvement opportunities. 

  • Contribute to technical discussions and provide input on architecture, workflows, and long‑term direction. 

  • Mentor junior programmers through technical guidance, collaboration, and code reviews. 

  • Stay current with Unreal Engine updates and industry best practices in real‑time development. 

Engine Specialization 

  • Design, implement, and maintain core engine‑level systems such as memory management, threading, streaming, and platform abstraction. 

  • Develop low‑level systems supporting gameplay, rendering, tools, and pipelines. 

  • Optimize engine systems for CPU performance, memory usage, and scalability. 

  • Debug complex engine issues involving multithreading, performance bottlenecks, and cross‑system interactions. 

  • Support Unreal Engine source modifications, upgrades, and platform integrations. 

Rendering Specialization 

  • Design, implement, and maintain rendering systems and features within Unreal Engine. 

  • Work on shaders, materials, lighting, post‑processing, and rendering pipelines. 

  • Collaborate with Art and Tech Art to deliver high‑quality visuals within performance targets. 

  • Optimize rendering for GPU performance, memory usage, and scalability. 

  • Debug rendering issues involving shaders, lighting, GPU performance, and visual artefacts. 

  • Work with Unreal rendering frameworks and profiling tools to improve visual performance. 

AI Specialization 

  • Design and implement AI systems using behaviour trees, state machines, and decision‑making frameworks. 

  • Develop systems for navigation, perception, and gameplay‑driven AI behaviours. 

  • Collaborate with designers to build flexible, data‑driven AI systems. 

  • Optimize AI systems for runtime performance, scalability, and stability. 

  • Debug complex AI interactions across gameplay, animation, and simulation layers. 

  • Contribute to AI architecture and systemic gameplay behaviours. 

UI Specialization 

  • Design, implement, and maintain UI systems and frameworks within Unreal Engine. 

  • Build user interfaces such as HUDs, menus, overlays, and in‑game tools using UMG / Slate. 

  • Integrate UI with gameplay, input, animation, and data systems. 

  • Develop systems for navigation, focus management, state handling, and data binding. 

  • Optimize UI performance, memory usage, and responsiveness across platforms. 

  • Debug UI issues involving data flow, input handling, animation, and layout. 

  • Collaborate closely with UI/UX designers to ensure usability and polish.

À titre de programmeur(-euse) principal(e), vous êtes responsable de la conception, de l’implantation et de la maintenance des systèmes fondamentaux dans Unreal Engine qui soutiennent le gameplay, les visuels, les comportements de l’IA et l’expérience utilisateur. Vous travaillez sur des systèmes critiques pour la performance et collaborez étroitement avec des équipes multidisciplinaires afin d’assurer que les fonctionnalités soient évolutives, maintenables et prêtes pour la production. Vous assumez la responsabilité de systèmes complexes dans votre domaine de spécialisation tout en contribuant à l’orientation technique globale du projet. 

Responsabilités principales (toutes les spécialisations) 

  • Concevoir, implanter et maintenir des systèmes et fonctionnalités dans Unreal Engine. 

  • Traduire les exigences de conception et les besoins techniques en code C++ propre, maintenable et évolutif. 

  • Collaborer étroitement avec les concepteurs, artistes et autres programmeurs afin d’intégrer les fonctionnalités à travers les différents systèmes. 

  • Optimiser les systèmes pour la performance, l’utilisation de la mémoire et l’évolutivité sur les plateformes prises en charge. 

  • Maintenir et améliorer le code existant afin d’assurer la stabilité pendant les phases d’itération rapide et les jalons de production. 

  • Déboguer des problèmes complexes touchant plusieurs systèmes afin d’assurer un comportement robuste et fiable. 

  • Participer aux activités de profilage, d’analyse de performance et d’optimisation. 

  • Écrire un code clair et bien documenté qui respecte les normes et les meilleures pratiques de l’équipe. 

  • Participer aux séances de jeu et aux revues afin d’identifier les problèmes, les cas limites et les occasions d’amélioration. 

  • Contribuer aux discussions techniques et fournir des recommandations concernant l’architecture, les processus de travail et l’orientation à long terme. 

  • Encadrer les programmeurs juniors grâce au mentorat technique, à la collaboration et aux révisions de code. 

  • Maintenir ses connaissances à jour quant aux nouveautés d’Unreal Engine et aux meilleures pratiques de l’industrie en développement temps réel. 

Spécialisation – Moteur (Engine) 

  • Concevoir, implanter et maintenir des systèmes fondamentaux du moteur tels que la gestion de la mémoire, le multithreading, le streaming et l’abstraction des plateformes. 

  • Développer des systèmes de bas niveau soutenant le gameplay, le rendu, les outils et les pipelines. 

  • Optimiser les systèmes du moteur pour la performance CPU, l’utilisation de la mémoire et l’évolutivité. 

  • Déboguer des problèmes complexes liés au moteur, notamment en matière de multithreading, de goulots d’étranglement de performance et d’interactions entre systèmes. 

  • Soutenir les modifications du code source d’Unreal Engine, les mises à niveau du moteur et les intégrations de plateformes. 

Spécialisation – Rendu (Rendering) 

  • Concevoir, implanter et maintenir des systèmes et fonctionnalités de rendu dans Unreal Engine. 

  • Travailler sur les shaders, les matériaux, l’éclairage, le post-traitement et les pipelines de rendu. 

  • Collaborer avec les équipes Artistique et Art Technique afin d’offrir des visuels de haute qualité tout en respectant les objectifs de performance. 

  • Optimiser le rendu pour la performance GPU, l’utilisation de la mémoire et l’évolutivité. 

  • Déboguer les problèmes de rendu liés aux shaders, à l’éclairage, à la performance GPU et aux artefacts visuels. 

  • Utiliser les cadres de travail de rendu d’Unreal et les outils de profilage afin d’améliorer les performances visuelles. 

Spécialisation – Intelligence artificielle (IA) 

  • Concevoir et implanter des systèmes d’IA à l’aide d’arbres de comportement (Behavior Trees), de machines à états et de cadres décisionnels. 

  • Développer des systèmes de navigation, de perception et de comportements d’IA orientés gameplay. 

  • Collaborer avec les concepteurs afin de créer des systèmes d’IA flexibles et pilotés par les données. 

  • Optimiser les systèmes d’IA pour la performance en exécution, l’évolutivité et la stabilité. 

  • Déboguer des interactions complexes entre l’IA, le gameplay, l’animation et les systèmes de simulation. 

  • Contribuer à l’architecture de l’IA et aux comportements systémiques du gameplay. 

Spécialisation – Interface utilisateur (UI) 

  • Concevoir, implanter et maintenir des systèmes et cadres de travail d’interface utilisateur dans Unreal Engine. 

  • Développer des interfaces utilisateur telles que des HUD, menus, superpositions et outils en jeu à l’aide de UMG / Slate. 

  • Intégrer l’interface utilisateur aux systèmes de gameplay, d’entrées, d’animation et de données. 

  • Développer des systèmes de navigation, de gestion du focus, de gestion d’état et de liaison de données. 

  • Optimiser la performance, l’utilisation de la mémoire et la réactivité des interfaces sur les différentes plateformes. 

  • Déboguer les problèmes d’interface liés au flux de données, à la gestion des entrées, à l’animation et à la disposition visuelle. 

  • Collaborer étroitement avec les concepteurs UI/UX afin d’assurer une excellente convivialité et une finition soignée.

Sponsored
⭐ Featured Partner

Explore Biotech Careers

Discover exciting opportunities in biotechnology. Join innovative companies that are advancing healthcare and life sciences through cutting-edge research and development.

Remote FriendlyCompetitive SalaryBiotech

Salary Information

Salary: $130,000 - $165,000

🤖 This salary estimate is calculated by AI based on the job title, location, company, and market data. Use this as a guide for salary expectations or negotiations. The actual salary may vary based on your experience, qualifications, and company policies.

Compare salaries in Montréal

Create a Job Alert

Interested in building your career at NBCUniversal? Get future opportunities sent straight to your email.

Create Alert

Related Opportunities

Discover similar positions that might interest you