👀 Дизайнеры, какая команда подходит вам по вайбам? Проверяйте на Вайб-чеке→ vibe.habr.com

Бэкендер в контент-платформу Тинькофф Журнала

Местоположение и тип занятости

Можно удаленно

Компания

Делаем жизнь 36 миллионов клиентов проще и удобнее каждый день

Описание вакансии

Условия работы

Тинькофф Журнал — главное русскоязычное издание про деньги. Наш сайт читают 20 миллионов человек в месяц. Наша миссия — сделать читателей образованными и смелыми в отношении всего, что касается денег. Мы ищем сильного бэкенд-разработчика, который займется ключевыми сервисами журнала.

Технологии

Пишем на Python и FastAPI. Изначально журнал представлял собой два сервиса, которые написаны на Django. Один мы переписали на семь сервисов и половину из них запустили в продакшен. Второй переписывать пока не планируем. Базы — Postgres и Redis.

Клиенты общаются с сервисами по REST, используем спецификацию OpenAPI. Сервисы между собой местами общаются так же, но мы переводим это на асинхронную архитектуру. В качестве брокера используем Google Pub/Sub.

Деплоимся с помощью Argo CD в Google Kubernetes Engine. Пайплайны на Gitlab CI, туда прикручены flake, black и mypy. Там же запускаются тесты на pytest. Django-сервисы деплоим, используя fabric.

Команда и процессы

В команде 4 фронтендера, 3 бэкендера, дизайнер и продакт.

По необходимости подключаем к работе команды тестировщиков, аналитиков и других специалистов. Всего в технической команде журнала 36 человек, из них 11 С бэкендеры.

Работаем итерациями. Раз в неделю команда обсуждает дела на предыдущей неделе и планирует работу на следующую. Разработчики сами декомпозируют и доспекивают задачи по бизнесовым постановкам и макетам.

Раз в пару недель мы созваниваемся на час, чтобы обсудить чисто бэкендерские штуки: изменения в архитектуре, новости или открытия, процессы. У нас принято код-ревью до двух лайков. Реквесты равномерно разбрасываем между всеми бэкендерами независимо от продуктовой команды.

Раз в месяц проводим 1-1 с руководителем.

Ближайшие масштабные задачи

Перезапустить фасад журнала. Избавляемся от легаси. За 6 лет журнал прошел большой путь, многие технические решения принимались спонтанно под давлением обстоятельств. Пользователям этого не видно, но под капотом последний год проводим большую чистку, в её завершающих стадиях предстоит принять участие. Фасад — сервис, который первым после балансера принимает трафик.

Обновить потоки. Пользовательская навигация по сайту построена на тематических потоках. В некоторых потоках только пользовательский контент, в остальных — редакционный. Один из потоков — со всеми вопросами читателей. Для развития этой системы надо будет подготовить новые эндпойнты, поменять структуру данных, провести миграции.

Унифицировать структуру статей. В Т—Ж очень сложная вёрстка. Некоторые части статей свёрстаны руками, а статей накопилось много. Чтобы двигаться дальше в развитии внутренних инструментов редакции, мы разработали более строгую систему хранения данных статей. Кроме её внедрения предстоит большая и сложная миграция статей за все предыдущие годы.

Унификация админок журнала. За сценой спрятан набор разнородных инструментов, которыми пользуется редакция. Пока мы проводим их ревизию, собираем общие паттерны и продумываем контуры простой и лаконичной системы управления и модерации. Большую часть работы предстоит сделать фронтам, но для них точно придётся подготовить новые API.



Бонусы

  1. Удаленная работа. По желанию можно приезжать в наш офис в семи минутах офисом на «Динамо» в Москве или в некоторых других городах. Сможем помочь с переездом.
  2. Гибкий график. Главное — побольше времени пересекаться с остальной командой.
  3. Рабочий MacBook Pro.
  4. ДМС со второй недели работы.
  5. Опыт в выращивании стажёров. Несколько раз в год набираем студентов Физтеха, Вышки, Бауманки, МГУ и других вузов с неплохими техническими программами. Проводим собственные обучающие программы для студентов и недавних выпускников.
  6. Помощь в написании статей и подготовке выступлений. Наши редакторы, графдизайнеры и DevRel помогут подобрать тему, собрать и оформить материал, подготовиться и опубликоваться или выступить.
  7. Обучение смежным с работой софт- и хард-скиллам. В Тинькофф развитая система внутренних тренингов. Есть возможность поучиться на внешних курсах или послушать конференции за счет компании.

Дополнительные инструкции

Ожидаем, что соискатель умеет проектировать сервисы с нуля, писать RFC, проводить собеседования, декомпозировать бизнесовые постановки задач и делегировать работу менее опытным разработчикам.

Чтобы обсудить вакансию, пишите тимлиду команды в Телеграм. Очень здорово, если есть ссылки на ваш GitHub или любые другие примеры вашего кода.