Разработчик бэкенда в Yandex Monitoring
Команда Yandex Monitoring (Monium) разрабатывает систему для количественного мониторинга инфраструктуры и приложений: пайплайны сбора, хранилище временных рядов и движок запросов. Роль важна для обеспечения масштабируемости, отказоустойчивости и быстрой аналитики для внутренних и внешних пользователей
ГрейдSenior
Стек
JavaJVMYDBPrometheusC++JMHJFRasync-profilerPromQLOpenTelemetryApache CassandraApache DruidGrafanaDatadog
Задачи
- •Разработка динамической агрегации метрик для ускорения чтения
- •Реализация антиэнтропийных механизмов для синхронизации реплик
- •Автоматический split/merge шардов индекса в зависимости от нагрузки
- •Оптимизация и параллелизация движка вычисления запросов
- •Поддержка совместимости с опенсорс-протоколами (PromQL, OpenTelemetry, Remote Write)
Обязательно
- •Опыт разработки высоконагруженных отказоустойчивых распределённых систем
- •Понимание многопоточного программирования и связанных ограничений
- •Знание классических алгоритмов и структур данных и их применения
- •Опыт оптимизации производительности: профилирование, поиск узких мест, оптимизация памяти и CPU
- •Готовность разбираться глубоко: читать исходники JVM, патчить библиотеки, расследовать инциденты
Будет плюсом
- •Глубокие знания JVM: GC, JIT, модель памяти; опыт с JMH, JFR, async-profiler
- •Опыт разработки систем хранения и обработки данных
- •Знание устройства Prometheus и PromQL
- •Опыт с Apache Cassandra или Apache Druid
- •Знакомство с Mechanical Sympathy и Data-Oriented Design
- •Опыт работы с системами мониторинга (Grafana, Datadog)
- •Умение читать код на Go и C++