Perplexity

Member of Technical Staff (Search Core, Indexing & Data Pipeline Stream)

Коротко

Роль в команде Search Core компании Perplexity, направление индексирования и обработки данных — построение поисковых конвейеров индексирования и хранения данных на масштабе миллиардов страниц. Требуется 3+ года системного программирования (Rust, C++ или C), глубокое понимание многопоточности, внутреннего устройства Linux и техник низкоуровневой оптимизации, а также опыт работы с системами обработки данных YT/Kafka/Hadoop. Работа удалённая, ожидается ответственность за полный жизненный цикл системы — от проектирования до эксплуатации в production.

О роли
Perplexity ищет высококвалифицированного инженера по экспертным системам для команды Search Core — направление индексирования и обработки данных. Эта роль критически важна для создания поисковых продуктов и технологий нового поколения. Вы будете участвовать в ключевых решениях по архитектуре, проектированию и реализации базовых компонентов нашего технического стека.
Обязанности
•Проектировать и создавать ключевые компоненты поисковой системы, в особенности конвейеры индексирования и форматы хранения данных, работающие на масштабе миллиардов страниц
•Разрабатывать потоковую и пакетную обработку данных с системами YT для построения поискового индекса в среде с высокой нагрузкой
•Выжимать максимум из аппаратной производительности за счёт низкоуровневых оптимизаций и настройки на уровне системы
•Решать задачи многопоточности, параллелизма и оптимизации на системном уровне
•Проектировать и создавать ключевые компоненты поисковой системы, включая конвейеры индексирования, алгоритмы извлечения и системы ранжирования, работающие на масштабе миллиардов страниц
•Разрабатывать системы потоковой и пакетной обработки данных для построения поискового индекса в среде с высокой нагрузкой
•Выжимать максимум из аппаратной производительности за счёт низкоуровневых оптимизаций и настройки на уровне системы
•Решать задачи многопоточности, параллелизма и оптимизации на системном уровне
Требования
•3+ года практического опыта системного программирования (Rust, C++, C или аналоги)
•Ответственность за полный жизненный цикл проекта — вы не просто пишете быстрый внутренний цикл, а заботитесь о том, как система строится, развёртывается, эксплуатируется и масштабируется в production
•Знание Python или других скриптовых языков
•Знание систем обработки данных (YT/Kafka/Hadoop)
•Стремление писать чистый, эффективный и масштабируемый код на системном уровне
•Глубокие знания алгоритмов и структур данных и умение эффективно их применять
•Глубокое понимание многопоточности, включая различные подходы, сложности и компромиссы
•Опыт создания высоконагруженных распределённых сервисов и сервисов, тесно связанных с аппаратурой
•Уверенное понимание внутреннего устройства Linux (syscalls, сетевой стек, модель памяти, настройка ядра)
•Знакомство с техниками низкоуровневой оптимизации (управление памятью, эффективность кэша, SIMD, профилирование)
Желательные требования
•Опыт разработки ключевых компонентов поисковых систем, баз данных или систем информационного поиска
•Понимание основ поиска: индексирование, разбор запросов, ранжирование и релевантность
•Опыт работы с торговыми системами или другими системами реального времени, чувствительными к задержкам
•Знакомство с облачными сервисами, Kubernetes и инфраструктурой AWS

Хватит откликаться.
Получите рекомендацию.

$10 стартовых кредитов

Всего 60 секунд, полностью на автопилоте — AI-агенты Eraldt читают ваше резюме, определяют подходящие роли, находят живые вакансии и людей, которые могут вас порекомендовать, пишут им личные письма и добиваются рекомендации.

Это не отклик на вакансию: резюме не уходит в компанию, а рекомендацию именно по этой роли мы не обещаем.

Посмотрите, кто ещё получает интервью на автопилоте