Online Programmer [New IP] (484)
A career at Ubisoft Leamington and Ubisoft Reflections opens doors to new worlds. As an Online Programmer you are part of a team that directly influences the quality of our player's online experience.
What you will do
- Assist with investigation, design and implementation of class-leading online features;
- Involvement with education of the game team to ensure online gameplay and technical constraints are considered during the design and implementation of game features;
- Work as a key part of an agile development team, organising and planning the implementation of features with direction from their lead, and assist less experienced programmers;
- Use practical solutions to implement feature requests, taking into account performance, maintainability and resource usage;
- Ensure coding standards are followed in their own and others code;
- Collect, interpret and analyse the technical feasibility of system/feature specifications;
- Write clear and well-structured code using the appropriate data structure and algorithms while bearing in mind performance, maintenance and architectural requirements;
- Include comments in the code and document implemented features;
- Demonstrate an understanding of the basics of load testing and game feature testing and write test code;
- Stay up-to-date with technology advances within the field;
- Perform code reviews for peers;
- Extract and interpret relevant runtime system resource information (disk IO, network, CPU, memory, etc).
What you will bring
- Knowledge of common online systems;
- Ability to debug networked/asynchronous systems;
- Very good C/C++ programming skills, with very good knowledge of object oriented development including design patterns and UML;
- Experience working with a large game codebase, and it's modules, middleware and associated pipeline;
- Understanding of speed and memory considerations, and able to implement basic optimisations;
- Knowledge of common algorithms, data structures and patterns, and their application;
- Ability to analyse unfamiliar code of a reasonable complexity to understand, extend and refactor an existing module;
- Ability to debug defects of a reasonable complexity, including memory related issues, and multi-threading;
- Knowledge of different software development methods such as Test Driven Development, Unit Testing, Agile etc.;
- Understanding the constraints and technical requirements for console platform development within their area is a plus;
- Ability to adapt to change;
- Good interpersonal and communication skills.
- Bachelor’s degree in computer science or computer engineering or equivalent experience;
- 3 years commercial software development experience with significant involvement in 1 published game in a relevant programming capacity is a plus;
- Experience working with at least one modern console platform is an advantage;
- Experience with profiling tools is desirable;
- Experience working in a multi-site collaboration environment is a plus.
Benefits & Relocation
We’re offering flexible working with some remote work available, 25 days annual leave + Christmas shutdown (usually 3 days), private healthcare (with option to add immediate family), life insurance & income protection, workplace pension scheme, paid volunteering days, annual fitness & well-being allowance, games, technology & merchandise, subsidised travel and excellent relocation support, should you need it!
Find out more about Ubisoft Reflections: https://reflections.ubisoft.com/about/ubisoft-reflections/
Ubisoft offers the same job opportunities to all, without any distinction of gender, ethnicity, religion, sexual orientation, social status, disability or age. Ubisoft ensures the development of an inclusive work environment which mirrors the diversity of our gamers community.