Не упустите лучшие вакансии!
Подключите наш Telegram-бот и получайте мгновенные уведомления о новых предложениях из 10+ источников. Будьте первым, кто откликнется!
Подключить ботаSRE в службу разработки динамических таблиц YTsaurus
Эксплуатация такой большой и нагруженной системы требует, с одной стороны, хорошо построенных процессов надёжности, а с другой — большого количества низкоуровневых оптимизаций и выстроенных на разных уровнях степеней защиты от сбоев и перегрузок. Задачи по созданию таких решений относят к областям Site Reliability Engineering и Performance Engineering.
Вам предстоит разбираться с узкими местами работы системы, в том числе на стыке взаимодействия с операционной системой и железом, и вырабатывать решения, нацеленные на устранение этих узких мест. Это может быть оптимизация кода, добавление новых механизмов квотирования или перестраивание существующих процессов — как показывает практика, в проблемах эксплуатации не всегда можно ограничиться каким-то одним подходом.
Какие задачи вас ждут
Оптимизация потребления CPUАрхитектурно YTsaurus состоит из нескольких компонентов, каждый из которых реализован в парадигме тредпулов и файберов. Это не всегда эффективно и надёжно по CPU: во-первых, перемещение файбера между тредпулами приводит к задержкам, и при перегрузках эти задержки могут быть очень высоки, а во-вторых, конфигурация с выделенными тредпулами плохо подходит для запуска в контейнерах с малым числом ядер. Вам предстоит разобраться во внутренней архитектуре и оптимизировать сервис, чтобы снизить время обработки запросов.
Диагностика задержек в сети
Запросы в YTsaurus выполняются распределённо и, следовательно, чувствительны к сетевым задержкам. По имеющимся инструментам сложно понять, на каком уровне происходит задержка: где-то в стеке на стороне YTsaurus или в нижележащей инфраструктуре. Вам нужно реализовать средство мониторинга сетевых задержек на стороне YTsaurus, чтобы можно было понять, на какой стороне нужно искать причину долгой передачи данных.
Внедрение SLA
Придумать и внедрить SLA для сервиса управления базами данных — непростая и творческая задача. Вам совместно с другими разработчиками предстоит придумать и внедрить контракт, который был бы понятен как эксплуатации YTsaurus, так и сервисам, хранящим свои базы данных в YTsaurus.
Больше о бэкенде в Яндексе — в канале Yandex for Backend
Мы ждем, что вы
- Умеете программировать на C++, готовы писать на Go и Python
- Любите погружаться в особенности работы операционной системы и железа
- Нацелены на построение надёжного сервиса для пользователей
Будет плюсом, если вы
- Работали с низкоуровневыми оптимизациями
- Знакомы с bpftools
- Знаете теорию SRE и то, как выстраиваются SRE-процессы
Ваше резюме увидят первым!
Автоматическое поднятие на HeadHunter каждые 4 часа. Увеличьте свои шансы на успех в 10 раз!
Подключить автоподнятие