Network Engine Programmer (M/W/NB)
- 94300 Vincennes, France
- Employees can work remotely
Ubisoft’s 19,000 team members, working across more than 40 locations around the world, are boundby a common mission to enrich players’ lives with original and memorable gaming experiences. Their dedication and talent has 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 gamechanging challenges, cutting edge technologies and pushing the boundaries of entertainment, we invite you to join our journey and help us Create the unknown!
For more than 8 years, via its Ubisoft Mobile entity, Ubisoft has also shaped worlds on smartphones and tablets via its portfolio of mobile games.
At Ubisoft Mobile, you will have a chance to develop your skills and work alongside dedicated team members who are pioneers in their field, throughout the world.
You will be part of a warm and stimulating environment in which you can push back the boundaries of both the imagination and technology to create worlds that will inspire our players.
Reporting and working alongside with our Senior Online Architect and our Technical Director, you will work on our Network Library used by a growing number of Mobile Studios, most of which produce AAA Mobile games.
This library, in C #, provides:
- Different network transports (UDP, TCP, Quic) usable on mobile phones.
- Different services (relay, matchmaking, sessions management, serialization,...).
- An integration with Unity3D (including Unity3D packaging).
- A project to port that library to C++.
Your main missions will be:
- Develop and improve the library.
- Discuss and add the features required by the Studios.
- Document your code.
- Deal with communication between the game client and our dedicated game server. Add features in the clients to be able to send specific information to the server or to other clients.
- Understand existing functions, suggest and develop improvements with the goal of bringing the best multiplayer experience to our players
- Collaborate daily with a variety of production and support teams
- Resolve network bugs
- Develop unit tests to ensure the correctness of your code.
- Provide support to studios using the library.
- Run load tests on the library using AWS.
What you need for this position:
- A solid experience in Software or Game development.
- Excellent level in C#.
- Excellent knowledge of networking:
=> Protocols: UDP, TCP, Quic.
=> Routing: NAT traversal, IP Migration.
=> Security: protection from network attacks (DDOS, man in the middle,...).
=> Encryption: SSL, TLS, DLTS.
- Good English level is required.
Would be a plus if you have :) :
- Experience with Unity3D.
- Good level in C++.
Ubisoft is committed to creating an inclusive work environment that reflects the diversity of our player community. Qualified applicants will receive consideration for employment without regard to their race, ethnicity, religion, gender, sexual orientation, age or disability status. All information will be treated as confidential in accordance with the Employment Equity Act