Мы используем файлы cookie, продолжая просмотр, вы разрешаете их использование. Подробности в Политике обработки персональных данных
Понятно
Game Backend C++ Developer (Gameplay Team)
Название: Game Backend C++ Developer (Gameplay Team)

  • Формат работы: офис, Кипр, Лимассол
  • Уровень: Middle/Senior
  • Отдел: Engineering

Наша команда ищет специалистов уровней Middle и Senior с уверенными знаниями C++ и принципов проектирования для работы над созданием новых игровых функций для крупного многопользовательского проекта!

О продукте

Мы развиваем MMO 4X стратегию с глубокой политической системой и активным взаимодействием игроков. Игроки развивают город, создают альянсы, сражаются с монстрами и другими игроками. Мы постоянно добавляем новые игровые механики, и проект продолжает активно расти.
Кодовая база проекта — около 300k строк кода, несколько сервисов, работающих в сотнях инстансов. Архитектура — шардированная система для горизонтального масштабирования.
Главная задача команды — создавать технические решения, обеспечивающие качество, гибкость и простоту разработки игровых фич.

Задачи:
  • Проектировать и разрабатывать новые игровые механики на основе документации от геймдизайнеров.
  • Подготавливать RFC-документы с описанием предлагаемого решения и обсуждать их с командой.
  • Поставлять реализованные решения в прод и следить за их корректной работой.
  • Рефакторить и оптимизировать существующий функционал для повышения производительности, поддерживаемости и масштабируемости.
  • Проводить code review и следовать командным стандартам кодирования.
  • Создавать прототипы для проверки новых идей и механик.
  • Писать и поддерживать техническую документацию по реализованным решениям.
  • Участвовать в командных обсуждениях и встречах.

Требования:
  • Хорошие коммуникативные навыки и проактивность.
  • 3+ лет опыта разработки на C++ в продуктовой компании.
  • 2+ года опыта backend-разработки (не обязательно на C++).
  • Глубокие знания принципов проектирования и умение применять их на практике.
  • Умение анализировать задачи и разбивать их на подзадачи.
  • Опыт сетевого и многопоточного программирования.
  • Практический опыт работы с реляционными базами данных.
  • Опыт разработки и отладки под Linux.
  • Готовность или желание изучать Python для создания утилит и автоматизации.

Преимуществом будет:
  • Наличие примеров кода.
  • Знание других высокоуровневых языков.
  • Опыт применения Domain-Driven Design.
  • Опыт работы с Akka.NET, Microsoft Orleans или другими actor-based фреймворками.

Мы используем:
  • C++20, Clang, CMake
  • Boost (только библиотека, не в игровом коде)
  • PostgreSQL
  • GitLab, TeamCity, Ansible
  • SonarQube, Clang-Tidy, Clang-Format
  • Python (утилиты)
  • Linux

Наши технические разработки
  • Собственная библиотека/фреймворк для создания игровых фич
  • ORM для работы с БД без ручного написания запросов
  • Генератор кода для бинарного RPC протокола и ORM
  • Pub/Sub система событий для игровых клиентов
  • Телеметрия с отображением статуса продукта в реальном времени (Grafana)
  • Интерпретатор выражений для гибкой конфигурации игры
  • HotReload окружение — ежедневные обновления игры
  • Синхронный и асинхронный сетевой дизайн
  • Внутренняя система событий
  • Система транзакционных и персистентных сообщений
  • R-tree карта мира
Мы предлагаем:
  • Отличный компенсационный пакет, включая 13-ю зарплату.
  • Полную релокацию на Кипр (Лимассол) для вас и вашей семьи.
  • Современный и светлый офис рядом с морем.
  • Частную медицинскую страховку для вас и членов вашей семьи.
  • Ежемесячные выплаты на детские сады, школы и университеты для детей сотрудников.
  • Компенсацию обедов.
  • Компенсацию спортивных и фитнес-занятий.
  • Возможности для личного и профессионального развития за счёт компании: профессиональные и языковые курсы, книги и т.д.
  • Бонусы за выдающиеся результаты, выслугу лет, брак и рождение ребёнка.
  • Дружеские ежемесячные офисные вечеринки и масштабные ежегодные корпоративные праздники — ко дню рождения компании и на Рождество.
Подать заявку на вакансию
Оставьте контакты, свяжемся с вами в течение дня.