Мы развиваем внутренние продукты, которые поддерживают процессы Performance Review, премирования и развития более чем для 30 тыс. сотрудников. Сейчас команда решает две большие задачи: развивает существующие сервисы и постепенно переводит систему с исторического Python/Django-монолита на сервисную архитектуру. Для новых сервисов используем Kotlin, Spring Boot и Temporal. Ищем бэкенд-разработчика с хорошей инженерной базой и опытом коммерческой разработки, который хочет писать код, разбираться в архитектуре и расти в сильной продуктовой команде. Наш стек: * Kotlin, Spring Boot — основной стек для новых сервисов * Temporal — для оркестрации бизнес-процессов * PostgreSQL, Redis, S3 — для хранения данных и реализации кеширования * Python, Django, Celery — исторический стек, который мы продолжаем поддерживать и развивать

Обязанности:

Разрабатывать новые сервисы на Kotlin и Spring Boot
Мы постепенно переводим систему с Python/Django-монолита на сервисную архитектуру, поэтому одна из ключевых задач в команде — запускать новые бэкенд-сервисы на Kotlin и Spring Boot. Это продуктовая разработка: сервисы напрямую поддерживают процессы Performance Review, премирования и развития сотрудников. Важно не только писать код, но и продумывать API, структуру данных и взаимодействие сервисов с учётом реальных пользовательских сценариев. Автоматизировать сложные бизнес-процессы с помощью Temporal
У нас длинные и нетривиальные процессы согласования и объявления результатов Performance Review. Для их оркестрации мы используем Temporal и постепенно выносим туда всё, что связано с управлением сложной бизнес-логикой и коммуникациями. Вам предстоит проектировать и реализовывать workflow-процессы, разбираться в нестандартных сценариях и обеспечивать предсказуемость и надёжность системы. Проектировать решения, улучшать критичные сценарии
Мы ожидаем, что вы станете участвовать в задачах целиком: от обсуждения подхода до запуска в продакшен. В работе будет много проектирования: нужно продумывать архитектуру изменений, обсуждать решения с командой и участвовать в дизайн-ревью крупных фич. Отдельное внимание уделяем критичным сценариям: у сервисов умеренная средняя нагрузка, но в периоды Performance Review появляются заметные пики. Поэтому для нас важны отказоустойчивость, предсказуемая производительность и аккуратная работа с критичными бизнес-процессами в соответствии с лучшими практиками построения highload-систем. Развивать текущие Django-сервисы, пока идёт миграция
Миграция не останавливает развитие продукта: пока мы строим новую архитектуру, бизнесу по-прежнему нужны новые фичи, улучшения и изменения в сценариях. Поэтому потребуется работать не только с новым стеком, но и с текущей системой на Python/Django. Нам важно, чтобы переход к новой архитектуре шёл без остановки продукта, поэтому вам предстоит аккуратно встраивать изменения в существующую кодовую базу и учитывать её ограничения. Больше о бэкенде в Яндексе — в канале Yandex for Backend

Ключевые навыки:

  • Разрабатывали REST API с использованием Spring Boot
  • Можете проектировать структуру реляционных баз данных
  • Работали с инструментами для управления микросервисами и их оркестрации, например с Kubernetes, Docker
  • Хотите разбираться в сложной бизнес-логике и развиваться в проектировании систем
  • Готовы работать с Kotlin или Spring Boot и погружаться в кодовую базу на Python и Django

Дополнительные требования:

  • Знакомы с Temporal (или другими workflow-движками)
  • Интересуетесь обеспечением производительности, качества кода и устройством распределённых систем
  • Работали с Python и Django