UTC +- 2
Here's what you will be doing:
- Form the core of our Game Server Engineering team. We’re developing an incredible cross platform product.
- Work closely with the rest of the Engineering team, defining and implementing key technical goals as well as goals and concepts to bring teams to the next level
- Design the architecture and implement server side game logic in line with the technical direction of our product
- Create a culture of high quality and high performance within the Game Server Engineering team and build low latency solutions that are highly scalable and consistent
- Jump in to help the teams with troubleshooting and research of technical solutions
- Implement tools that empower our game design teams to create new and exciting gameplay experiences
- Load test, monitor, profile & optimise game servers
- Prioritise technical tasks and work with the team to plan for development
- Be a part of the rotating on-call schedule once the game is live
To do this job, you will need:
- 3+ years professional development as part of a team working on Backend as a Service.
- Experience in developing highly available back-end systems and servers for large-scale games or high-traffic web systems.
- Experience developing in Python, ideally using frameworks like Celery and Tornado.
- Strong knowledge of Unix-like operating systems.
- Experience with Redis (or other database systems), ORMs and migration scripts.
- Ability to write efficient low-latency, low-IO code.
- Good understanding of how to prevent intrusions, injections, cheating etc.
- Experience in Git.
- Good knowledge of networking i.e. TCP, HTTP, LB, NAT, WebSockets etc.
- Experience creating and working with a dockerized environment.
While not required, below are nice to have:
- Experience working in C#/Unity..
- AWS, Docker, Terraform, Kibana, Chef, Ansible.
- Experience with automated testing.
- Experience with stateful and stateless game server architectures.
- Good knowledge of shell scripting i.e. bash, zsh.
- Experience working with non-technical team members to find the best solution for design requirements.
- Experience developing in Go.