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
- Posting language
- English
- Posted
Similar jobs hiring now
Search current openingsOriginal job description
Archived listing. The details below describe a past opening.
Company Description
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.
Qualifications
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
You will develop and improve high-performing C++ middleware while contributing to the technical architecture of online services. You will also collaborate with cross-functional teams to solve complex technical problems and ensure the sustainability of game engine components.
Requirements
Candidates must have strong expertise in modern C++ and experience designing efficient algorithms and data structures for complex systems. Proficiency in memory management, multithreading, and performance optimization is essential for this role.
Skills
- C++
- C++17
- C++20
- C++23
- Software Architecture
- Multithreading
- Memory Management
- Debugging
- Profiling
- Continuous Integration
- Continuous Deployment
- Distributed Systems
- Middleware
- Network Optimization
- Game Engines
Visa sponsorship
Not detected in the job text
Categories
- Software
- Technology
- Engineering
Keywords
- C++
- C++17
- C++20
- C++23
- Middleware
- Distributed Systems
- Game Engine
- Multithreading
- Memory Management
- Profiling
- Debugging
- Continuous Integration
- Continuous Deployment
- C#
- .NET
- Visual Studio
- CMake
- LLVM
- GitLab-CI
- Agile
- Snowdrop
- Anvil
- Unreal Engine
- Unity
- AWS
- Azure
- Network Optimization
- Online Services
- Software Architecture
- Data Structures