Платформа YT — это ключевой компонент инфраструктуры хранения и обработки данных в Яндексе. Мы решаем сложные задачи и стремимся к тому, чтобы решения получались надежными, удобными и достаточно простыми в использовании. Ищем сильного разработчика в команду YT ORM, которому интересны подобные вызовы и который хотел бы строить продукты для тысяч разработчиков из всего Яндекса.
ORM — это библиотека, описывающая модель данных поверх динамических таблиц YT и предоставляющая удобную абстракцию между пользовательским кодом и слоем хранения данных. Библиотека позволяет описывать объекты и связи между ними с помощью Protobuf-сообщений, а также с помощью Protobuf-аннотаций позволяет настраивать вторичные индексы, хранение истории по наборам полей и другую функциональность. Посредством кодогенерации из данного описания объектов строится набор классов и функций на С++, с которыми уже взаимодействует пользовательское приложение.
С помощью ORM внутри Яндекса построено два крупных сервиса: YP — ключевая часть RTC, отвечающая за хранение метаинформации обо всех хостах Яндекса, сервисах и их подах, Grut — единая база рекламы, отвечающая за её показ и модерацию.
Объектная модель как YP, так и Grut насчитывает десятки видов взаимосвязанных объектов. Также оба сервиса работают в режиме Real-time и хранят десятки терабайт информации в динамических таблицах YT.
Будет плюсом, если вы:
Команда Yandex Infrastructure создаёт и предоставляет внутреннюю инфраструктуру Яндекса — фундамент из продуктов и технологий, на базе которого тысячи инженеров разрабатывают, деплоят и эксплуатируют основные сервисы Яндекса: Поиск, Такси, Маркет, Алису, Кинопоиск и многие другие.