Челябинск, улица Кирова, 159
Присоединяйтесь к команде разработчиков космической стратегии!
В проекте браузерной стратегической космической игры Xcraft с посещаемостью более миллиона человек в месяц открыты вакансии программистов различной направленности.
Вы мечтаете работать над проектом, который объединяет миллионы пользователей по всему миру? Тогда у нас есть предложение для вас! Мы ищем талантливого Разработчика Backend уровня Middle/Middle+ для работы над браузерной стратегической космической игрой Xcraft.
Ваши задачи:
Проектирование, разработка и оптимизация нового функционала для серверной части проекта с учётом масштабирования и высокой производительности.
Оптимизация и поддержка существующего кода.
Написание phpunit-тестов.
Реализация frontend (JavaScript/TypeScript), в том числе минимальная вёрстка которую можно будет передать на финальную доработку верстальщику.
Написание сервисов для вынесения тяжёлой логики, поддающихся горизонтальному масштабированию.
Взаимодействие с другими разработчиками для интеграции игровых функций.
Требования:
Уверенное владение PHP (мы используем 8.4): опыт написания оптимизированного и поддерживаемого ООП-кода.
Опыт работы с MySQL или другой SQL-базой данных (понимание устройства индексов, оптимизации запросов).
Понимание принципов Dependency Injection (DI), SOLID.
Понимание основ асинхронного программирования (reactphp или аналогичные подходы, включая опыт из JavaScript).
Умение применять кеширование для повышения производительности и снижения нагрузки на сервисы и базу данных, а также обеспечивать его корректную инвалидацию.
Умение писать phpunit-тесты.
Знание JavaScript (или TypeScript) для написания frontend-кода, в том числе с использованием Vue 3+ Composition API.
Умение реализовывать минимальную вёрстку для последующей передачи верстальщику.
Базовое знание Git.
Пример первой задачи: добавить много игровых предметов, вникнув в игру и улучшив их конструирование. Мастер над предметами.
Будет плюсом:
Опыт работы с Symfony 7, ReactPHP (или другими асинхронными PHP-фреймворками).
Понимание работы WebSocket.
Опыт или понимание проблем race condition, работы с конкурентными состояниями.
Знание принципов работы garbage collector в PHP.
Опыт работы с RabbitMQ или другими брокерами сообщений для организации очередей и взаимодействия между сервисами.
Условия и преимущества:
О компании:
Проект активно развивается с 2009 года, используя современные технологии и инструменты: PHP 8.4, MySQL 8, Symfony 7.2, PHPStan, PHPUnit, Vite, Vue. Работа предполагает участие в развитии игровых и пользовательских интерфейсов, а также в оптимизации и поддержке уже реализованных решений.
https://xcraft.ru
Пример из проекта
https://xcraft.ru/tutorial/lab/ark/index.html
Подробнее о вакансии и компании: https://docs.google.com/document/d/1mmF9vXmuPzGLZfE0RQkoLB5UA1KlAKd9vgzolTzskls/edit?tab=t.9wzqff8at2ni