Команда Поиска Одноклассников ищет новых коллег, чтобы вместе развивать поиск в одном из самых больших сервисов России.
Задачи
Мы в команде Поиска отвечаем за разработку и сопровождение всех поисков, работающих внутри портала. Поисковая система на более чем 20 вертикалей крутится на 500+ инстансах в 5 дата-центрах, а объём индексируемых данных измеряется терабайтами. Такой масштаб делает проблематичным использование стандартных решений, поэтому ядром системы является свое решение на базе Lucene. Поиск Одноклассников хорошо переживает сбои даже целого дата-центра, наплывы запросов и другие форс-мажоры. За всё время нам ни разу не пришлось что-то в нём "тушить", все технические проблемы решались штатным рефакторингом нужной части с аккуратным управлением вычислительными ресурсами. При этом, мы продолжаем реализовывать идеи, с которыми к нам приходят коллеги из смежных продуктовых команд.
Мы сами ставим себе задачи, сами их решаем и запускаем в прод. Благодаря отсутствию бюрократии мы можем пробовать множество идей за малое время, экспериментально определяя их полезность. Продуктовые идеи мы проверяем проводя A/B тестирование, с которым нам помогает набор инструментов, разработанный в Одноклассниках.
Работа со многими командами позволяет попробовать разные подходы к развитию продукта, требует внимания к деталям, а также умения находить и выбирать оптимальные решения. Они могут касаться как продукта, так и технологии, т.к. часто приходится учитывать специфику разных систем хранения исходных данных, необходимости получения статистики или других дополнительных данных.
Ещё мы начинаем активно использовать машинное обучение для улучшения результатов поиска, а так же продолжаем улучшать качество в основных вертикалях.
Требования
- Опыт разработки на Java.
- Умение реализовывать алгоритмы с учётом условий исполнения.
- Самостоятельность, проактивность, коммуникабельность.
- Умение отделять существенное от второстепенного.
- Любовь к критике, умение конструктивно давать и принимать её.
- Умение организовывать сбор требований, техническое обсуждение, процесс разработки и внедрения решения.