Middle
Full time
Negotiable
Relocate, Cyprus
Scorewarrior is a game developer and publisher from Limassol, Cyprus. The company is focused on the 4X strategy genre with an ambitious goal to grow it’s hit game Total Battle to become the No.1 strategy game in the world. Our team consists of 150+ passionate, talented, self-demanding, and constantly developing professionals who love making high-quality ga
Our mission: We create games with a mission to unite and excite people all over the world.
Our team is looking for a developer with confident knowledge of C++ and design principles to work on creating new game features for a large-scale multiplayer project with long-term gameplay.
Our game project has a code base of ~300k SLOC and consists of multiple services running in several hundred instances. The game services are a sharded system for horizontal scaling.
We're constantly developing new game mechanics, and the project is continuing to grow.
Our team's objective and the challenge they face is to create an outstanding technical design that ensures quality, flexibility, and simplicity in the development of in-game features.
What are you working on?
- The name of the project(s): Total Battle
- At what stage of the project(s)? LiveOps
- Genres: Strategy, MMO
- Platforms: PC, Mobile, Browser, iOS, Android
For which tasks (responsibilities)?
Tasks:
Designing and developing new game mechanics. Developing a good API.
Designing and developing our library (engine) components.
Writing unit & integration tests.
Developing tools and scripts for automating development processes.
Reviewing the code and design of game mechanics.
Redesigning and refactoring game mechanics, and eliminating technical debt.
What kind of professional are we looking for?
Job requirements:
Experience working with C++ for at least 3 years in a product-oriented company.
Knowledge of design principles, patterns, and their applicability.
An understanding of network basics (TCP/IP) and protocols (any RPC, HTTP).
Basic knowledge of relational databases and SQL.
Basic knowledge of multithreading.
Proficiency in Linux.
Knowledge or a willingness to learn Python for developing tools and automation.
The following would also be to your advantage:
Having samples of code that you can show us.
Knowledge of different back-end architectures.
Good knowledge of C++ development practices (similar to C++ Core Guidelines).
Practical experience in creating designs for large-scale features or systems.
Knowledge of other high-level programming languages (for general awareness).
What is important for us in a person?
Good soft-skills and initiative.
Interest in the gamedev.
Why do we enjoy working here?
We use:
C++20, Clang, and CMake.
Boost — only for the library, not for game code.
PostgreSQL.
GitLab, TeamCity, Ansible.
SonarQube, Clang-Tidy, Clang-Format.
Onboarding, coding conventions.
Python for utilities.
Linux.
Our technical developments:
A library/framework of ready-made solutions for creating game features.
ORM — allows us not to have to write code for saving to the DB.
A code generator for a binary RPC protocol and ORM.
A pub/sub event system for game clients.
Telemetry that allows for real-time product status tracking (through Grafana).
An expression interpreter for flexibility in game configuration.
HotReload environment, with everyday game updates.
Sync and Async network designs.
Internal Event System.
Internal persistent and transactional message system.
R-tree based world map.
What are the conditions and bonuses?
What we offer and our benefits:
Full-coverage relocation for you and your family to Cyprus (Limassol).
Modern and sunny office space very close to the Mediterranean sea.
Excellent and competitive remuneration package.
Private health insurance for you and your family members.
School allowance of up to €400 per month.
Personal development courses.
Friendly working environment :)
The selection process
HR Screening
Interview with Team
Test Task
Similar job opportunities
Rabbit Games
Remote
Posted 2 days ago
Senior
Negotiable
Full time