Привет! Это команда Построение запросов.
Наша команда занимается развитием механизмов построения запроса при работе с поисковым движком Ozon. Наша ультимативная цель – предоставить удобный интерфейс взаимодействия с поиском, который понимает потребности пользователя с полуслова и подстраивается под его нужды. Для этого мы улучшаем как классические механизмы, например, персонализированные поисковые подсказки, так и разрабатываем совершенно новые механики на основе больших языковых моделей.
Мы хотим не только предлагать наиболее вероятные поисковые подсказки, но и влиять на результаты поиска за счет формирования запроса в поисковый движок. Для решения такой задачи требуется тесное взаимодействие с другими командами поиска и разработка сервисов, лежащих на пути исполнения пользовательского запроса – избежать хайлоада и повышенных требований к надежности не удастся.
Команда кроссфункциональная – мы разрабатываем рантайм сервисы и делаем ML ресерч в очень тесной коллаборации. Глубокие знания ML не требуются, но осведомленность про эту область приветствуется.
Сейчас мы ищем разработчика информационных систем, который готов вместе с нами развивать механизмы построения запроса.
Стек:
- Java 21, Gitlab CI/CD, kubernetes, Spark, hadoop, Postgres, ScyllaDb, kafka, clickhouse.
Вы будете:
- Вносить изменения в несколько сервисов, чтобы избавиться от избыточных сетевых вызовов и ускорить обработку запроса для пользователя на десятки-сотни миллисекунд.
- Разрабатывать бизнес-логику построения запросов в движок с учетом внешнего пользовательского контекста.
- Придумывать и внедрять механику для предиктивных проверок саджестов, чтобы не предлагать варианты с заведомо плохой товарной выдачей.
Нам важно:
- Отличное знание Java и опыт разработки от 2 лет.
- Знание классических алгоритмов и структур данных.
- Опыт с многопоточными приложениями.
- Знание основ построения распределенных систем – шардирование, репликация, load balancing, приемы для повышения отказоустойчивости.
Будет плюсом:
- Знание C#, опыт разработки .net приложений – часть приложений для продукта саджестов написаны на этой технологии.
- Опыт разработки и профилирования высоконагруженных сервисов (RPS >= 10000 при SLO на latency порядка десятков миллисекунд).
- Опыт обслуживания приложений с деплоем в kubernetes – понимание ограничений на выделяемые ресурсы и подходы к разработке эффективного кода с учетом этих ограничений.
- Знания о классическом ML и нейросетевых deep learning подходах.
Работа в Ozon Tech — это:
- Люди, которым не всё равно — ценим инициативу и самостоятельность, доверяем друг другу и даём свободу в принятии решений;
- Открытая культура — мы учимся на ошибках и фокусируемся на решении проблем, а не на поиске виноватых;
- Сильная команда, которой мы гордимся — обсуждаем идеи, обмениваемся экспертизой, просим совета и поддерживаем друг друга;
- Современный стэк и развитая инженерная культура — реализуем амбициозные проекты и создаём решения, которых ещё нет на рынке.