Online Programmer W/M/NB
As an Online Programmer, your main missions will include:
- Work as a key part of an agile development team, and assist the lead with planning and review of features and mentoring less experienced programmers,
- Assist with investigation, design and implementation of class-leading online features,
- Implement innovative solutions to feature requests, considering performance, maintainability and appropriate resource usage,
- Optimize systems for optimal CPU, memory and network usage,
- Participate in defining coding practices, perform code reviews, and ensure coding standards are followed,
- Collaborate with stakeholders to gather and analyze technical constraints and design solutions,
- Demonstrate an understanding of load and feature testing, write test code, and develop test frameworks and processes,
- Stay up to date with state-of-the-art technology and promote its use within the studio,
- Integrate large-scale modules or components while minimizing the impact on the rest of the programming team,
- Contribute and, on occasion, lead cross-studio collaborative communications in conjunction with the Lead Programmer.
Skills and Knowledge:
- Excellent C# or nodeJS programming skills (C/C++ is a big plus) with excellent knowledge of Object Oriented development and design patterns,
- Experience in Unity3D is a big plus,
- Proven ability to debug networked/asynchronous systems,
- Proven ability to debug defects of a reasonable complexity, including memory related issues, multi-threading, and assembly level debugging,
- Significant knowledge of Operating System principles, Algorithms, Data Structures and patterns, and their application,
- Knowledge in solving typical online issues related to latency and bandwidth utilization,
- In-depth knowledge of different software development methods such as Test-Driven Development, Unit Testing, Agile…ect
- Excellent interpersonal and communication skills,
- Excellent oral and written communication skills in English
- Ability to mentor others.
Relevant Expérience :
- Bachelor’s degree in computer science or computer engineering or equivalent experience,
- 6 years commercial software development experience. Involvement in multiple published games in a programming capacity are a plus,
- Experience working with at least one modern console platform is an advantage,
- Experience with profiling tools,
- Experience working in a multi-site collaboration environment is a plus.
As an employer, Ubisoft offers equal chances to everyone no matter their gender, ethnicity, faith, sexual preferences, handicap or age.
Ubisoft develops an inclusive workplace, doing their best to reflect the diversity or their gamer community within the production teams.
Check out this guide to help you with your application, and learn about our actions to encourage more diversity and inclusion.