
Команда матчинга и ленты · Python и Go
twinby На сервисе с: 06.10.26 10:29
Senior backend-разработчик
Команда матчинга и ленты · Python и Go
О роли
Twinby развивает сервис знакомств с миллионами пользователей. Мы перестраиваем разработку Twinby CIS и заново формируем продуктовые команды. Команда матчинга и ленты отвечает за то, какие анкеты видит человек и как пользователи находят друг друга. Сервисы обрабатывают большие объёмы данных и должны быстро отвечать при росте нагрузки.
Ищем Senior-разработчика, который будет проектировать и писать бэкенд, выпускать изменения и следить за их работой в продакшене. В этой роли ты принимаешь технические решения в своей зоне ответственности, обсуждаешь общую архитектуру с тимлидом и архитектором, помогаешь коллегам на ревью. Управление людьми в роль не входит.
За что ты отвечаешь:
Развиваешь сервисы подбора анкет и ленты: фильтры, правила показа, учёт действий пользователей. Следишь за скоростью ответа и корректностью подбора анкет.
Работаешь с запросами к БД, кэшем и поисковым индексом. Разбираешься, откуда берутся задержки и устаревшие данные, проверяешь решения под нагрузкой.
Согласуешь API и форматы данных со смежными командами, в том числе для интеграции с моделями ранжирования. Готовишь свои участки бэкенда к A/B-экспериментам, чтобы можно было сравнивать варианты выдачи.
Постепенно выносишь функциональность из монолита в сервисы. Продумываешь совместимость, перенос данных и возможность отката.
Пишешь тесты и проводишь ревью. Добавляешь метрики и логи, следишь за соблюдением SLO. Продумываешь поведение сервиса при перегрузке и сбоях в БД или соседних сервисах. Участвуешь в дежурствах, разбираешь инциденты и устраняешь их причины.
ИИ-инструменты можно использовать в работе. Сгенерированный код проходит те же проверки и ревью; ты должен понимать его поведение и отвечать за свои изменения.
Кого мы ищем:
Умеешь работать с SQL, индексами и планами запросов. Выбираешь способ хранения и кэширования с учётом объёма данных и характера нагрузки.
Понимаешь, что происходит при одновременных запросах, повторах событий и сбоях в БД или соседних сервисах. Умеешь находить причины расхождений между данными в разных частях системы.
Можешь объяснить выбор решения, его ограничения и способ проверки. Заранее обсуждаешь риски, а решения, затрагивающие соседние сервисы, согласуешь с их владельцами.
Будет плюсом:
Опыт работы с рекомендательными системами, ранжированием или персональными лентами.
Опыт работы с Elasticsearch или OpenSearch.
Опыт в дейтинге, соцсетях, маркетплейсах или других сервисах с большим числом пользовательских действий.
Чего не требуем
Опыт в дейтинге и знание всех инструментов нашего стека не обязательны. LeetCode и алгоритмические головоломки на интервью не используем.
Технический стек
Python и Go. Монолит и микросервисы, обмен событиями, реляционные и аналитические хранилища, кэш и поисковый индекс. Используем Kubernetes и GitLab CI/CD. Инфраструктура размещена в российском облаке.
Что предлагаем
Работу над подбором анкет и лентой, которыми пользуются миллионы людей. Возможность влиять на устройство сервисов и технические решения в своей зоне ответственности.
Формат работы: удалённо из РФ.
HireSeeker собирает вакансии со всех площадок и присылает только релевантные. Бесплатно.