Работал в 1 компании   8 лет 5 месяцев

IT

Java Developer

Разработка сервера по игре Minecraft

IT

8 лет 5 месяцев

02.2018 - по настоящее время

Разработка и поддержка игрового бекенда и игровых режимов. Архитектура состояла из:

  • множества игровых серверов, где находится больше половины игровой логики;
  • один или несколько (в зависимости от нагруженности проекта) прокси серверов: пакеты от игрока частично обрабатываются, фильтруются на прокси серверах и отправляются на игровые сервера;
  • специальный сервер (называем Core) - standalone приложение для синхронизации, распределения и обмена серверными данными между игровыми и прокси серверами (BungeeCord);
  • база данных MySql (600 запросов в секунду);
  • Java 8/12 (постепенно переходим на 12).

В связи с четким пониманием преимуществ переиспользования кода было разработано специальное гибкое API, упрощающее и ускоряющее разработку игровых режимов и плагинов на Core. В дальнейшем с разработкой API дополнялось и улучшалось. Игровые режимы делятся на мини-игры и режимы долгого развития:

  • Мини-игра - это чаще всего быстрая игра до 15 минут, где игроки соревнуются в PvP, творчестве и т. д., и в конце определяется победитель по определенным условиям. Для разработки мини-игр использовался достаточно большой стек знаний и технологий (от математики и грамотного использования ООП в игровой логике до проектирования базы данных и backend: статистика, данные игроков, состояние игровых арен, общение сервер-сервер и сервер-клиент)
  • Режимы долгого развития подразумевают постоянное накопление игроком ресурсов, соревнование и сотрудничество с другими игроками. Для упрощения этой коммуникации были разработаны соответствующие системы, позволяющие игроку торговать, обмениваться, общаться и т. п.

Ключевая информация

Java Core, Git, MySQL, Системы управления базами данных, IntellijIDEA, MongoDB, Linux, Docker, Kubernetes (поверхностно), Jenkins CI Gradle, Maven

Владеет языками

Английский

средний

Руслан Юрьевич

Java Developer

Полтава

1 000 $

23 года

Характер работы: удаленная работа

Последняя активность 4 года назад