Яндекс Музыка — это миллионы пользователей, сотни тысяч RPS и десятки микросервисов. Наша команда разрабатывает продуктовую платформу бэкенда Музыки, благодаря которой запускаются новые продукты, фичи и появляются новые интеграции. В платформу входят, например, API основных музыкальных сущностей — треков, альбомов и артистов, вычисление доступности и ограничений на контент, раздача аудиофайлов, A/B-эксперименты, профиль пользователя, таргетирование контента на пользователей, синхронное прослушивание с разных устройств и многое другое. Наши технологии: Java 17, Spring Boot, MongoDB, YDB, Redis, MapReduce на кластерах Яндекса, микросервисная архитектура

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

Проектирование и разработка новых микросервисов
У нас нет системных аналитиков и архитекторов, поэтому разработчики самостоятельно уточняют функциональные требования к фиче, составляют нефункциональные требования, проектируют архитектуру, представляют на ревью команде и далее реализуют задуманное до внедрения в продакшен. Платформизация решений
Одна из задач нашей команды — сделать так, чтобы добавление новых клиентов, платформ и стран было максимально простым и безболезненным. Мы стараемся сделать нашу архитектуру и код гибкими, заранее учитывающими будущие возможные запуски и интеграции. Быстрая разработка и запуск экспериментальных проектов
Иногда стабильность и архитектура уходят на второй план, когда нам нужно быстро проверить продуктовую гипотезу. Например, запустить аналог «Моей волны» в отдельном микросервисе или адаптировать результаты лучшего поиска. Оптимизация
Многие из наших компонентов являются высоконагруженными и критичными для пользователей. Поэтому мы по максимуму оптимизируем ресурсы и скорость работы сервисов, повышаем их надёжность и обеспечиваем отказоустойчивость. Больше о бэкенде в Яндексе — в канале Yandex for Backend

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

  • Отлично разбираетесь в Java
  • Знаете базовые алгоритмы и структуры данных, а также области их применения
  • Работали с реляционными и нереляционными базами данных
  • Самостоятельно прорабатывали продуктовые проекты
  • Проектировали архитектуру для продуктовых фич
  • Писали автотесты для проверки своего кода
  • Способны быстро погружаться в кодовую базу и использовать широкий спектр технологий
  • Умеете и любите работать в команде

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

  • Понимаете принципы микросервисной архитектуры
  • Разрабатывали высоконагруженные распределённые системы
  • Умеете эффективно работать со смежниками
  • Любите музыку и всё, что с ней связано