Обязанности:
Замониторенность из коробкиСегодня, чтобы начать мониторинг нового сервиса, разработчику нужно долго разбираться в конфигурациях, интеграциях и ручной настройке метрик. Наша цель — сделать так, чтобы максимальный объём информации о состоянии сервисов собирался и визуализировался автоматически, без дополнительных телодвижений со стороны пользователя. Вы будете проектировать и реализовывать технологии автообнаружения сервисов, динамической генерации метрик и автоматического создания дашбордов, которые работают «из коробки» даже в самых сложных сценариях — от bare-metal до распределённых облачных систем. Вам предстоит решать очень крутую задачу: как покрыть 90% типов сервисов, не написав ни единой строчки дополнительного кода? Как гарантировать полную замониторенность даже в условиях внезапных изменений инфраструктуры? Мгновенный drilldown при инцидентах и получение инсайтов
В современных распределённых системах локализовать инцидент бывает сложнее, чем его починить. Ваша задача — создавать инструменты, которые в ситуации «пожара» позволяют зайти в платформу и сразу понять, что случилось, где именно возник сбой, как он повлиял на систему и что делать дальше, — вместо того, чтобы потеряться в огромном объёме сырых данных. Пользователь видит не разрозненные данные, а связанную историю происходящего: система подсказывает возможные руткозы и предлагает способы быстро углубиться в детали для локализации сбоя. Интерфейсы и протоколы взаимодействия с платформой
В нашей экосистеме классических решений часто оказывается недостаточно — поэтому многое приходится изобретать с нуля или адаптировать под свои цели. Чтобы обрабатывать миллионы метрик в секунду, мы создали собственный бинарный формат Spack: в отличие от Protobuf, он поддерживает динамические наборы метрик без схемы, эффективно сжимает и быстро декодирует данные (LZ4, ZSTD), что критично для стабильной работы под экстремальными нагрузками. Вам предстоит проектировать архитектуру API, разрабатывать SDK и gRPC-интерфейсы, развивать внутренние протоколы и форматы обмена данными, чтобы обеспечивать единые стандарты и высокую отказоустойчивость для всех сервисов Яндекса. Интеграция AI/ML
Мы хотим перейти от реактивного мониторинга к проактивному — такой системе, которая умеет выявлять корневые причины инцидентов и предугадывать проблемы, которые ещё не обнаружились явно, но уже могут быть предсказаны. Вам предстоит разработать интеллектуальный слой для нашей платформы: от создания и внедрения моделей определения аномалий (на основе показателей, логов, трасс) до построения механизмов оповещений и диагностики сложных сбоев. Вы будете решать сложные задачи: как учиться на инцидентах, которые не повторяются? Как сокращать время до обнаружения и локализации проблем в инфраструктуре?
Ключевые навыки:
- Понимаете, как устроены распределённые и высоконагруженные системы, знакомы с особенностями их архитектуры и требованиями к отказоустойчивости
- Имеете опыт промышленной разработки на Java (опыт работы с большими кодовыми базами)
- Знакомы с базовыми алгоритмами и структурами данных, знаете, как их применять в работе
- Владеете основами работы в Unix-системах и используете их инструменты для диагностики и анализа сервисов
- Разрабатывали API, SDK или библиотеки для разработчиков
- Умеете проектировать удобные, расширяемые и безопасные REST/gRPC-интерфейсы
Дополнительные требования:
- Работали с системами мониторинга: Prometheus, Grafana, ELK, Jaeger, DataDog или аналогами
- Знакомы с Terraform или другими инструментами IaC
- Смотрите другие вакансии направления Yandex Cloud Monium по ссылке.
