CCareerLab
Главная/Вакансии/IT/Разработчик поискового рантайма в Search-as-a-Service (C++)Яндекс
Яндекс
IT · Офис · Москва

Разработчик поискового рантайма в Search-as-a-Service (C++)

До 1 годаfulltimeОфис
Не указана
зарплата не указана в источнике
ОткликнутьсяОбновлено июль 2026 г.
ФорматОфис
Тип занятостиfulltime
ОпытДо 1 года
О компании

Яндекс — технологическая компания, создающая интеллектуальные продукты и сервисы на основе машинного обучения: поиск, беспилотники, облако, образование и десятки других направлений.

О компании

Развитие технологий поискового рантайма. Мы строим систему, предоставляющую единую модель работы с различными типами поисковых индексов. Сегодня рантайм уже поддерживает классический инвертированный индекс, HNSW-графы, KD-деревья и другие структуры данных. Вы будете развивать эти технологии и внедрять новые, выжимая максимум из доступного железа. И всё это — в многопоточной распределённой системе, от которой уже зависят сотни продуктовых сервисов. Создание SDK и инструментов для работы с рантаймом. Чтобы другие команды решали свои продуктовые

Чем предстоит заниматься

, а не погружались в устройство поиска,

Чем предстоит заниматься
  • развивать экосистему рантайма. Вы будете разрабатывать удобный SDK — единый интерфейс для отправки поисковых запросов, который упрощает интеграцию, скрывает распределённую природу системы и её сложность
  • улучшать средства самостоятельной диагностики — аналог оператора EXPLAIN из классических баз данных, трассировку запросов и логирование ключевых поисковых стадий
  • и делать многое другое. Проектирование языка поисковых запросов. Сегодня поисковые запросы описываются набором CGI-параметров. В перспективе мы хотим прийти к полноценному языку запросов — и у вас будет возможность спроектировать его с нуля: от грамматики и планировщика до исполнителя. Больше о бэкенде в Яндексе — в канале Yandex for Backend
Что мы ждем от тебя
  • Уверенно владеете C++ и хотите на нём писать — это основной язык рантайма
  • Хорошо знаете классические алгоритмы и структуры данных, умеете выбирать их под задачу
  • Глубоко разбираетесь в многопоточном программировании: знаете модели памяти, примитивы синхронизации, lock-free-структуры и алгоритмы, понимаете природу гонок и умеете их предотвращать
  • Понимаете устройство Linux: процессы и потоки, управление памятью, сеть
  • Используете инструменты профилирования и трассировки
  • Разрабатывали распределённые системы: понимаете, как живут сервисы под нагрузкой и какие бывают точки отказа
  • Понимаете, как устроены поисковые системы: инвертированные индексы, векторный поиск, генерация кандидатов, ранжирование
  • Оптимизировали производительность на низком уровне: работали с кешами CPU, использовали SIMD
  • Работали с системами под высокой нагрузкой и с жёсткими требованиями к времени обработки запросов
  • Проектировали DSL, языки запросов, парсеры или планировщики исполнения
Как откликнуться

Нажмите «Откликнуться», заполните короткую форму и прикрепите резюме. Команда обычно отвечает в течение 3 рабочих дней.