Сравним вакансию с вашим действующим резюме и составим письмо под эту роль.
Описание вакансии
Задачи:
— Развитие и поддержка монорепозитория Python-сервисов: публичные API нескольких продуктов, админка, фоновые воркеры, биллинг, интеграции с внешними AI-провайдерами.
— Новые функции в сервисах на FastAPI: эндпоинт, схема БД, воркер, тесты.
— Интеграции с внешними AI API — OpenAI, ElevenLabs, провайдеры генерации видео и другие: таймауты, повторы, обработка сбоев, учёт стоимости запросов.
— Биллинг: списание и возврат кредитов, вебхуки о покупках и подписках (Apphud, App Store), идемпотентная обработка.
— Фоновые обработчики на RabbitMQ: очереди задач, повторы, outbox, сверка зависших задач.
— Работа с MySQL (схема, индексы, миграции Alembic, оптимизация запросов), Redis (кэш, лимиты запросов), ClickHouse (аналитика и метрики).
— Разбор инцидентов по логам и метрикам, исправление багов по обращениям поддержки.
— Тесты и код-ревью.
Требования:
— Коммерческая разработка на 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.
— Возможность напрямую влиять на развитие продукта и видеть результат своего труда.
— Современный стек инструментов и все необходимые ресурсы.
— Перспективы профессионального и карьерного роста.
Контакты работодателя доступны по кнопке «Откликнуться» после входа.