ML Engineer в команду Ленты, OK.RU

Местоположение и тип занятости

Москва, Санкт-ПетербургПолный рабочий деньМожно удаленно

Компания

Место встречи лучших

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

О компании и команде

Одноклассники — это крупнейшая развлекательная социальная сеть в России. Недавно у нас было масштабное обновление: теперь ОК — это территория увлечений. Здесь можно найти много классного и качественного контента, посвящённого даже очень редкому хобби.

А ещё ОК — это команда, получающая искренние эмоции и удовольствие от бренда, контента и цифровых технологий с 2006 года. Пул задач в ОК шире, чем в большинстве проектов. Это классный драйвер для изучения топовых технологий, подходов и решений в реальных условиях.

Мы расширяем нашу ML-команду и ищем эксперта, который будет участвовать в разработке сервисов ленты рекомендаций. Лента — это сервис с десятками миллионов DAU на всех платформах. В нашей ленте есть два типа контента:

1. подписной — контент, который пользователи хотят просматривать сами;

2. неподписной — контент, который мы с помощью различных моделей машинного обучения (и не только) рекомендуем исходя из предпочтений пользователя. Эти сервисы не только отбирают интересный пользователю контент, но и делают это быстро, в том числе формируя рекомендации на лету, в реальном времени анализируя данные об активности пользователя на сайте.

Что необходимо знать о нас:

  • Данные. Несколько HDFS-кластеров с общим объёмом данных более 200 ПБ, подробная история активности пользователей за несколько лет.
  • Железо. Вычислительный кластер на 200+ TБ RAM, 60K cores, десятки тысяч задач в день.
  • Масштаб влияния на бизнес. Непосредственное влияние на основные метрики бизнеса: DAU, Retention, Timespent, NPS.
  • Уровень развития Data Science в компании. Налажены все основные процессы со сбором признаков, обучением и инференсом моделей, запуском и анализом А/В-экспериментов.
  • Роль ML-инженера. ML-инженер может участвовать во всех этапах жизненного цикла моделей — от идеи до внедрения. В основном, вы будете реализовывать сбор признаков, обучать и конфигурировать модели, принимать решения по результатам А/В-экспериментов, реализовывать инференс моделей в продакшене, сопровождать модель в дальнейшем.
  • Коммуникация внутри команды. Один общекомандный созвон в неделю для синка по задачам. Bi-weekly синки со всей ML-командой, где обсуждают интересные кейсы. Ежемесячные 1-1 с руководителем команды.
  • Prod/Research. По большей части — прод, но иногда бывают задачи, для решения которых необходимо предварительно проводить исследования, читать статьи и реализовывать идеи из них.

Вам предстоит:

  • разрабатывать новые и совершенствовать существующие рекомендательные модели в ленте неподписного контента, адаптировать рекомендации к интересам пользователя в реальном времени, увеличивать разнообразие рекомендаций;
  • реализовывать батчевые и стриминговые пайплайны для сбора признаков, обработки данных и инференса моделей в продакшене;
  • обрабатывать и анализировать большие данные, выдвигать гипотезы;
  • проводить А/В-эксперименты, выполнять их статистическую оценку.

Ожидания от кандидата

Мы ожидаем, что вы:

  • имеете опыт работы на должностях, связанных с Big Data и ML-инженерией, от трёх лет;
  • хорошо знаете Java/Scala и Python (pandas/numpy/scikit-learn/xgboost);
  • уже работали с продуктами стека Big Data (Hadoop, Spark);
  • уже работали с инструментами потоковой обработки данных (Apache Samza или Spark Streaming, Apache Kafka);
  • знаете алгоритмы классического машинного обучения и основы математической статистики;
  • понимаете принципы работы и подходы к построению рекомендательных систем.

Будет плюсом, если вы:

  • имеете представление о современных принципах построения и работы нейронных сетей (Deep Learning, PyTorch/TensorFlow, attention/трансформеры);
  • уже настраивали пайплайны машинного обучения от сбора данных до инференса моделей в продакшене;
  • представляете, как работает Apache Airflow, MLFlow, Spark ML, Faiss;
  • умеете прочитать статью, а затем воспроизвести её в коде.

Условия работы

Работа в ОК — это:

  • сложные и интересные задачи: высоконагруженные быстрорастущие сервисы, которые задают уровень для конкурентов качеством и технологиями;
  • команда: с нами работают профессионалы экстра-класса, каждый из которых может поделиться своей экспертизой;
  • профессиональное развитие: прямо в офисе мы организуем митапы, конференции, семинары и тренинги, куда открыт доступ каждому сотруднику, а также регулярно посещаем лучшие мировые конференции;
  • новый опыт: лучшие сотрудники преподают в наших образовательных проектах, выступают на российских и международных конференциях;
  • выбор: удалёнка или комфортный офис с парковкой, душем и зонами отдыха в Санкт-Петербурге или Москве;
  • спорт: компания компенсирует затраты на спортивные активности — занятия в фитнес-клубе, индивидуальные тренировки, участия в соревнованиях;
  • регулярно пересматриваемая зарплата, годовые бонусы, социальный пакет с первого дня (ДМС, английский язык).