Назад
2 дня назад

Backend Developer (Python)

Формат работы
remote (Global)
Тип работы
fulltime
Грейд
junior
Страна
Russia
hhВакансия с HeadHunter. Контакт ведёт на hh.ru

Мэтч & Сопровод

Покажет вашу совместимость и напишет письмо

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

TL;DR
Backend Developer (Python) (FastAPI/AI): Развитие и поддержка монорепозитория Python-сервисов, включая публичные API, фоновые воркеры, биллинг и интеграции с внешними AI-провайдерами с акцентом на асинхронную обработку, надежность и работу с данными. Focus on проектирование идемпотентных обработчиков, оптимизацию SQL-запросов, обработку сбоев во внешних API и поддержку сложной слоистой архитектуры.

Локация

Москва, Москва, RU; Remote

Ищем разработчика в backend-команду. Основная работа — развитие и поддержка монорепозитория Python-сервисов: публичные API нескольких продуктов, админка, фоновые воркеры, биллинг, интеграции с внешними AI-провайдерами.

Задачи

  • Новые функции в сервисах на FastAPI: эндпоинт, схема БД, воркер, тесты.
  • Интеграции с внешними AI API — OpenAI, ElevenLabs, провайдеры генерации видео и другие: таймауты, повторы, обработка сбоев, учёт стоимости запросов.
  • Биллинг: списание и возврат кредитов, вебхуки о покупках и подписках (Apphud, App Store), идемпотентная обработка.
  • Фоновые обработчики на RabbitMQ: очереди задач, повторы, outbox, сверка зависших задач.
  • MySQL (схема, индексы, миграции Alembic, оптимизация запросов), Redis (кэш, лимиты запросов), ClickHouse (аналитика и метрики).
  • Разбор инцидентов по логам и метрикам, исправление багов по обращениям поддержки.
  • Тесты и код-ревью.

Стек

  • Python 3.12, FastAPI, Pydantic v2
  • SQLAlchemy 2 (async), Alembic, MySQL
  • Redis, RabbitMQ (FastStream), ClickHouse, S3-совместимые хранилища (включая Alibaba OSS)
  • Docker, Kubernetes, Nginx
  • uv, pytest, mypy, ruff
  • Django для внутренней админки, Telegram-боты, ffmpeg, yt-dlp

Архитектура слоистая: interface → application → domain ← infrastructure, с протоколами, unit of work и внедрением зависимостей.

Что нужно от вас

  • Коммерческая разработка на Python от 1 года.
  • Уверенный Python: типизация, dataclasses, контекстные менеджеры, исключения.
  • Понимание asyncio: event loop, почему блокирующий вызов в асинхронном коде тормозит весь сервис, таймауты и отмена задач.
  • FastAPI или другой асинхронный фреймворк (aiohttp, Starlette, Litestar).
  • SQL и реляционные БД (MySQL или PostgreSQL): индексы, транзакции.
  • SQLAlchemy 2.x, желательно async, и миграции Alembic.
  • Redis и хотя бы один брокер сообщений (RabbitMQ, Kafka, Redis Streams).
  • Docker и docker-compose: поднять проект и понять, почему он не стартует.
  • pytest, тесты на граничные случаи и ошибки.
  • Git, pull request'ы, код-ревью.
  • Готовы разбираться в большой существующей кодовой базе и работать по принятой в ней архитектуре.

Будет плюсом

  • Понимаете уровни изоляции транзакций и блокировки в MySQL/PostgreSQL.
  • Работали с подтверждением и повторной доставкой сообщений в брокере, делали идемпотентные обработчики, outbox.
  • FastStream или aio-pika.
  • ClickHouse или другие аналитические БД.
  • Kubernetes: деплой, логи, корректная остановка воркеров.
  • Интеграции с платёжными или подписочными системами (Apphud, RevenueCat, App Store Server API).
  • Работа с LLM и AI API, обработка медиа через ffmpeg.
  • mypy и ruff в повседневной работе.
  • Clean Architecture или DDD на практике.
  • Django.

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

  • Конкурентоспособная заработная плата (по результатам собеседования).
  • Полностью удаленная работа — из любого города.
  • График 5/2.
  • Возможность напрямую влиять на развитие продукта и видеть результат своего труда.
  • Современный стек инструментов и все необходимые ресурсы.
  • Перспективы профессионального и карьерного роста.

Будьте осторожны: если работодатель просит войти в их систему, используя iCloud/Google, прислать код/пароль, запустить код/ПО, не делайте этого - это мошенники. Обязательно жмите "Пожаловаться" или пишите в поддержку. Подробнее в гайде →

Текст вакансии взят без изменений

Источник - hh