Middle-Senior Game Backend C++ Developer
- On-site
- Limassol, Lemesos, Cyprus
- Product
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.
Job description
Scorewarrior is a game developer and publisher based in Limassol, Cyprus. The company focuses on the 4X strategy genre, with an ambitious goal to grow its hit game, Total Battle, to become the No.1 strategy game in the world. Our team consists of 150+ passionate, talented, self-driven, and continually developing professionals who love making high-quality games.
Our product: We are currently working on Total Battle — an MMO 4X strategy game with a deep political system and lots of player interaction. Players take on the role of a commander and need to develop their city, forge alliances, fight against monsters, and conquer other players. We're constantly developing new game mechanics, and the project is continuing to grow.
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.
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 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.
Tasks:
Design and implement solutions for new game mechanics — based on documentation from game designers, create a technical design and implement it.
Prepare RFC documents describing your approach and discuss them with the team before implementation.
Deliver your solution to production and ensure it runs smoothly by monitoring its behavior after deployment.
Refactor and optimize existing functionality to improve performance, maintainability, and scalability.
Perform code reviews for other team members and follow team coding guidelines and best practices.
Create functional prototypes to validate ideas and mechanics when necessary.
Write and maintain technical documentation for implemented features and decisions.
Participate in team meetings and discussions to stay aligned on priorities and progress.
Job requirements
Strong communication skills and initiative.
3+ years of professional experience with C++ in a product-oriented company.
Solid knowledge of software design principles and ability to apply them in practice.
Ability to analyze and decompose complex tasks into smaller, manageable steps.
Understanding of network fundamentals (TCP/IP) and experience with common protocols (e.g., RPC, HTTP).
Basic knowledge of relational databases and SQL.
Basic understanding of multithreading and concurrency concepts.
Proficiency in Linux environments for development and debugging.
Knowledge or 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.
Practical experience in creating designs for large-scale features or systems.
Knowledge of other high-level programming languages (for general awareness).
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 we offer and our benefits:
The best team in the world!
An excellent remuneration package, including a 13th salary.
Full relocation coverage for you and your family to Cyprus (Limassol).
A modern, sunny office close to the sea.
Private health insurance for you and your family members.
A monthly pre-school, school, and university allowance for employees' children.
Lunch compensation.
A sports and fitness allowance.
Company-funded personal development opportunities (professional and language courses, books, etc.).
Bonuses for outstanding results, years of service, marriage, and childbirth.
Friendly monthly office parties and epic annual offsite company birthday and Christmas celebrations.
or
All done!
Your application has been successfully submitted!