Старший разработчик Java, Верхний мета-поиск
Десятки миллионов пользователей ежедневно ищут товары на Ozon. Команда "Верхнего поиска" отвечает за построение поискового запроса в индекс для пользователей. Делаем продуктовую и ML разработку для проведения различных аб экспериментов с целью улучшения релевантности поисковой выдачи. Для этого у нас есть ряд микросервисов, в том числе Feature store для работы с ML фичами и моделями.
Все это должно работать в реалтайме, поэтому важным и приоритетным для нас является поддержка и улучшение текущих метрик скорости и пропускной способности поиска. Сервисы должны выдерживать нагрузку с таргетом более 50к rps. Для обеспечения высокой доступности сервисы распределены на несколько дата центров.
Подробнее можно ознакомиться в статьях:
– "Как мы делали свой поиск в Ozon: эволюция архитектуры от SQL до O2"
– "Feature store: как мы совместили высокую производительность и безграничные потребности data scientist’ов"
Стек:
- На бекенде пишем на Java.
- Gitlab ci/cd с множеством сред для разработки и тестирования.
- В своих микросервисах инферем ML модельки и достаем фичи из feature store.
- Используем Redis для горячего хранения данных и Postgresql для холодного, для OLAP используем Clickhouse.
- Данные храним в S3 & hdfs, ETL на Spark & Flink.
- Процессим данные через Kafka.
- Kubernetes для оркестрации.
- Логгирование и метрики идут через Prometheus, Graylog, OpenTracing (Jaeger).
- Стандартный джентельменский набор Jira, Confluence и Gitlab.
Вам предстоит:
- Пилить новые фичи и оптимизировать сервисы поиска, чтобы быть быстрее, выше, сильнее.
- Оптимизировать узкие по производительности места.
- Взаимодействовать со смежными командами (ML, Infra, Продукты).
- Покрывать свой код юнит-тестами.
- Ревьюить своих тиммейтов.
- Писать документацию.
Мы ожидаем:
- Хорошее знание Java и опыт разработки от 2 лет.
- Знание классических алгоритмов и структур данных.
- Опыт использования реляционных СУБД и/или NoSQL-хранилищ.
- Ответственность и аккуратность, умение тестировать собственный код и работать с чужим.
- Умение работать в команде.
- Работа в аналогичной должности в течение последнего года.
Будет плюсом:
- Опыт разработки многопоточных приложений.
- Опыт разработки и профилирования высоконагруженных сервисов.
- Опыт разработки сервисов для ML(LTR).
- Знание C#.
Какая у нас команда и процессы:
- Agile с артефактами (стендап, грумминг, планирование, ретро).
- QA интегрированы в команду и пишут автотесты, помогая улучшать качество.
- Ежедневно проводим стрельбы и нагрузочное.
- Infra - помогает с инфраструктурой сервисов.
Мы предлагаем:
-
Динамичный и быстроразвивающийся бизнес, ресурсы, возможность сделать вместе лучший продукт на рынке e-commerce.
-
Свободу действий в принятии решений.
-
Достойный уровень заработной платы.
-
Профессиональную команду, которой мы гордимся.
-
Возможность развиваться вместе с нашим бизнесом.
Обслуживать клиентов: работать со счетами, пластиковыми картами и денежными переводами. Продавать банковские и страховые продукты (кредитные продукты, карты, вклады).
Обслуживать клиентов: работать со счетами, пластиковыми картами и денежными переводами. Продавать банковские и страховые продукты (кредитные продукты, карты, вклады).