Closed listing
Senior Engine Programmer - OS (Game Network)
- Montreal, QC, Canada
Full-time
This opening has closed.
The original listing is kept below for reference.
Job details
- Job type
- Full-time
- Closing date
- Posting language
- English
- Posted
Similar jobs hiring now
Search current openingsOriginal job description
Archived listing. The details below describe a past opening.
Ubisoft is a global leader in gaming with teams across the world creating original and memorable gaming experiences, from Assassin’s Creed, Rainbow Six to Just Dance and more. We believe diverse perspectives help both players and teams thrive. If you’re passionate about innovation and pushing entertainment boundaries, join our journey and help create the unknown!
Job Description
As a Senior C++ Engine Programmer at Ubisoft Montréal, you’ll join the Core Services - Online Tech Foundations team. The team builds technology that supports online services across many Ubisoft productions. You’ll help design and evolve distributed systems and middleware used in games, including game engine, low-level, networking, and engine-integrated web components.
What You’ll Do
- Develop and improve reliable, high-performing, maintainable C++ middleware.
- Contribute to technical direction and architecture choices.
- Improve code quality through good practices, code reviews, and continuous improvement.
- Solve complex technical problems and optimize performance.
- Reduce risks and technical debt to help keep solutions sustainable.
- Collaborate with teams and other stakeholders.
- Share knowledge and keep up with technical developments.
What you bring to the team
- Apply modern C++, including C++17, C++20, and C++23.
- Design software architecture, efficient algorithms, and optimized data structures for complex systems.
- Optimize memory management, multithreading, and processor use.
- Use debugging, profiling, continuous integration, and continuous deployment to maintain code quality.
- Solve complex problems, communicate clearly, work with others, and contribute to technical choices.
- Bring, as an asset, experience with console development or multiplayer game projects.
- Bring, as an asset, knowledge of C#, .NET, Visual Studio, CMake, LLVM tools, GitLab-CI, or agile methods.
- Bring, as an asset, knowledge of game engines such as Snowdrop, Anvil, Unreal, or Unity, cloud services such as AWS or Azure, distributed systems, or network optimization.
More about this job
Responsibilities
Develop and maintain reliable, high-performance C++ middleware and contribute to architecture and technical direction for online game services. Optimize performance, improve code quality, reduce technical debt, and collaborate with teams and stakeholders.
Requirements
The role requires modern C++ (including C++17, C++20, and C++23), strong software architecture and algorithm skills, and experience optimizing memory, multithreading, and processor use. Candidates should be able to use debugging, profiling, CI/CD, and collaborative problem-solving practices; console or multiplayer game experience and the listed tools and platforms are assets.
Skills
- Modern C++
- Software Architecture
- Algorithms
- Data Structures
- Memory Management
- Multithreading
- Performance Optimization
- Debugging
- Profiling
- Continuous Integration
- Continuous Deployment
- Distributed Systems
- Networking
- Middleware
- Technical Communication
Visa sponsorship
Not detected in the job text
Categories
- Software
- Technology
- Engineering
Keywords
- C++
- C++17
- C++20
- C++23
- C#
- .NET
- Visual Studio
- CMake
- LLVM
- GitLab-CI
- Snowdrop
- Anvil
- Unreal Engine
- Unity
- AWS
- Azure
- Middleware
- Game Engine
- Online Services
- Distributed Systems
- Networking
- Multiplayer Games
- Software Architecture
- Algorithms
- Data Structures
- Memory Management
- Multithreading
- Performance Optimization
- Debugging
- Profiling