Привет! Я Сергей Пучин, руководитель группы распределённых запросов в YDB, опенсорсной распределённой базе данных. Наша команда отвечает за распределённое выполнение запросов в YDB — сложную и интересную задачу, от решения которой зависит удобство использования, производительность и консистентность БД. У нас сильная команда разработки и амбициозные задачи — мы ищем людей, которые помогут нам стать ещё сильнее!
YDB — это распределённая отказоустойчивая реляционная база данных с открытым исходным кодом, которая сочетает высокую доступность, масштабируемость и производительность. Она обеспечивает строгую согласованность, ACID-транзакции и автоматическое партиционирование, поддерживает транзакционные, аналитические и потоковые нагрузки. YDB работает на десятках тысяч узлов, хранит петабайты данных и обслуживает миллионы запросов в секунду.
Команда Query Processing отвечает за выполнение пользовательских запросов в YDB — от приёма запроса через публичный API до распределённых вычислений на узлах кластера. В нашей зоне ответственности находятся управление сессиями и транзакциями, распределённое планирование, управление ресурсами и отказами и непосредственно вычислительный рантайм.
Эта подсистема находится на пересечении распределённых систем, СУБД и высокопроизводительных вычислений. От её архитектуры напрямую зависят задержки и пропускная способность запросов, эффективность использования ресурсов, устойчивость к сбоям и способность YDB одинаково хорошо выполнять короткие OLTP-транзакции и тяжёлые аналитические запросы.
Мы ищем руководителя, который возьмёт на себя развитие команды и техническое лидерство в этой области: будет определять архитектуру системы, вести ключевые проекты, развивать инженеров и отвечать за результат команды.
Руководство командой и техническое развитие области выполнения запросов
Вы будете определять приоритеты, принимать ключевые архитектурные решения, вести проекты. Помогать инженерам расти, участвовать в найме и формировать сильную инженерную культуру.
Развитие функциональности запросов в YDB
Вы станете поддерживать новые пользовательские сценарии и упрощать существующие. Достигать функционального паритета с конкурирующими СУБД.
Повышение производительности.
Вам предстоит снижать задержки и потребление CPU на всех этапах выполнения запроса — от его приёма и распределённого планирования до локальных вычислений на узлах. Искать оптимизации как для коротких OLTP-запросов, так и для сложных распределённых вычислений.
Управление ресурсами
Нужно развивать планирование запросов, квотирование и контроль потребления CPU и памяти, повышать утилизацию кластера и обеспечивать предсказуемое поведение системы при высокой нагрузке и одновременном выполнении большого числа запросов.
Развитие аналитических сценариев
Ещё одна важная задача — улучшать поведение YDB при выполнении сложных запросов над большими объёмами данных, требующих материализации данных, продуманных алгоритмов восстановления, эффективной утилизации и строгого контроля потребления ресурсов.
Больше о бэкенде в Яндексе — в канале Yandex for Backend