Node.JS C# | .Net Developer

Нужен разработчик на проектную занятость, который реально работал с PlayFab MPS и понимает все нюансы оркестрации серверов, а также имеет опыт построения масштабируемых backend-систем.

Задача — не просто написать код, а собрать полностью рабочую систему автоскейлинга “под ключ”, которую можно безопасно оставить в продакшене без ручного контроля.

Занятость: до 1 месяцаПроект: Grand Hustle RP

Задача:

Нужно разработать автономный backend-сервис, который будет управлять количеством PlayFab Multiplayer Servers в зависимости от текущей нагрузки. Сервис должен регулярно опрашивать PlayFab, отслеживать заполненность серверов, новые подключения, пустые инстансы и на основе этой информации автоматически поднимать или выключать игровые сервера. Важно обеспечить корректное распределение нагрузки между билдами, защиту от гонок, плавное отключение пустых серверов и стабильную работу при высоком онлайне. Помимо логики скейлинга необходимо продумать архитектуру самого сервиса: хранение состояния, защиту от одновременных операций, систему логирования и метрик, алерты, отказоустойчивость и нормальный деплой. Решение должно быть продакшн-готовым: устойчивым к сбоям PlayFab, перепадам нагрузки, пере запускам backend-а и обновлениям билдов.

Обязательные навыки:

  • Опыт работы с PlayFab Multiplayer Servers (MPS):

    • управление жизненным циклом серверов (StandingBy, Active, Terminated);

    • работа с Allocation / Deallocation;

    • использование серверных API PlayFab для получения списка серверов и их состояния.

    • Опыт проектирования и деплоя масштабируемых HighLoad-систем с настройкой автоскейлинга под пиковые нагрузки.

  • Умение писать backend-сервис, который:

    • регулярно опрашивает PlayFab по API;

    • получает список всех серверов (ListMultiplayerServers);

    • анализирует загрузку: количество игроков, состояние сессий, idle-time;

    • принимает автоматические решения о запуске новых серверов;

    • останавливает пустые серверы для экономии.

  • Уверенное владение Node.js или C# (.NET) — одно из двух обязательно (официальные SDK PlayFab).

  • Хорошее понимание:

    • PlayFab серверный SDK (Node.js или C#);

    • асинхронной логики и очередей.

Знание архитектуры PlayFab MPS

  • Build ID, Regions, VM Sizes.

  • StandingBy pool.

  • Allocation Queue.

  • Активные сервера, неактивные сервера, тайминги простоя.

  • Правила масштабирования и ограничения PlayFab.