Company Description
Ubisoft is a global leader in the video game industry, with teams around the world creating original and memorable experiences, from Assassin's Creed and Rainbow Six to Just Dance and much more. We believe that diversity of perspectives enables both players and teams to thrive. If you are passionate about innovation and pushing the boundaries of entertainment, join us and help create the unknown!
Job Description
What you will do:
We are looking for a senior C++ programmer who will contribute to the development of applications in the Machine Learning field. The role of the senior C++ programmer with AI/ML experience is to bring best practices and design principles to help the team achieve our ambitious roadmap.
Main Responsibilities:
-
Provide and support ML systems based on business requirements and objectives.
-
Develop, integrate, and maintain inference engines, ML libraries, and frameworks.
-
Leverage the best hardware (NPU, GPU, CPU) to accelerate ML-related computations.
-
Develop systems to evaluate, optimize, and measure model performance.
-
Integrate and maintain ML systems in game engines and in games.
-
Write unit tests and integration tests.
-
Collaborate with the data science team, specialized programmers (gameplay, AI, etc.), the research team, and other stakeholders such as productions.
-
Program in a clear and structured manner while respecting performance, maintenance, modularity, scalability, and compatibility requirements.
Other Responsibilities:
-
Create proofs of concept, which may require model training, fine-tuning, experimentation with different techniques and models.
-
Suggest improvements when necessary by designing and implementing new systems or improving existing ones.
-
Conduct research to stay up to date with the latest advances.
-
Documentation, presentations, and knowledge sharing to communicate complex AI concepts to technical and non-technical colleagues.
Qualifications
What you bring:
Education:
Bachelor's degree in Computer Science or Computer Engineering or equivalent.
A Master's degree in Machine Learning or any other relevant Master's is a real asset.
Relevant Experience:
Minimum 10 years of C++ programming experience.
Minimum 5 years of AI/ML experience.
Core Skills:
-
In-depth knowledge of C++ required.
-
Strong architecture skills.
-
Good knowledge of hardware to leverage multithreading and optimize memory management.
-
Good knowledge of machine learning and deep learning fundamentals.
Other Skills:
-
Proficiency in Python is an asset.
-
Experience working with game engines is an asset.
-
Knowledge or experience in Reinforcement Learning.
Additional Information
What to send us
- Your CV highlighting your education, experience, skills, and shipped games
