Задачи:
— Проектирование архитектуры высоконагруженных модулей личного кабинета, написание чистого, поддерживаемого кода на PHP (современные версии 8.x, Yii2) и Golang.
— Проектирование схем данных, написание сложных запросов, оптимизация и настройка производительности PostgreSQL (индексы, партиционирование, работа с JSONB).
— Написание unit- и интеграционных тестов для критически важных модулей, поддержание и развитие тестовой базы, контроль процентного покрытия кода тестами.
— Внедрение практик тестирования в командный процесс, проведение код-ревью с фокусом на тестируемость кода.
— Полный цикл доставки кода до продакшена, написание и поддержка пайплайнов в GitLab CI/CD, автоматизация сборки, тестирования и деплоя (бэкенд + фронтенд), обеспечение zero-downtime деплоя.
— Тесное взаимодействие с фронтенд-разработчиками (стек React, TypeScript), ревью их кода, помощь в проектировании API.
— Участие в код-ревью, поиск узких мест, рефакторинг легаси, написание тестов (unit/integration).
— Наставничество и помощь в росте менее опытных коллег, участие в декомпозиции задач и оценке сроков.
Требования:
— Уверенное владение PHP, знание Yii2 (ООП, SOLID, паттерны проектирования).
— Знание PostgreSQL: умение оптимизировать запросы, работа с большими объемами данных, знание внутренностей СУБД.
— Опыт разработки на Golang или сильное желание и базовые знания для активного перехода на него.
— Опыт настройки CI/CD в GitLab (написание пайплайнов, автоматизация деплоя).
— Опыт написания автотестов (unit, integration) и понимание их роли в обеспечении стабильности продукта.
— Понимание устройства современных SPA-приложений, опыт интеграции с React приложениями.
— Опыт работы с очередями (RabbitMQ) и in-memory БД (Redis, Memcached).
— Опыт работы в Linux, понимание сети, умение искать проблемы в логах.
— Знание Docker, оркестрации (Kubernetes / Swarm) будет плюсом.
— Хорошие коммуникативные навыки и умение писать документацию.
Контакты работодателя доступны по кнопке «Откликнуться» после входа.