Поиск в Ozon - это десятки миллионов пользователей каждый день, огромный RPS, низкий latency, распределённые системы и большие данные. Команда Факторов занимается end-to-end разработкой фичей для ранжирования в поиске и каталоге: от настройки etl-процессов для подготовки данных до внедрения механизмов применения новых фичей в сервисах Поиска. Мы ищем талантливых разработчиков, которые помогут нам совершенствовать и развивать нашу инфраструктуру обработки данных и расчета фичей, используя современные технологии и подходы.
Наш стек:
- На бекенде пишем на Java (сейчас в большинстве сервисов 21 версия и мы стараемся поддерживать актуальную версию) и собственная платформа.
- В качестве DI используем Guice, опыт работы со Spring тоже приветствуется.
- Gitlab ci/cd с множеством сред для разработки и тестирования.
- В своих микро-сервисах применяем ML-модели и используем свой Feature Store для получения фичей и Feature Meta Store для хранения метаинформации о фичах.
- Используем Redis для горячего хранения данных и Postgresql для хранения метаинформации, также используется ClickHouse (и в перспективе ScyllaDB).
- Данные храним в S3 & hdfs.
- ETL на Spark & Flink.
- Процессим данные через Kafka.
- Kubernetes для оркестрации.
- Логирование и метрики идут через Prometheus, Graylog, OpenTracing (Jaeger).
- Стандартный джентельменский набор Jira, Confluence и Gitlab.
Вам предстоит:
- Разрабатывать новые фичи (плагины) для улучшения качества ранжирования в поиске и каталоге.
- Делиться фичами (интегрировать и интегрироваться) со смежными отделами Рекламы и Рекомендаций.
- Развивать собственные Feature Store и Feature Meta Store.
- Оптимизировать узкие по производительности места. Взаимодействовать с DS/DE внутри команды и со смежными командами внутри департамента Поиска (Платформа, Верхний Поиск, Продукты).
- Покрывать свой код юнит-тестами.
- Ревьюить своих тиммейтов.
- Писать документацию.
Будет плюсом:
- Опыт работы с большими объёмами данных и понимаете, как эффективно их обрабатывать.
- Знакомы с принципами распределённых систем, умеете работать с микросервисной архитектурой.
- Непосредственная работа с поисковыми движками: Elastic Search, Solr, Sphinx.
- Опыт построения ETL, DWH, Data Lake.
- Опыт алгоритмической разработки, например, сжатия данных.
- Знакомство с Data Science и/или ML Engineering.
- Образование, связанное с математикой или Computer Science.
- Знание Python.
Мы ожидаем:
- Хорошее знание Java и опыт разработки от 2 лет.
- Знание классических алгоритмов и структур данных.
- Опыт разработки многопоточных приложений и распределённых систем.
- Опыт использования реляционных СУБД и (или) NoSQL-хранилищ.
-
Динамичный и быстроразвивающийся бизнес, ресурсы, возможность сделать вместе лучший продукт на рынке e-commerce.
-
Свободу действий в принятии решений.
-
Достойный уровень заработной платы.
-
Профессиональную команду, которой мы гордимся.
-
Возможность развиваться вместе с нашим бизнесом.