Вакансия: старший бэкендер в Т-Помощь (закрыта)
Привет! Меня зовут Вова, я руковожу разработкой Т—Ж и Т-Помощи. Ищу старшего бэкенд-разработчика.
Т-Помощь — это база знаний, которая помогает клиентам пользоваться продуктами нашей группы компаний: картами, кредитами, брокерскими счетами, счетами для предпринимателей и кучей других. Каждый месяц нас читает миллион клиентов.
Группе компаний мы важны, потому что помогаем продавать наши карты и счета. Например, пользователь искал что-то в интернете, нашел ответ на свой вопрос у нас и заинтересовался продуктом. Еще мы снижаем нагрузку на поддержку, потому что на популярные вопросы клиент может найти ответ самостоятельно.
Как сейчас
Основная функциональность Помощи — управление контентом. Когда в Т-Банке появляется новый сервис, продакт или поддержка заказывает нам раздел с информацией для клиентов. Мы его наполняем и дальше поддерживаем в актуальном состоянии: продуктов много, поэтому каждую неделю происходят какие-то изменения.
Контент Тинкофф Помощи размещен в двух местах — на help.tinkoff.ru и основном сайте tinkoff.ru.
Первое — наша собственная разработка, стэк:
- отдельный фронт на TypeScript, React, Redux;
- на бэкенде Python+Django, Postgres, Redis;
- админка со своими фронтом и бэком на тех же технологиях.
Код храним в gitlab. Там же настроен пайплайн: прогоняются тесты и линтеры, проект пакуется в docker-контейнер. Дальше с помощью ArgoCD контейнер разворачивается в Google Kubernetes Engine. Инфраструктурные конфиги тянутся из gitlab.
Второе — конструктор страниц с блочным редактором. Он не поддерживает поиск по контенту, систему редиректов и структуру страниц, которая критична для Помощи. План развития конструктора расходится с нашими потребностями, поэтому мы берем разработку в свои руки и интегрируемся с основным сайтом.
Что предстоит сделать
В следующем году мы планируем все перевезти на tbank.ru. Редакции важно, чтобы обновление информации осталось удобным — особенно в сложных случаях: когда мы ставим редирект, перемещаем карточку из одного топика в другой, копируем сущность из продукта А и на ее основе создаем сущность в продукте B.
Вижу две главные задачи так:
- Обеспечить стабильность help.tinkoff.ru, пока переезд не завершился.
- Подготовить сервис для управления контентом Помощи и его раздачи на основном сайте.
Первая задача не самая трудоемкая — мы как-то год продержались и без штатного бэкендера. Самое интересное начинается со второй задачей:
- Для начала провести аудит текущего состояния бэкенда: выделить удачные решения и обозначить слабые места, сравнить текущие возможности и потенциал к расширению с бизнес-требованиями, подбить баги и с продактом оценить их критичность.
- Спроектировать новое состояние бэкенда и админки, которое будет удовлетворять бизнес-требованиям. Какая будет архитектура, технологии и процент переиспользования старого кода там — решать вам. Проект обсудим со мной и бэкендерами журнала: в формате скорее не защиты, а консультации.
- Представить команде Помощи пошаговый план перехода из текущего состояния в желаемое.
- Запустить проект, предварительно пройдя проверку командой тестирования сайта tbank.ru и отделом безопасности веб-приложений.
Дальше в планах — развивать продукт и затаскивать функциональность, без которой мы готовы запуститься: улучшать систему редиректов, поиск и структуру страниц, добавлять новые форматы (в планах: статьи и новости), выстраивать аналитику, сплит-тестирование и интеграцию с остальной цифровой экосистемой.
Как мы работаем
Мы работаем небольшой продуктовой командой, в которой уже есть фронт, аналитик и продакт. По необходимости подключаем к работе дизайнеров и тестировщиков, в перспективе — еще и системного инженера.
Раз в неделю команда собирается обсудить, что получилось сделать за прошедшую неделю и что планируется сделать в ближайшую. Иногда туда заскакивает кто-нибудь из редакции. Продакт обозначает бизнес-задачи и их приоритеты. Разработчики сами декомпозируют это на технические задачи и оценивают.
Почему это круто
Считаю, что работа — огонь. Смотрите сами:
- Вы запустите продукт внутри tbank.ru — по пути сами примете интересные и сложные технические решения.
- Получите опыт работы с высокой нагрузкой и отказоустойчивостью.
- Узнаете и примените хорошие практики работы с метриками, логами, таймаутами и ретраями.
- Поработаете в небольшой автономной команде — без пожаров и бюрократии, но с планом, итерациями и выстроенным процессом.
- Будете делать продукт, который полезен вам, вашим близким и сотням тысяч других клиентов Т-Банка. Благодаря вам клиенты-интроверты смогут просто погуглить, а не общаться с живым человеком.
Кого ищем
Ожидаю, что кандидат:
- Уверенно владеет Python и современным фреймворком веб-разработки на его основе.
- Разрабатывал API, использовал спецификацию OpenAPI, может поддержать беседу о синхронном и асинхронном коде.
- Работал с базами, может поддержать беседу о реляционных и нереляционных БД.
- Знаком с паттернами проектирования: синглтоном, адаптером и другими.
- Знает основы веб-архитектуры.
- Умеет писать unit-тесты.
Опыт настройки CI/CD будет плюсом.
Офис
Условия
Мы предлагаем:
- Фултайм c белой зарплатой. Во время пандемии — по домам. Дальше можно будет чередовать с офисом на м. «Динамо».
- График гибкий, главное — побольше времени пересекаться с остальной командой.
- ДМС после испытательного.
- Бесплатные обеды, собственную кухню.
- Спортзал в главном офисе — в трех станциях метро от нашего.
- Новый Макбук-про или Мак-мини.
Чтобы обсудить вакансию, пишите на v.k.lazarev@tinkoff.ru или в Телеграм.