693

Вакансия: бэкендер в Т⁠—⁠Ж (закрыта)

Аватар автора

Иван Земляченко

punk officer (с англ. тимлид разработки)

Т⁠—⁠Ж — главное русскоязычное издание про деньги.

В августе наш сайт читали 16 миллионов человек. Наша миссия — сделать читателей образованными и смелыми в отношении всего, что касается денег.

Мы ищем сильного бэкенд-разработчика, который займется ключевыми сервисами журнала.

Внимание!

Вакансия уровня middle+/senior. Мы предполагаем, что у кандидатов на эту вакансию за спиной несколько лет опыта работы с веб-технологиями.

Что по технологиям

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

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

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

Кто в команде

В технической команде журнала 5 фронтендеров, 8 бекендеров, два продакта и отдельная команда дизайнеров. Разработка журнала поделена на несколько подкоманд отвечающих за различные сервисы, в команде, разрабатывающей ключевые сервисы — 4 бекендера.

По необходимости подключаем к работе команды тестировщиков, аналитиков и других специалистов.

Как работаем

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

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

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

Задачи

Из ближайших крупных задач:

  1. Заканчиваем миграцию в новое облако, осталось переехать с google pub-sub на self-hosted kafka, настроить дашборды и ещё немного
  2. Переписываем админку статей. Старая была написана на джанго и ходила в базу напрямую, теперь переносим функционал в приватное апи и пишем отдельную фронтовую часть
  3. Переделываем систему рекомендаций
  4. Переосмысляем систему тегов
  5. Внедряем собственную баннерную систему

Что ожидаем от кандидата

Вакансия для опытных специалистов

Если вы только что окончили «Эльбрус-буткемп», «Яндекс-практикум» или другую образовательную программу, предлагаю подать заявку на стажировку в Т⁠-⁠Банке.

Помогут справиться с нашими задачами:

  1. Владение Python и FastAPI.
  2. Опыт разработки REST API, использования спецификации OpenAPI.
  3. Опыт работы с Postgres и Redis.
  4. Опыт написания unit-тестов.
  5. Хотя бы теоретическое знакомство с принципами асинхронной архитектуры (очереди, подписки и т. д.).
  6. Умение спроектировать MVP сервиса на знакомых технологиях по требованиям бизнеса и спланировать его масштабирование в случае наплыва пользователей.

Большим плюсом будет знакомство с Kubernetes.

На каких условиях

Можно рассчитывать на:

  1. Корпоративное трудоустройство. Белая зарплата, рабочая техника, ДМС с первого дня, особые условия на продукты Т⁠-⁠Банка, скидки, wellness-программы, обучение — и этот пак ништяков постоянно растет.
  2. Гибкий график. Главное — побольше времени пересекаться с остальной командой. У нас удачный опыт работы из разных таймзон, и у сов, и у жаворонков.
  3. Удаленную работу. Команда работает из России, Беларуси, Армении, Грузии, Казахстана, Турции, Таиланда — список неполный. По желанию можно приезжать в наш офис в семи минутах от «Динамо» или в другие офисы Т⁠-⁠Банка. Поможем с переездом в город, где есть офис.
  4. Добровольное участие в материалах о сотрудниках журнала.

Как проходит трудоустройство

В Т⁠-⁠Банке длинная цепочка, этапы такие:

  1. Спишемся в почте или Телеграме. Познакомимся там, обсудим стартовые вопросы. Если что — созвонимся.
  2. Я передам контакт рекрутеру, чтобы утвердить даты технических собеседований: по алгоритмам (несложное), по языку программирования и по проектированию систем.
  3. Сами секции.
  4. Финальный созвон: познакомиться с кем-то еще из команды: фронтендером, бэкендером, продактом… Пообщаемся на важные темы, обменяемся каверзными вопросами.
  5. Утвердим деньги, пришлем предложение на почту.

Как помогаем расти

При желании у нас можно научиться:

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

Как откликнуться

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

Вот что еще мы писали по этой теме