Яндекс

Разработчик бэкенда в Yandex Monitoring

Middle · Гибрид · Английский не нужен

Не указано: география

Навыки

  • Алгоритмы и структуры данных
  • Cassandra / Scylla
  • C++
  • Дашборды и витрины
  • Datadog / New Relic
  • Дисциплина
  • Распределённые системы
Ещё 16
  • Go
  • Grafana
  • Jaeger / OpenTelemetry
  • Java
  • Kubernetes
  • Микросервисы
  • Мониторинг и observability
  • Prometheus
  • Retention и отток
  • SQL: оконные функции, CTE
  • SRE-практики
  • Статистика
  • Telegram-канал
  • Временные ряды
  • Yandex Cloud
  • YDB

О компании и продукте

  • Мы строим платформу Observability, которая обрабатывает миллиарды семплов в секунду, хранит петабайты данных и должна работать даже тогда, когда всё вокруг горит
  • Мы каждую секунду обрабатываем 2,5 миллиарда семплов на запись и 2 миллиарда на чтение, каждую минуту рассчитываем 18 миллионов алертов, храним 8 петабайт исторических данных. Такие объёмы требуют решения сложных задач масштабирования и отказоустойчивости
  • Помимо этого, мы разрабатываем слой совместимости с Prometheus, что позволяет клиентам Yandex Cloud пользоваться привычными инструментами и не думать о масштабировании собственных средств мониторинга. Бо́льшая часть компонентов на Java (мы стараемся использовать самые свежие версии). Небольшая часть на C++. Данные и метаданные хранятся в YDB. Какие задачи вас ждут Динамическая агрегация метрик. Агрегаты на записи существенно ускоряют вычисления для запросов с большой кардинальностью (например, когда нужно посчитать RPS не для одного сервера, а для кластера из тысяч машин). Однако пользователи не всегда знают заранее, по каким измерениям им потребуются агрегаты, а создавать их для всех возможных комбинаций невозможно. В чём вызов?
  • Мы разрабатываем систему, которая станет динамически разделять и объединять части индекса в зависимости от нагрузки и паттернов доступа. В чём вызов?

Задачи

  • Разработчик бэкенда в Yandex Monitoring
  • Если вы любите копать глубоко, не боитесь сложных технических вызовов и считаете, что высоконагруженная Java — это не оксюморон, то нам есть о чём поговорить
  • Станислав Каширин
  • Руководитель группы Observability Metrics
  • С приходом микросервисов архитектура даже простых систем стала гораздо более распределённой
  • Чтобы понимать, что происходит с сервисом в конкретный момент, нужны подходящие инструменты: метрики, трейсы, логи, алерты, дашборды и т. д
  • Платформа Monium помогает нашим пользователям легко и быстро получать однозначный ответ о состоянии своих систем в любой момент
  • Yandex Monitoring — часть платформы, отвечающая за количественный мониторинг инфраструктуры и приложений
  • Как построить надёжный пайплайн сбора и обработки метрик, позволяющий опрашивать миллионы эндпойнтов?
  • Как хранить миллиарды уникальных временных рядов, чтобы их можно было мгновенно найти?
  • Как равномерно распределять stateful-нагрузку между тысячами серверов и эффективно утилизировать ресурсы в мультитенантной системе?
  • Мониторинг активно развивается — его используют почти все команды Яндекса, а также внешние пользователи сервисов Yandex Cloud
  • Такие агрегаты можно рассматривать как своего рода индексы в классических базах данных — ускоряя сценарии чтения, мы неизбежно замедляем запись
  • Нам нужно разработать интеллектуальный метод, который на основе статистики будет понимать, когда агрегаты действительно нужны и стоит создать новые правила агрегирования, а когда агрегат больше не используется и можно освободить ресурсы
  • Антиэнтропийные механизмы для распределённого хранилища
  • Для надёжности мы храним данные в нескольких репликах, но значения между ними могут расходиться
  • Нам нужно разработать механизм, который будет обнаруживать и устранять такие расхождения, не замедляя основной процесс записи
  • В чём вызов?
  • Механизмы синхронизации данных могут нарушать порядок записей, что критично для алгоритмов сжатия временны́х рядов (например, Gorilla encoding)
  • Нужно создать решение, которое будет работать быстро и при этом сохранять эффективность сжатия данных
  • Auto Split/Merge для шардирования индекса
  • Обратный индекс даже для метрик одного сервиса может быть настолько велик, что не уместится в памяти одной машины
  • Разработать стабильный алгоритм, который будет не слишком часто перераспределять данные, создавая лишнюю нагрузку на сеть и процессор, но при этом эффективно реагировать на изменения в характере данных, особенно с учётом высокого churn rate в Kubernetes-окружениях
  • Развитие движка вычисления запросов
  • В нашем движке запросов большое пространство для оптимизаций: от переноса расчёта агрегатных функций ближе к данным до реализации стриминговой обработки и параллелизации вычислений

Требования

  • Разрабатывали высоконагруженные отказоустойчивые распределённые системы
  • Понимаете принципы многопоточного программирования, знакомы с основными подходами, проблемами и ограничениями в этой области
  • Знаете классические алгоритмы и структуры данных, умеете выбирать оптимальные для конкретных задач
  • Оптимизировали производительность: умеете профилировать код, находить узкие места, оптимизировать работу с памятью и CPU
  • Готовы копать глубоко: читать исходники JVM, патчить сторонние библиотеки, расследовать сложные инциденты
  • От 5 лет
  • Глубоко знаете Java: понимаете устройство JVM, GC, JIT, модель памяти, знакомы с JMH, JFR, async-profiler

Будет плюсом

  • Участвовали в разработке систем хранения и обработки данных
  • Интересовались устройством Prometheus, Apache Cassandra, Apache Druid
  • Знакомы с принципами Mechanical Sympathy и Data-Oriented Design
  • Работали с системами мониторинга (Prometheus, Grafana, Datadog и др.)
  • Умеете читать код на Go и C++
  • Смотрите другие вакансии направления Yandex Cloud Monium по ссылке
  • Больше о команде Подписывайтесь на телеграм-канал Inside Yandex Cloud , чтобы узнать больше про нашу команду и технологии!
  • Как в Яндексе проходят алгоритмические секции собеседований
  • Как мы нанимаем бэкенд-разработчиков
  • Задачи для подготовки к собеседованиям

Условия

  • Гибридный
  • Удалённая работа
  • Меня зовут Стас, я руковожу командой Observability Metrics

Паспорт вакансии

История публикации

Появилась в Вакандии28 дней
Перепубликациинетпубликовалась один раз
Проверяли на источникеВидели 28 дней назад
Среди похожихНет данных64 из 30 · у похожих вакансий почти одинаковый возраст — сравнивать нечего

Откуда что взялось

Отмечено то, что вывели мы. Без пометки — значение назвал работодатель.

ГрейдMiddleвыведено из другого признака
Формат работыГибридвычитано из текста вакансии
Географияне указана
Зарплата≈ 230 217 RUB в месяцнаша оценка, в вакансии не названа

Почему на этом месте в выдаче

Порядок выдачи объявлен контрактом: свежесть решает между днями, полнота и зарплата — внутри дня.

Полнота карточки753 из 4 полей: грейд, формат, география, зарплата
Зарплата названа0вилки работодателя нет, показана наша оценка

Проверка Вакандии

Источники и свежесть

Тип источника
Карьерный сайт работодателя
Найдено публикаций
1
Посмотреть публикации и даты
  • careerОсновная публикация · 2026-03-31

Работодатель

Яндекс

50 активных вакансий · вилка работодателя указана в 1%

Открыть профиль компании

Безопасность

Отклик уходит на сайт источника

Вакандия показывает вакансию, но не отправляет отклик и не проверяет работодателя. Сам отклик вы оставляете на внешнем сайтеyandex.ru.

Признаки мошенничества
  • Просят предоплату, «залог» или деньги за обучение и оборудование.
  • Требуют код из SMS, данные банковской карты или доступ к «Госуслугам».
  • Быстро уводят в мессенджер и торопят с решением.
  • Обещают большой доход без опыта и без деталей задач.

Настоящий работодатель не просит денег и платёжных данных до трудоустройства.

Продолжить поиск

Похожие вакансии

Причина сходства указана на каждой карточке

  1. Почему похожа: похожая специализация · тот же грейд

    CSSSR

    DevOps-инженер

    • Middle
    • Удалённо
    Подробнее
  2. Почему похожа: похожая специализация · тот же формат

    Gurtam

    Senior Python Developer – Vilnius

    • Senior
    • Гибрид
    • Вильнюс, Литва
    Подробнее