Старший бэкенд-разработчик на С++ в команду общей поисковой системы

Яндекс

Старший бэкенд-разработчик на С++ в команду общей поисковой системы

Описание вакансии

Мы создаём Поиск будущего. Наша команда начинает строить масштабный проект, который определит технологическое развитие Яндекс Поиска в ближайшие годы.

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

Исследование и проектирование
Вам предстоит познакомиться с существующими поисковыми проектами и принять участие в проектировании дизайна новой распределённой отказоустойчивой поисковой системы.

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

Разработка эффективного рантайма и индексации
Наши инсталляции хранят десятки петабайт данных, потребляют сотни тысяч ядер CPU и обрабатывают сотни миллионов запросов в секунду.

Как ни странно, сейчас в компании нет общей поисковой системы. Веб-поиск (основной поиск Яндекса, доступный на yandex.ru/search) отличается своей реализацией от поиска по картинкам и видео. Поиски в Яндекс Еде, Музыке или Маркете тоже разрабатываются по большей части независимо. Основной вектор развития всегда задаёт веб-поиск, а остальные лишь догоняют. Со временем он сильно вырвался вперёд: улучшения не успевают добираться до других сервисов, и разрыв в технологиях продолжает расти.

В компании уже решали задачу создания единого поиска. Внутренний проект SaaS (Search-as-a-Service) предоставляет удобный интерфейс для решения простых поисковых сценариев и используется в сотнях сервисов компании. Однако ключевые поисковые проекты всё ещё развиваются независимо, а SaaS недостаточно гибок и всё так же находится в роли догоняющего.

С учётом накопленного в компании опыта сегодня мы понимаем задачу поиска настолько хорошо, что готовы сформулировать общее решение. Наша цель — разработать новую поисковую систему, которая позволит обобщить и унифицировать все поисковые и рекомендательные сценарии. Мы делаем так, чтобы и веб-поиск, и другие поиски в компании развивались в единой среде поверх общей технологической базы, а не параллельно друг другу.

Задача амбициозная и сложная. Сейчас мы работаем над дизайном SaaS нового поколения и внедряем MVP. Сейчас — тот самый момент, когда можно присоединиться к проекту на старте и повлиять на его дальнейшее развитие в целом.

Каким мы видим хорошее решение?

  • Концептуально похожим на внешние продукты, например на Elasticsearch, только на большем масштабе и с большей модульностью.
  • Поддерживающим различные форматы индексов: полнотекстовые, key-value, trie, N-gram, kNN и другие.
  • Позволяющим описать поисковый запрос в относительно простом виде, например на SQL-like-языке.
  • С низким порогом входа, с возможностью запустить поиск по своим данным практически без написания кода.

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

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

  • Хорошо владеете языком C++ и хотите на нём писать
  • Знаете классические алгоритмы и структуры данных
  • Глубоко разбираетесь в многопоточном программировании
  • Использовали и разрабатывали распределённые системы
  • Понимаете, как работают поисковые системы и как устроены поисковые индексы внутри (будет преимуществом)
Навыки
  • C++
  • Алгоритмы и структуры данных
Посмотреть контакты работодателя

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

AERODISK
Полный день
  • Москва

  • до 600000 RUR

Рекомендуем
1С
Полный день
  • Москва

  • до 600000 RUR

Рекомендуем
КСК-Эйч Ар

С++ developer

КСК-Эйч Ар

Полный день
  • Москва

  • до 600000 RUR

Рекомендуем
КСК-Эйч Ар

Разработчик C++

КСК-Эйч Ар

Удаленная работа
  • Москва

  • до 600000 RUR

Цифровые решения, НПП

Программист С/С++ (Embedded Linux)

Цифровые решения, НПП

Полный день
  • Москва

  • до 600000 RUR

SberTech
Полный день
  • Москва

  • до 600000 RUR

Navio (ООО Автотех)
Полный день
  • Москва

  • до 600000 RUR

Вычислительные решения

Программист C++

Вычислительные решения

Полный день
  • Москва

  • до 230000 RUR

НАТЕКС
Полный день
  • Москва

  • до 230000 RUR

Data-Driven Lab

Senior C++ Developer

Data-Driven Lab

Удаленная работа
  • Москва

  • до 230000 RUR

Open Media
Удаленная работа
  • Москва

  • до 230000 RUR

Яндекс
Полный день
  • Москва

  • до 230000 RUR

Navio (ООО Автотех)
Полный день
  • Москва

  • до 230000 RUR

Лаборатория Касперского

Разработчик С++ (KES)

Лаборатория Касперского

Удаленная работа
  • Москва

  • до 230000 RUR

Полный день
  • Москва

  • до 230000 RUR

БЮРО 1440
Полный день
  • Москва

  • до 230000 RUR

Полный день
  • Москва

  • до 230000 RUR

Р-Софт
Удаленная работа
  • Москва

  • до 230000 RUR

Хотите оставить вакансию?

Заполните форму и найдите сотрудника всего за несколько минут.
Оставить вакансию