🔥

Не упустите лучшие вакансии!

Подключите наш Telegram-бот и получайте мгновенные уведомления о новых предложениях из 10+ источников. Будьте первым, кто откликнется!

Подключить бота

Разработчик формата хранения данных в динамических таблицах YTsaurus

Яндекс
Москва
Удаленно
Опубликовано: 26 Feb 2026
YTsaurus — программный продукт для построения больших озёр данных, причём данные могут обрабатываться в разных парадигмах: и MapReduce (фоновая обработка), и NewSQL (в реальном времени). В YTsaurus собственный слой хранения данных и собственные реализации форматов хранения — эффективные на реальных данных и объёмах Яндекса.

Вам предстоит заниматься слоем хранения данных и адаптировать его под задачи быстрой аналитики.

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

Иерархический формат данных
Одна из важных задач — разработать формат сжатия для иерархических данных, который позволит и эффективно читать большими диапазонами, и быстро собирать один конкретный документ или его часть.

Подобная задача требует как работы с различными механизмами сжатия, так и низкоуровневой инженерной проработки на уровне процессора и доступа к памяти. Вам потребуются и SIMD-инструкции, и адаптация кода под иерархию памяти на процессоре. Мы ожидаем, что вы любите алгоритмы и эффективное программирование на С++!

Формат исторических данных для задачи аналитики
В динамических таблицах (так мы называем NewSQL-компоненту YTsaurus) традиционно используется формат данных, заточенный под обработку транзакций. История в таких данных хранится вместе с временными метками, что позволяет обеспечить уровень изоляции snapshot isolation. Такие данные избыточны в задачах аналитики: для них лучше подходят более простые форматы. Вам предстоит найти компромисс и адаптировать хранение истории в динтаблицах так, чтобы приспособить их к транзакционно-аналитическим задачам.

Аналитические индексы
В аналитике применяются свои индексы: SMA, star-tree. Вам нужно будет добавить их в форматы данных, реализовать построение и использование в запросах. Эта задача потребует погружаться в весь цикл обработки SQL-запроса.

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

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

  • Умеете программировать на C++
  • Знаете и продолжаете узнавать новые алгоритмы
  • Любите погружаться в особенности работы железа
  • Хотите строить надёжный сервис для пользователей

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

  • Работали с низкоуровневыми оптимизациями: подгоняли алгоритм под иерархию памяти и конвейер процессора
  • Разбираетесь в алгоритмах сжатия, особенно быстрого
  • Знакомы с общими принципами построения СУБД и обработки SQL-запросов
🚀

Ваше резюме увидят первым!

Автоматическое поднятие на HeadHunter каждые 4 часа. Увеличьте свои шансы на успех в 10 раз!

Подключить автоподнятие