682

Вакансия: бэкендер в соцплатформу Т⁠—⁠Ж (закрыта)

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

Иван Цуварев

тимлид соцплатформы

Привет! Меня зовут Ваня, я тимлид соцплатформы Т⁠—⁠Ж.

Ищу бэкенд-разработчика на Python, который поможет нам делать задачи для сообщества Журнала.

Т⁠—⁠Ж — главное русскоязычное издание про деньги (и не только), которое каждый месяц читает 16 млн человек. Мы помогаем людям разумно распоряжаться деньгами, а еще — узнавать, как это делают другие, и делиться собственным опытом в Сообществе.

Все, что связано с пользователями (профиль, комментарии, посты, уведомления), обслуживает соцплатформа. У соцплатформы много связей с другими сервисами журнала, поэтому нужно будет не только писать код, но и договариваться с коллегами.

Внимание!

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

Задачи

Из продуктовых задач может понадобиться, например, сделать бэкенд для ачивок пользователей, поддержать отправку пушей о новых комментариях в мобильное приложение или разработать публичный рейтинг пользователей. Из техдолга — поучаствовать в рефакторинге монолита (сначала причесываем код внутри по Clean Architecture + DDD, а затем будем выносить сервисы наружу).

Технологии

Текущий монолит написан на Django, новые сервисы будут на FastAPI. Запускаемся на Python 3.9. Базы: Postgres для данных и Redis — в основном для кэша. Клиенты общаются с сервисами по REST, используем спецификацию OpenAPI v3. Между собой сервисы иногда общаются напрямую, но в основном — по шине. В качестве брокера остался Google Pub/Sub, с которого мы мигрируем на Kafka.

Деплоимся с помощью скриптов Fabric в Yandex Cloud (не торопясь планируем переезд в Yandex Managed Kubernetes). Пайплайны на Gitlab CI, туда прикручены flake, black и mypy. Там же запускаются тесты на pytest. К написанию тестов относимся ответственно и используем allure-разметку для их описания.

Процессы

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

Выполненную задачу отправляем в кросс-ревью до двух лайков. Реквесты равномерно разбрасываем между всеми бэкендерами независимо от продуктовой команды. После успешного ревью тестировщики проводят приемочное тестирование и постревью разметки автотестов. После этого сливаем в мастер, когда набирается достаточно задач — релизим в продакшен.

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

Требования

Вот что поможет справиться с нашими задачами:

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

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

Условия

Мы предлагаем:

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

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

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

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

Как к нам устроиться

Пишите Ксюше, нашему рекрутеру, в «Телеграм» или на почту. Что произойдет дальше:

  1. Ксюша назначит даты технических собеседований: по алгоритмам, языку программирования и проектированию систем.
  2. Вы проходите эти секции.
  3. Созваниваемся со мной или кем-то из тимлидов на фит-интервью: пообщаемся на важные темы, обменяемся каверзными вопросами.
  4. Утвердим деньги, пришлем предложение на почту.

Если сходу есть вопросы, напишите мне в «Телеграм».

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