Skip to main content

Engine Programmer - Rayman Brand

Milan, Italy - Hybrid

COMPANY DESCRIPTION

Ubisoft’s 19,000 team members, working across more than 30 countries around the world, are bound by a common mission to enrich players’ lives with original and memorable gaming experiences. Their commitment and talent have brought to life many acclaimed franchises such as Assassin’s Creed, Far Cry, Watch Dogs, Just Dance, Rainbow Six, and many more to come. Ubisoft is an equal opportunity employer that believes diverse backgrounds and perspectives are key to creating worlds where both players and teams can thrive and express themselves. If you are excited about solving game-changing challenges, cutting edge technologies and pushing the boundaries of entertainment, we invite you to join our journey and help us create the unknown.

JOB DESCRIPTION

We’re looking for an Engine Programmer who will be responsible of developing and improving our in-house engine. The candidate will oversee the support and optimization of the engine and will integrate the external "middleware" modules used by the production.

Main responsabilities:

  • Create, improve, maintain and optimize the engine’s system. 
  • Design Systems which are simple, clear, reliable, easy to extend and maintain.
  • Work on software and middleware updates (stability KPIs, performance).
  • Analyze existing functionality of the engine, then identify possible improvements to meet the project requirements.
  • Choose the most efficient algorithms and data structures for the task at hand (keeping constraints and performance in mind). 
  • Propose improvements to the needs, by designing and implementing new systems.
  • Identify missing details in feature requests and break down tasks into modules that can be implemented and tested. 
  • Collaborate with multiple disciplines to develop efficient and productive art and content pipelines. 
  • Write and maintain proper documentation for the programming team as well as other job families. 
  • Integrate and support platform specific guidelines.
  • Determine and fix the bugs identified by other production and quality control teams, doing basic maintenance.

QUALIFICATIONS

  • Experience in gaming industry, with 3+ years as Engine Programmer. 
  • Strong knowledge of modern C++. 
  • Strong knowledge of software engineering/architecture and design patterns. 
  • Excellent math skills (linear algebra, trigonometry, matrix/quaternion math).
  • Experience with large engines, complex pipelines, profiling & optimization. 
  • Strong interpersonal and communication skills, both written and spoken in English. 
  • Autonomous and proactive. 
  • Problem-solving and open mind. 
  • Positive attitude and a genuine team player. 

Nice to have:

  • Development experience on game consoles. 
  • Experience in commercial Engines (such as Unreal/Unity).
  • Experience in rendering, shaders, raytracing
  • Knowledge of Python and scripting languages.

ADDITIONAL INFORMATION

Ubisoft is committed to creating an inclusive work environment that reflects the diversity of our player community. We value and celebrate the diversity of cultures, perspectives, skills, and experiences within our workforce. We strongly encourage people of different backgrounds, women, LGBTQ+ individuals, people with disabilities, members of ethnic minorities and other legally protected individuals to apply.

To all applicants, kindly send us resume.

The position is based in Milan (Italy) and requires working onsite for at least 3 days per week.

All your information will be kept confidential according to EEO guidelines.

ApplyRefer a friend
Share:

LET OUR TEAM MEMBERS TELL YOU ABOUT THEIR JOB

Games Explained: Game Engines

Developers have many technologies and tools at their disposal to build games, and game engines are at their core. Timothy Dansie, technical associate producer, explains how game engines work and which ones we use at Ubisoft.

Alexandru's journey: from Game Tester to IT teams

Read More
Alexandru's journey: from Game Tester to IT teams

A Unified Workflow for Development and Live by Björn Törnqvist

FAQ

Can I submit an open application?

We do not accept open applications. You can find all our open positions by clicking on the ‘Search Jobs’ button. Check our careers page regularly if you don’t find the opportunity you are looking for this time.

How can I check my application status?

You can check the status of your application by logging into your SmartRecruiters candidate profile.

I am not familiar with the video game industry. Would I fit into Ubisoft?

At Ubisoft, everyone is welcome! We know that by bringing together different perspectives and experiences, we create a more inclusive environment for our team members. You’ll get the chance to work with teams and projects that inspire and challenge you every single day.

How do I know if a Ubisoft email/offer is legit?

We were sorry to hear of some instances whereby scammers contacted candidates on Ubisoft’s “behalf” to gather personal data and/or money. We take this matter very seriously: not only do these actions put you at risk, they also jeopardize Ubisoft’s image. Click on the button below to read the detailed list of of things that Ubisoft, as a company, will never ask you for during your hiring process.