К списку

Тимлид в команду разработки Query Processing YDB

Яндекс

Гибрид seniorYDBБэкенд-разработчикC++

YDB — это распределённая отказоустойчивая реляционная база данных с открытым исходным кодом, которая сочетает высокую доступность, масштабируемость и производительность. Она обеспечивает строгую согласованность, ACID-транзакции и автоматическое партиционирование, поддерживает транзакционные, аналитические и потоковые нагрузки. YDB работает на десятках тысяч узлов, хранит петабайты данных и обслуживает миллионы запросов в секунду.

Команда Query Processing отвечает за выполнение пользовательских запросов в YDB — от приёма запроса через публичный API до распределённых вычислений на узлах кластера. В нашей зоне ответственности находятся управление сессиями и транзакциями, распределённое планирование, управление ресурсами и отказами и непосредственно вычислительный рантайм.

Эта подсистема находится на пересечении распределённых систем, СУБД и высокопроизводительных вычислений. От её архитектуры напрямую зависят задержки и пропускная способность запросов, эффективность использования ресурсов, устойчивость к сбоям и способность YDB одинаково хорошо выполнять короткие OLTP-транзакции и тяжёлые аналитические запросы.

Мы ищем руководителя, который возьмёт на себя развитие команды и техническое лидерство в этой области: будет определять архитектуру системы, вести ключевые проекты, развивать инженеров и отвечать за результат команды.

Какие задачи вас ждут

Руководство командой и техническое развитие области выполнения запросов
Вы будете определять приоритеты, принимать ключевые архитектурные решения, вести проекты. Помогать инженерам расти, участвовать в найме и формировать сильную инженерную культуру.

Развитие функциональности запросов в YDB
Вы станете поддерживать новые пользовательские сценарии и упрощать существующие. Достигать функционального паритета с конкурирующими СУБД.

Повышение производительности.
Вам предстоит снижать задержки и потребление CPU на всех этапах выполнения запроса — от его приёма и распределённого планирования до локальных вычислений на узлах. Искать оптимизации как для коротких OLTP-запросов, так и для сложных распределённых вычислений.

Управление ресурсами
Нужно развивать планирование запросов, квотирование и контроль потребления CPU и памяти, повышать утилизацию кластера и обеспечивать предсказуемое поведение системы при высокой нагрузке и одновременном выполнении большого числа запросов.

Развитие аналитических сценариев
Ещё одна важная задача — улучшать поведение YDB при выполнении сложных запросов над большими объёмами данных, требующих материализации данных, продуманных алгоритмов восстановления, эффективной утилизации и строгого контроля потребления ресурсов.

Больше о бэкенде в Яндексе — в канале Yandex for Backend

Мы ждём, что вы

  • Руководили командой разработки: умеете ставить цели, определять приоритеты, организовывать работу и отвечать за результат
  • Умеете развивать инженеров, давать содержательную обратную связь, участвовать в найме и формировать сильную инженерную культуру
  • Способны разбираться в сложной технической области, принимать архитектурные решения и находить баланс между развитием системы, надёжностью и скоростью поставки изменений
  • Умеете выстраивать взаимодействие со смежными командами и договариваться о решениях, затрагивающих несколько компонентов большой системы
  • Занимались разработкой на C++ и способны работать с большой кодовой базой, обсуждать технические решения и участвовать в ревью кода
  • Проектировали и развивали сложные системы от архитектурной идеи до внедрения и эксплуатации
  • Получили опыт инфраструктурной разработки: создавали системы с высокими требованиями к производительности, надёжности и масштабируемости
  • Понимаете базовые принципы работы распределённых систем, включая сетевое взаимодействие, параллельное выполнение и использование вычислительных ресурсов

Будет плюсом, если вы

  • Разрабатывали базы данных, системы распределённой обработки данных или высоконагруженные распределённые сервисы
  • Хорошо понимаете, как устроены СУБД
  • Работали с векторизованным выполнением и колоночными форматами данных
  • Разрабатывали планировщики вычислений и системы управления ресурсами
  • Занимались низкоуровневой оптимизацией производительности, работали с LLVM или другими JIT-инфраструктурами

Источник: yandex.ru (Яндекс) 29 августа 2026