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

Откликайтесь на другую вакансию!

Мы уже закрыли эту вакансию, но у нас есть ещё актуальные, которые тоже могут вас заинтересовать. Посмотрите!

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

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

тимлид медиаплатформы

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

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

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

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

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

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

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

Если хочется более глубокого погружения — статья о том, как технически устроен журнал.

Кто в команде

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

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

Как работаем

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

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

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

Задачи

Макет новой итерации страниц потоков
Макет новой итерации страниц потоков

Ближайший большой проект — сделать тематические сообщества.

  • Пользовательская навигация по сайту построена на потоках. В некоторых потоках только пользовательский контент, в остальных — редакционный. Один из потоков — со всеми вопросами читателей.
  • Для нескольких редакций мы хотим объединить пользовательский и редакционный контент. На примере «Путешествий»: все материалы, которые уже есть в потоке, становятся «Лучшим», все пользовательские посты оказываются в ленте «Посты», а тематические вопросы из потока «Что делать» оказываются в «Вопросах».
  • Под эту задачу уже готов фронт, потому что в макете используются компоненты, которые уже готовы в UI-Kit.

Ближе к концу проекта определим следующую веху.

Кроме работы над проектом предстоит:

  • на неделю где-то раз в месяц переключаться в формате дежурства на разбор текучки. Это когда один фронт и один бэк из команды делают в приоритете задачи, которые не входят в скоуп проекта;
  • участвовать в кросс-ревью реквестов с другими бэкендерами.

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

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

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

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

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

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

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

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

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

Где работаем

В основном — удаленно. Свободно чередуем с офисом — про него дальше
Офис на втором этаже SOK Arena Park. Идти семь минут от м. «Динамо»
На кухне — неплохая кофемашина, микроволновки, холодильники и очиститель воды
На этаже две переговорки с плазмами и оборудованием для видеосвязи
Рабочее пространство — опенспейс, но мы не мешаем друг другу

Условия

Кроме белой зарплаты рассчитывайте:

  1. На фултайм-удаленку на время пандемии. Дальше можно будет чередовать с офисом в вашем городе или остаться на удаленке.
  2. Помощь в переезде в Москву или в город, где у нас есть офис разработки.
  3. Гибкий график. Главное — побольше времени пересекаться с остальной командой.
  4. Рабочий MacBook Pro.
  5. ДМС после испытательного.
  6. Модную лимитированную худи с логотипом Т⁠—⁠Ж на очередном тираже.
  7. Добровольное участие в материалах о сотрудниках журнала.

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

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

Актуальное
Вот что еще мы писали по этой теме

заголовок discussed

Психолог объясняет: какие психологические установки мешают достичь финансового благополучия

Психолог объясняет: какие психологические установки мешают достичь финансового благополучия

7
Тестовая анкета 17 декабря

Тестовая анкета 17 декабря

5
autotest-title87395c66-0170-45b2-b922-ed58015b011d

autotest-title87395c66-0170-45b2-b922-ed58015b011d

2
autotest-title678285bd-8273-4a14-b9f6-541c3595685a

autotest-title678285bd-8273-4a14-b9f6-541c3595685a

2
заголовок readers-post-gallery