05 Aug
|
NBCUniversal
|
Montreal
05 Aug
NBCUniversal
Montreal
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 performancecritical systems and collaborate closely with multidisciplinary teams to ensure features are scalable, maintainable, and productionready.
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, welldocumented 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 longterm direction.
Mentor junior programmers through technical guidance, collaboration, and code reviews.
Stay current with Unreal Engine updates and industry best practices in realtime development.
Engine Specialization Design, implement, and maintain core enginelevel systems such as memory management, threading, streaming, and platform abstraction.
Develop lowlevel 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 crosssystem 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, postprocessing, and rendering pipelines.
Collaborate with Art and Tech Art to deliver highquality 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 decisionmaking frameworks.
Develop systems for navigation, perception, and gameplaydriven AI behaviours.
Collaborate with designers to build flexible, datadriven 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 ingame 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 limplantation et de la maintenance des systmes fondamentaux dans Unreal Engine qui soutiennent le gameplay, les visuels, les comportements de lIA et lexprience utilisateur.
Vous travaillez sur des systmes critiques pour la performance et collaborez troitement avec des quipes multidisciplinaires afin dassurer que les fonctionnalits soient volutives,
maintenables et prtes pour la production.
Vous assumez la responsabilit de systmes complexes dans votre domaine de spcialisation tout en contribuant lorientation technique globale du projet.
Responsabilits principales (toutes les spcialisations) Concevoir, implanter et maintenir des systmes et fonctionnalits 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 dintgrer les fonctionnalits travers les diffrents systmes.
Optimiser les systmes pour la performance, lutilisation de la mmoire et lvolutivit sur les plateformes prises en charge.
Maintenir et amliorer le code existant afin dassurer la stabilit pendant les phases ditration rapide et les jalons de production.
Dboguer des problmes complexes touchant plusieurs systmes afin dassurer un comportement robuste et fiable.
Participer aux activits de profilage, danalyse de performance et doptimisation. crire un code clair et bien document qui respecte les normes et les meilleures pratiques de lquipe.
Participer aux sances de jeu et aux revues afin didentifier les problmes, les cas limites et les occasions damlioration.
Contribuer aux discussions techniques et fournir des recommandations concernant larchitecture, les processus de travail et lorientation long terme.
Encadrer les programmeurs juniors grce au mentorat technique, la collaboration et aux rvisions de code.
Maintenir ses connaissances jour quant aux nouveauts dUnreal Engine et aux meilleures pratiques de lindustrie en dveloppement temps rel.
Spcialisation Moteur (Engine) Concevoir, implanter et maintenir des systmes fondamentaux du moteur tels que la gestion de la mmoire, le multithreading, le streaming et labstraction des plateformes.
Dvelopper des systmes de bas niveau soutenant le gameplay, le rendu, les outils et les pipelines.
Optimiser les systmes du moteur pour la performance CPU, lutilisation de la mmoire et lvolutivit.
Dboguer des problmes complexes lis au moteur, notamment en matire de multithreading, de goulots dtranglement de performance et dinteractions entre systmes.
Soutenir les modifications du code source dUnreal Engine, les mises niveau du moteur et les intgrations de plateformes.
Spcialisation Rendu (Rendering) Concevoir, implanter et maintenir des systmes et fonctionnalits de rendu dans Unreal Engine.
Travailler sur les shaders, les matriaux, lclairage, le post-traitement et les pipelines de rendu.
Collaborer avec les quipes Artistique et Art Technique afin doffrir des visuels de haute qualit tout en respectant les objectifs de performance.
Optimiser le rendu pour la performance GPU, lutilisation de la mmoire et lvolutivit.
Dboguer les problmes de rendu lis aux shaders, lclairage, la performance GPU et aux artefacts visuels.
Utiliser les cadres de travail de rendu dUnreal et les outils de profilage afin damliorer les performances visuelles.
Spcialisation Intelligence artificielle (IA) Concevoir et implanter des systmes dIA laide darbres de comportement (Behavior Trees), de machines tats et de cadres dcisionnels.
Dvelopper des systmes de navigation, de perception et de comportements dIA orients gameplay.
Collaborer avec les concepteurs afin de crer des systmes dIA flexibles et pilots par les donnes.
Optimiser les systmes dIA pour la performance en excution, lvolutivit et la stabilit.
Dboguer des interactions complexes entre lIA, le gameplay, lanimation et les systmes de simulation.
Contribuer larchitecture de lIA et aux comportements systmiques du gameplay.
Spcialisation Interface utilisateur (UI) Concevoir, implanter et maintenir des systmes et cadres de travail dinterface utilisateur dans Unreal Engine.
Dvelopper des interfaces utilisateur telles que des HUD, menus,
superpositions et outils en jeu laide de UMG / Slate.
Intgrer linterface utilisateur aux systmes de gameplay, dentres, danimation et de donnes.
Dvelopper des systmes de navigation, de gestion du focus, de gestion dtat et de liaison de donnes.
Optimiser la performance, lutilisation de la mmoire et la ractivit des interfaces sur les diffrentes plateformes.
Dboguer les problmes dinterface lis au flux de donnes, la gestion des entres, lanimation et la disposition visuelle.
Collaborer troitement avec les concepteurs UI/UX afin dassurer une excellente convivialit et une finition soigne.
Qualifications Strong proficiency in C++, with experience developing systems in Unreal Engine.
At least 68 years of professional experience in game programming, with shipped titles or equivalent production experience.
Qualified, handson experience working with Unreal Engine (including engine features relevant to your specialization).
Strong understanding of realtime systems development, including performance, memory, and scalability considerations.
Excellent problemsolving and debugging skills for complex runtime systems.
Ability to collaborate effectively within multidisciplinary teams (design, art, production, engineering).
Strong communication skills and a proactive approach to technical ownership.
Experience with version control systems such as Perforce or Git.
Desired Characteristics: Experience working on AAA or largescale game productions.
Experience optimizing systems for performance and memory across platforms.
Familiarity with Unreal Engine source code and enginelevel customization.
Experience mentoring or supporting other engineers.
Strong understanding of gameplay systems and player experience.
Passion for building scalable, highquality systems in realtime environments.
Exigences de base Excellente matrise du C++ et exprience dans le dveloppement de systmes avec Unreal Engine.
Minimum de 6 8 annes dexprience professionnelle en programmation de jeux vido, incluant au moins un titre lanc sur le march ou une exprience de production quivalente.
Exprience professionnelle concrte avec Unreal Engine (incluant les fonctionnalits pertinentes votre spcialisation).
Solide comprhension du dveloppement de systmes temps rel, notamment en matire de performance, dutilisation de la mmoire et dvolutivit.
Excellentes aptitudes en rsolution de problmes et en dbogage de systmes complexes lexcution.
Capacit collaborer efficacement au sein dquipes multidisciplinaires (conception, artistique, production et ingnierie).
Excellentes comptences en communication et approche proactive en matire de responsabilit technique.
Exprience avec des systmes de contrle de version tels que Perforce ou Git.
Atouts recherchs Exprience sur des productions AAA ou des projets de jeux grande chelle.
Exprience en optimisation de systmes pour la performance et lutilisation de la mmoire sur diffrentes plateformes.
Familiarit avec le code source dUnreal Engine et la personnalisation du moteur.
Exprience en mentorat ou en soutien technique auprs dautres programmeurs.
Solide comprhension des systmes de gameplay et de lexprience joueur.
Passion pour la cration de systmes volutifs et de grande qualit dans des environnements temps rel.
Additional Information As part of our selection process, external candidates may be required to attend an in-person interview with an NBCUniversal employee at one of our locations prior to a hiring decision. NBCUniversal''s policy is to provide equal employment opportunities to all applicants and employees without regard to race, color, religion, creed, gender, gender identity or expression, age, national origin or ancestry, citizenship, disability, sexual orientation, marital status, pregnancy, veteran status, membership in the uniformed services, genetic information, or any other basis protected by applicable law.
If you are a qualified individual with a disability or a disabled veteran and require support throughout the application and/or recruitment process as a result of your disability, you have the right to request a reasonable accommodation.
You can submit your request to AccessibilityS.
📌 Senior Programmer (AI, Engine, Rendering, UI) / Programmeur sénior (IA, Moteur, Rendu, Interface utilisateur)
🏢 NBCUniversal
📍 Montreal