FiveM-разработчик — TypeScript, серверная и клиентская логика
Описание
ВНИМАНИЕ! Рассматриваем кандидатов только с опытом коммерческой разработки GTA RP проектов.Развиваем GTA V RP-проект на FiveM и ищем разработчика для создания новых игровых механик и развития существующих систем.У проекта собственная кодовая база и архитектура, без ESX, QBCore и других готовых RP-фреймворков.Основной стек: TypeScript, Node.js, FiveM API, PostgreSQL, TypeORM. Сервер и игровой клиент написаны на TypeScript, используют общие типы и собственную систему событий/RPC. Интерфейсы — NUI/CEF на React.Обязанности: • Разрабатывать игровые системы целиком: серверную логику, клиентское поведение и взаимодействие с интерфейсами.• Дорабатывать существующие механики и поддерживать общие модули проекта.• Работать с игровыми сущностями, сетевыми событиями, state bags и синхронизацией состояния между игроками.• Проектировать хранение данных в PostgreSQL, работать с TypeORM, запросами и транзакциями.• Реализовывать серверные проверки, предотвращать дюпы, повторные списания и ошибки при одновременных действиях игроков.• Находить и исправлять баги, рассинхронизацию и проблемы производительности сервера и клиента. Требования: • Уверенное владение TypeScript/JavaScript: типизация, ООП, асинхронный код, обработка ошибок.• Опыт разработки серверных и клиентских скриптов FiveM, работы с natives и сетевыми сущностями.• Умение самостоятельно реализовывать игровые механики на собственной архитектуре.• Знание PostgreSQL и SQL: связи, индексы, транзакции и целостность данных; опыт работы с ORM.• Понимание границ доверия между клиентом и сервером: права, деньги, предметы и награды должны проверяться на сервере.• Умение разбираться в существующем коде, соблюдать принятый стиль и работать с Git. Будут плюсом опыт с TypeORM, интеграцией NUI/CEF и React, профилированием FiveM, а также разработкой экономики, инвентаря и других RP-систем. В отклике расскажите о своём опыте с FiveM и TypeScript, приложите примеры кода или видео реализованных механик и укажите, какие части разрабатывали лично.