Разработчик на Java в команду Alerting & Notifications
Наши сервисы — часть платформы Observability — позволяют создавать алерты и уведомлять об изменении состояний через каналы нотификаций (телеграм, телефонные звонки, клауд-функции и др.). Наша цель — предоставить пользователю лёгкий и быстрый способ получить однозначный ответ о состоянии систем в любой момент. Почти все команды Яндекса пользуются возможностями платформы для мониторинга состояния своих сервисов — как внешних, так и внутренних. Кроме этого, сервис доступен пользователям Yandex Cloud.
Наша команда отвечает за развитие и поддержку четырёх основных сервисов:
- Алертинг — сервис, рассчитывающий пользовательские алерты поверх метрик. Мы предоставляем возможность создавать различные виды алертов (PromQL-подобные выражения, SLO-алерты, алерты на аномалии с применением ML-алгоритмов, агрегаты над алертами).
- Сервис уведомлений, который позволяет задать шаблон и через единый API отправлять в SMS, мессенджерах и по телефону и простые уведомления, и их сложные последовательности («Напиши, а если не ответили в течение 10 минут — позвони»).
- Система событийного мониторинга, которая позволяет формировать верхнеуровневое (агрегированное) состояние сервиса на основании входных данных о его здоровье из разных источников (а это десятки миллионов уникальных событий) по правилам, заданным пользователем.
- Система синтетического мониторинга — новый сервис платформы — позволяет настраивать проверки по типу пинговалки: проверку живости хоста, проверку сертификатов.
Какие задачи вас ждут
- Масштабировать системы в соответствии с ростом нагрузок
Стабильный рост нагрузки (порядка 30% в год) требует проводить регулярное масштабирование: искать узкие места, заниматься RnD вариантов решения, реализовывать горизонтальное масштабирование. - Внедрять отказоустойчивость
Если алертинг не работает — пользователи остаются без приборов по своему продакшену и могут пропустить проблему, которая приведёт к серьёзному инциденту. Поэтому необходимо, чтобы алертинг успевал просчитывать все алерты и был отказоустойчив. - Прорабатывать технические и продуктовые решения для пользовательских сценариев
Наши пользователи — это такие же разработчики, как и мы сами. Проблемы, с которыми сталкиваются пользователи, актуальны и для нас. Поэтому разработчики всегда участвуют в обсуждении и проработке и технических, и продуктовых решений. - Упрощать пользовательские сценарии работы с алертами
Первое, с чем сталкивается пользователь, — как завести алерт для конкретного сценария. Тут мы хотим предоставлять типовые алерты: на отклонение, тренд, резкие взлёты и падения, SLO. - Разрабатывать общую платформу
Понадобится адаптировать существующую функциональность для запуска в Yandex Cloud с доступом внешних пользователей...
Мы ждем, что вы
- Умеете писать и понимаете многопоточный код: весь алертинг работает асинхронно с использованием акторной модели.
- Готовы писать код на Java и Go (соотношение 80% на 20%).
- Понимаете ключевые аспекты построения отказоустойчивых распределённых систем.
Что мы предлагаем
- Расширенная медицинская страховка начинает работать с первого месяца в Яндексе.
- Страховка для родственников по системе 80/20.
- В Яндексе есть всё, чтобы постоянно развиваться и учиться новому.
- Гибкий график.
- Льготная ставка на покупку жилья и улучшение жилищных условий.
- Страхование, детские дни в офисе, подарки на рождение детей.