Senior C++ Programmer - Machine Learning
Montreal, Quebec, Canada · Full Time
Be the first to apply
- Experience
- 10+ yrs
- Salary
- —
- Openings
- 1
- Posted
- 2 days ago
- Work mode
- In office
- Education
- Bachelor’s degree in Computer Science or Computer Engineering
- Resume
- Required to apply
Where you'll work
Sign in to tell us what does and doesn't work for you here — it sharpens every match we show you.
Job description
About Ubisoft Montréal
Ubisoft is a globally recognized gaming leader with studios worldwide crafting original and unforgettable gaming experiences such as Assassin’s Creed, Rainbow Six, and Just Dance. We embrace diverse perspectives to foster growth for both players and teams. If you are driven by innovation and eager to push the boundaries of entertainment, consider joining us to shape uncharted territories in gaming.
Role Overview
We are seeking a Senior C++ Programmer specialized in Artificial Intelligence and Machine Learning to contribute significantly to the development of advanced, machine learning-powered applications. This role requires adherence to best practices and sturdy design principles to fulfill an ambitious and innovative development roadmap.
Key Responsibilities
- Deliver and maintain machine learning systems aligned with business goals and requirements.
- Design, implement, and sustain inference engines, machine learning libraries, and frameworks.
- Utilize optimal hardware such as NPUs, GPUs, and CPUs to accelerate machine learning operations.
- Develop systems to assess, optimize, and monitor model performance effectively.
- Integrate machine learning systems within game engines and actual game environments.
- Create unit and integration tests to ensure software quality.
- Collaborate closely with data scientists, specialized programmers (gameplay, AI, etc.), research teams, and production stakeholders.
- Produce clean, well-organized code that satisfies performance, scalability, modularity, maintainability, and compatibility standards.
Additional Responsibilities
- Develop proof-of-concept projects involving model training, fine-tuning, and experimentation with various techniques and architectures.
- Recommend and implement system improvements or new system designs as needed.
- Stay informed of latest advancements through ongoing research.
- Prepare comprehensive documentation, presentations, and educational materials to communicate complex AI concepts to both technical and non-technical audiences.
Qualifications
- Bachelor’s degree in Computer Science, Computer Engineering, or a related field.
- Master’s degree in Machine Learning or another relevant domain is highly advantageous.
Experience
- At least 10 years of professional experience programming in C++.
- A minimum of 5 years working experience in Artificial Intelligence and Machine Learning.
Essential Skills
- Extensive expertise in C++ programming.
- Robust skills in software architecture design.
- Solid knowledge of hardware to maximize multithreading use and optimize memory management.
- Strong fundamentals and applied knowledge in machine learning and deep learning.
Additional Skills
- Fluency in Python is considered a valuable asset.
- Experience with game engine development is advantageous.
Minimum education
Bachelor's Degree