To create the net code for the studio experiences, following the requirements of the project and taking in account the particular requirements of Virtual Reality projects, where even a small jittering to the player movement can cause a jarring effect.
Main Cross-Functional Activities:
- To work closely with the team to create, integrate and test the multiplayer code
- Work on the lobby, matchmaking, scoreboards and all the services related to the experience
- Work with the devops team to monitor the status of the network to detect problems early
- Work on any persistent data storage with the backend team to make sure of it's consistency
- Work on the real-time analytics data flow with the team that will make the visualization
- Benchmark and optimize the latency and movement prediction for the VR needs
- Safely improving the netcode through prototyping and automated tests
- Work with all the teams to maintain the game server/host code
- Solid C# skill with a good knowledge of the Unity API
- Experience with multiplayer games or another real-time interactive system
- Know how to design clean architectures of large systems with multiple subsystems
- Have implemented a peer-to-peer and a client-server architecture
- Know various protocols: TCP, UDP, HTTP
- Experience with network security and anti-cheating
- Know a game server API: Playfab, Gamesparx
- Experience debugging network problems
- Know a real-time network API: Photon, Multiplay
- Some experience optimizing and debugging multi-threaded multiplayer code
- Fluent in English (reading, writing, and speaking)
- Experience with Agile Development and prototyping and iterating solutions
Nice To Have:
- New Unity multiplayer low-level/high-level API
- Knowledge of AWS network architecture
- Be familiar with Google G Suite, Monday, Slack and Github.
- Previous knowledge or experience with VR and AR content is desirable.
- A passion for Games, Movies, TV, Art, Animation, Electronics, RPGs, Theater and narrative experiences would be a great plus.
- Experience with game development.
- Apply for the position.
- A test will be sent.
- Selected candidates will be invited for an initial interviewing process
- Final candidates will meet the team and go through final interviews
- Decisions will be e-mailed right after