Перейти к содержимому
Яндекс
Я
Яндекс
Москва
активна · проверена 16 часов назад

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

Яндекс ищет разработчика C++ для поискового рантайма — распределённой системы, обрабатывающей миллионы запросов в секунду. Нужно проектировать механизмы исполнения запросов, развивать поисковые структуры данных, создавать SDK и язык запросов. Требуются глубокие знания C++, алгоритмов, многопоточности и Linux, опыт с распределёнными системами. Предлагается работа над высоконагруженной платформой, используемой сотнями сервисов компании.

senior удалённо ~1 683 000 – 3 036 961 ₸
salary intelligence

Зарплата не указана — оценили по рынку

На основе 37 похожих вакансий за 90 дней.

оценка p25–p75
1 683 000 – 3 036 961 ₸
медиана: 2 493 400 ₸
Хотите увидеть распределение по грейдам и городам? Зарплаты C++ Калькулятор зарплат
Вакансии в Telegram-канале
Свежие вакансии Каждый день
Подписаться
??%
Match Score
Войдите и создайте резюме
Войти
описание

Что предстоит делать

SaaS (Search-as-a-Service) — общая поисковая платформа в Яндексе. Мы создаём технологии, благодаря которым другие команды получают готовый полнотекстовый поиск, key-value-хранилище (eventually consistent) или kNN — и не тратят месяцы на разработку и поддержку собственного решения. Сегодня платформой пользуются сотни сервисов компании, суммарный объём поисковых индексов исчисляется петабайтами, а суммарный RPS — несколькими миллионами. Поисковый рантайм — сердце SaaS. Это сложная распределённая система, которая принимает и маршрутизирует запросы, собирает документы из разных источников, фильтрует и ранжирует их в несколько стадий и возвращает результат пользователю. Всё это — под высоким RPS и в условиях частичных отказов: потери шарда, деградации соседних сервисов или выхода из строя целого дата-центра. От рантайма напрямую зависит, насколько быстро работает поиск и сколько ресурсов уходит на обработку каждого запроса. При этом рантайм должен быть универсальным: поддерживать разные типы поисковых структур данных и стадии исполнения запроса. Главная сложность — совместить гибкость и эффективность, чтобы новые структуры и стадии внедрялись без существенного изменения кодовой базы, но при этом каждый запрос укладывался в жёсткие требования по времени и ресурсам. С развитием AI поиск переживает тихую революцию: модели ранжирования становятся тяжелее, появляются новые источники данных и подходы к отбору кандидатов на основе LLM, а сам поиск становится фундаментом для RAG-систем и AI-агентов. Это диктует новые требования к рантайму и открывает множество технических задач. Впереди — большая инженерная работа. Сейчас удачный момент, чтобы присоединиться к нам и повлиять на то, каким станет рантайм. Какие задачи вас ждут Разработка логики исполнения поисковых запросов Вам предстоит проектировать общий механизм исполнения запросов, который устроен как граф стадий: доступ к инвертированному индексу, фильтрация по атрибутам, ранжирование и т. д. Каждая стадия может выполняться отдельным сервисом, чтобы гибко масштабироваться за пределы одного бэкенда. При этом система должна надёжно работать в условиях отказов: корректно деградировать при потере шардов, осознанно выбирать стратегию частичного ответа, балансировать между полнотой результата и скоростью обработки запросов. Развитие технологий поискового рантайма Мы строим систему, предоставляющую единую модель работы с различными типами поисковых индексов. Сегодня рантайм уже поддерживает классический инвертированный индекс, HNSW-графы, KD-деревья и другие структуры данных. Вы будете развивать эти технологии и внедрять новые, выжимая максимум из доступного железа. И всё это — в многопоточной распределённой системе, от которой уже зависят сотни продуктовых сервисов. Создание SDK и инструментов для работы с рантаймом Чтобы другие команды решали свои продуктовые задачи, а не погружались в устройство поиска, вам предстоит развивать экосистему рантайма. Вы будете разрабатывать удобный SDK — единый интерфейс для отправки поисковых запросов, который упрощает интеграцию, скрывает распределённую природу системы и её сложность; улучшать средства самостоятельной диагностики — аналог оператора EXPLAIN из классических баз данных, трассировку запросов и логирование ключевых поисковых стадий; и делать многое другое. Проектирование языка поисковых запросов Сегодня поисковые запросы описываются набором CGI-параметров. В перспективе мы хотим прийти к полноценному языку запросов — и у вас будет возможность спроектировать его с нуля: от грамматики и планировщика до исполнителя. Мы ждём, что вы • Уверенно владеете C++ и хотите на нём писать — это основной язык рантайма • Хорошо знаете классические алгоритмы и структуры данных, умеете выбирать их под задачу • Глубоко разбираетесь в многопоточном программировании: знаете модели памяти, примитивы синхронизации, lock-free-структуры и алгоритмы, понимаете природу гонок и умеете их предотвращать • Понимаете устройство Linux: процессы и потоки, управление памятью, сеть • Используете инструменты профилирования и трассировки • Разрабатывали распределённые системы: понимаете, как живут сервисы под нагрузкой и какие бывают точки отказа Будет плюсом, если вы • Понимаете, как устроены поисковые системы: инвертированные индексы, векторный поиск, генерация кандидатов, ранжирование • Оптимизировали производительность на низком уровне: работали с кешами CPU, использовали SIMD • Работали с системами под высокой нагрузкой и с жёсткими требованиями к времени обработки запросов • Проектировали DSL, языки запросов, парсеры или планировщики исполнения

навыки

Стек и инструменты

Поделиться

Подходит ли вам эта вакансия?

Зарегистрируйтесь и загрузите резюме — посчитаем % совпадения с этой вакансией, подсветим сильные стороны и что стоит подтянуть

Создать аккаунт PDF-парсинг резюме за 2 минуты

Ещё в Яндекс

15 активных вакансий в компании

1 д. назад

Разработчик бэкенда LLM-моделей (C++)

~1 416 525 ₸ оценка

Команда Яндекса ищет разработчика для работы над бэкендом LLM-моделей (YandexGPT/Алиса). Задачи включают инференс на GPU, оптимизацию распределения вычислений и разработку компонентов системы. Требуется уверенное знание C++, алгоритмов и многопоточного программирования.

LLM GPU C++ +4
middle удал. hh
1 д. назад

iOS разработчик (Swift) в Yandex Pay

~1 290 300 – 2 181 725 ₸ оценка

Ищем iOS-разработчика для создания SDK для Yandex Pay — продукта для миллионов пользователей. Нужно писать на Swift, проектировать архитектуру и развивать библиотеку. Предлагают сложные задачи, стартап-атмосферу и влияние на результат.

Swift iOS SDK +3
middle удал. hh
6 д. назад

Senior Data Scientist

~1 963 500 – ~3 085 500 ₸ (350 000 – 550 000 RUB)

Вакансия в Яндексе: разработка и поддержка ML/DL-моделей для финтех-продуктов (прогнозирование LTV, оттока, рекомендации). Нужны Python, SQL и опыт работы с нейросетями, полный цикл от данных до продакшна.

ML DL LTV +6
middle cr
1 нед. назад

Fullstack-разработчик платёжных форм (React/TypeScript)

~1 265 508 ₸ оценка

Ищем fullstack-разработчика для развития платёжных форм и SDK Платёжного шлюза Яндекса. Нужно закрывать задачи от требований до продакшена: новые способы оплаты, challenge-флоу, доработки сервера и интеграций. Стек — React, TypeScript, NestJS, активно используется AI. Требуется опыт с React и TypeScript, понимание SPA, работа с API и автотестами.

React TypeScript NestJS +15
middle удал. hh

Похожие вакансии

6 вакансий
NtechLab
N
NtechLab
2 д. назад

Senior C++ разработчик (Core команда)

~1 683 000 – 3 036 961 ₸ оценка

NtechLab ищет Senior C++ разработчика в Core команду для разработки высоконагруженных сервисов видеоаналитики: распределенные системы, инференс нейросетей, хранение данных. Нужен опыт с C++17+, Linux, многопоточностью. Предлагают гибкий график, ДМС, офис в центре.

C++ видеоаналитика нейронные сети +7
senior удал. hh
Q
QLOC
2 д. назад

Старший C++ разработчик (игровая индустрия)

Ищем опытного C++ разработчика для работы над известными игровыми проектами (Cyberpunk 2077, Mortal Kombat и др.). Требуется опыт от 3 лет, включая работу с дампами, профилированием и реверс-инжинирингом. Предлагается удалённая работа, поддержка с релокацией и участие в жизни компании.

C++ игровая индустрия crash-dump +5
senior удал. dou
БУЛАТ
Б
БУЛАТ
2 д. назад

C/C++ разработчик высоконагруженных систем

~1 683 000 – 3 036 961 ₸ оценка

Разработка высоконагруженного ПО для сетевого оборудования на C/C++ в российской компании «БУЛАТ». Требуется опыт от 6 лет, глубокое знание Linux, TCP/IP и алгоритмов. Предлагают стабильную зарплату, гибкий график и обучение.

C C++ Linux +13
senior удал. hh
E
EchoGlobal
3 д. назад

C++ Engineer (перший інженер у нову продуктову команду)

~814 083 – 1 186 235 ₸ оценка

Шукають першого інженера в нову продуктову команду, який буде розробляти систему на C++ з нуля — від архітектури до продакшену. Потрібен сильний C++ (17/20), STL, багатопотоковість, ООП; буде плюсом networking, MAVLink, GStreamer. Пропонують повністю віддалену роботу, офіційне працевлаштування з бронюванням або ФОП, оплачені AI-інструменти.

C++17 C++20 STL +5
senior удал. dou
Positive Technologies
P
Positive Technologies
3 д. назад

C++ разработчик антивирусного движка

~1 683 000 – 3 036 961 ₸ оценка

Ищем опытного C++ разработчика для создания антивирусного движка: нужно разбираться в низкоуровневом программировании, многопоточности и архитектуре. Предлагают удаленку, гибкий график, ДМС и оплату английского.

C++ антивирусный движок эмуляция +6
senior удал. hh
Р-Софт
Р
Р-Софт
3 д. назад

Программист C++ (+ Golang)

~1 683 000 – 3 036 961 ₸ оценка

Разработка встроенного ПО для видеокамер на Embedded Linux и SoC: абстракция от платформы, интеграция аналитики, портирование. Нужен опыт от 5 лет в C/C++ и ядре Linux, готовность работать с Golang. Предлагают гибридный или удаленный формат, официальное оформление и работу над системами безопасности.

C++ Embedded Linux Golang +14
senior удал. hh