Привет! Я Ксюша, руковожу командой надёжности и инструментов разработки в Маркете. Мы делаем так, чтобы разработчикам было легко писать стабильные сервисы и за минуты проверять свои изменения в максимально приближённом к проду контуре — Hamster. У нас амбициозные планы покрыть Hamster всё многообразие сервисов Маркета, для чего не обойтись без продвинутого использования ИИ и готовности разбираться с устройством всего и вся. Ждём бэкендеров, которые не готовы довольствоваться знанием только своих сервисов и хотят делать самую удобную инфраструктуру!
Яндекс Маркет — это сотни бэкенд-сервисов на C++ и Java, которые вместе собирают витрину, корзину, чекаут, промо и партнёрские инструменты. Десятки команд каждый день выкатывают в них изменения, и цена ошибки — просевшие заказы и деньги. Наша команда делает так, чтобы разработчикам было легко писать стабильные сервисы и безопасно проверять изменения до прода. Мы небольшая команда и берём всё от текущих возможностей ИИ: агенты помогают и нам, и разработчикам.
Первый наш проект — Hamster: уменьшенная копия продового Маркета. Не тестинг, который значительно отличается от прода, а именно окружение около продакшена. Разработчик прямо в пул-реквесте получает ссылку на свою версию Маркета, где его изменения проросли в несколько связанных сервисов, и оценивает фичу в комплексе.
Второй проект — инцидент-менеджмент Маркета: процесс и инструменты вокруг него. Сервисы ломаются, и мы хотим, чтобы алерты, бот, графики и разборы помогали разработчикам следить за своими сервисами, вовремя обнаруживать деградации и превращать проблемы в масштабируемые улучшения.
Довести Hamster от MVP до инструмента production-ready для всего Маркета
Сейчас Hamster покрывает ограниченное количество сервисов, и многое в нём на ручном приводе. Предстоит раскатить его на весь Маркет: сделать так, чтобы сервис на любой из наших платформ (фреймворк C++ userver, Java/Kotlin, графовые сервисы) подключался автоматически, а не через полуручную сборку конфигов, доступов, мониторингов и роутинга. Когда инструментом пользуются сотни разработчиков, он сам становится продакшеном, поэтому также предстоит работать над наблюдаемостью и стабильностью Hamster как системы.
У нас много архитектурных задач: необходимо продумывать, как связать бета-версии, роутинг трафика, деплой и безопасность, чтобы у разработчика всё завелось по кнопке. Кодогенерация и автоматики в основном на Python, спецификации — на разных языках описания.
Развивать инструменты инцидент-менеджмента
Мы отвечаем за то, чтобы инцидент замечали за минуты, чинили быстро и разбирали честно. Предстоит развивать бот, сервисы автоматизации на Python, дашборды и интеграции с трекером задач и внутренней платформой инцидентов: модель приоритетов с автоматической эскалацией, SLA на реакцию и разбор, SLO-алерты, тиры критичности сервисов.
Цель — поставить на поток улучшение через инциденты: чтобы из разбора рождались действия и рецидивы находились автоматически.
Повышать стабильность сервисов за счёт предотвращения инцидентов
Помимо Hamster, есть и другие способы не доводить проблемы до продакшена: покрывать сервисы проверенными алертами, проводить тестирование на поиск нежелательных зависимостей между сервисами, внедрять всем CI с нужными этапами проверок и многое другое. Здесь есть много векторов работы, которая окажет влияние на весь Маркет.
Больше о бэкенде в Яндексе — в канале Yandex for Backend