Саввинская набережная
КОНТЕКСТ РОЛИ
Развитие production-сервисов на Python в составе платформы. Сервисы обрабатывают финансовые операции институциональных клиентов: высокие требования к корректности, идемпотентности, наблюдаемости, аудиту. Регуляторный периметр.
Команда: технический руководитель + 2-3 Senior Backend инженера + SRE/Platform + Solution Architect. Работа в плотном контакте с криптографией, custody-инфраструктурой, расчётным контуром.
Формат: очно, офис в Москве (гибрид допустим). Рабочий язык команды — русский и английский: Jira, коммиты, часть созвонов на английском.
ЗАДАЧИ
— Разработка и развитие production-сервисов на Python (FastAPI, asyncio) в финансовом домене.
— Проектирование схем PostgreSQL под высокую нагрузку: партиционирование, индексы (BRIN, GIN), Row-Level Security, миграции с zero-downtime.
— Реализация идемпотентных операций над финансовыми сущностями; работа с распределёнными транзакциями, eventual consistency, саг-паттернами, transactional outbox.
— Интеграция с очередями (Kafka, Redpanda, RabbitMQ): надёжная доставка критичных потоков (at-least-once + идемпотентные потребители, эффективно-однократная обработка по бизнес-эффекту), dead-letter обработка, backpressure.
— Оркестрация долгоживущих и многошаговых процессов (Temporal): таймауты, ретраи, компенсация.
— Проектирование REST API: OpenAPI 3.1 specifications, контрактное тестирование, версионирование, deprecation policy.
— Безопасность: OAuth2/OIDC (Auth0/Keycloak), JWT, RBAC, secrets management, аудит-логирование под регуляторные требования.
— Покрытие тестами: pytest-asyncio, контрактные тесты, нагрузочное тестирование (Locust/k6).
— Code review, ADR (Architecture Decision Records), наставничество.
ТРЕБОВАНИЯ (ОБЯЗАТЕЛЬНЫЕ)
Технические:
— 5+ лет коммерческой разработки на Python в production
— 2+ года production-опыта с FastAPI (включая ownership сервисов под нагрузкой 1K+ rps или эквивалент по бизнес-критичности)
— Глубокое владение asyncio: event loop internals, отладка блокировок, профилирование async-кода, корректная обработка отмены задач
— Production-опыт SQLAlchemy 2.0 в async-режиме (asyncpg-driver, селективная подгрузка, контроль N+1, alembic-async)
— Pydantic 2 (Rust-core, performance-aware использование, custom validators, ser/de оптимизации)
— PostgreSQL на уровне понимания query plans, partitioning, индексных стратегий, vacuum/autovacuum tuning
— OAuth2/OIDC, JWT, контроль доступа на уровне приложения и БД
— pytest, pytest-asyncio в реальной test-suite (не «писал unit-тесты»)
— mypy strict mode, ruff strict configuration — как требование кодовой базы, не optional; uv как пакетный менеджер
— Git, GitLab CI/CD и/или GitHub Actions, code review на ежедневной основе
— Рабочий английский: свободно читаете и пишете технический английский (Jira, PR, коммиты, документация), участвуете в части созвонов на английском
AI-driven разработка (обязательно):
— Готовность работать в AI-driven процессе: агентский тулинг (Claude Code / субагенты), rules + skills как основной способ писать код, а не разовое обращение к LLM. Подробно — стандарт TMGT-ITJD-STD-001.
Образование и подтверждаемость опыта:
— Высшее техническое образование (информатика, программная инженерия, прикладная математика и аналогичные)
— Производственный опыт документально подтверждаемый
БУДЕТ ПЛЮСОМ
— Опыт в финансовом домене: банки, брокеры, платёжные системы, биржевая инфраструктура, инвест-платформы
— Низкоуровневая работа с asyncpg (raw queries, COPY, connection pooling tuning)
— alembic в async-окружении, zero-downtime migrations на больших таблицах
— time-machine, freezegun для тестирования временной логики
— phonenumbers, cryptography, httpx (production-tuned клиенты с retries, circuit breakers, timeouts)
— Опыт с Kafka/Redpanda (transactional producer + idempotent consumer) либо RabbitMQ + Outbox pattern
— Опыт с CDC (Debezium / transactional outbox) и Temporal в продакшене
— Опыт production-эксплуатации сервисов: чтение логов, трассировка через Jaeger/Tempo, чтение metrics в Grafana, on-call rotation
— Понимание принципов 152-ФЗ, 115-ФЗ, ГОСТ Р 57580.1 — опыт работы в регулируемом периметре (банк, финтех, госсектор)
— Опыт с TigerBeetle или другими специализированными финансовыми ledger-системами; двойная запись / accounting-модель баланса
— OpenAPI 3.1 contract-first development
— Реальный опыт построения AI-driven процесса под себя/команду (свои rules, skills, субагенты)
СТЕК
Python 3.14 · FastAPI · asyncio · SQLAlchemy 2.0 (async, asyncpg) · Pydantic 2 · PostgreSQL 17 · Kafka / Redpanda · Temporal · RabbitMQ · Redis · CDC (Debezium / outbox) · Auth0 / Keycloak · uv / ruff / mypy · Docker · Kubernetes (EKS) · ECR · AWS · GitHub Actions / GitLab CI · Grafana · Loki · Tempo
ПРОЦЕСС ОТБОРА
- Скрининг резюме
- Технический скрининг (письменный async): точечные вопросы по asyncio, SQLAlchemy 2.0, FastAPI, PostgreSQL, идемпотентности и money-correctness — текстовые ответы, без онлайн-звонков на этом этапе
- Парная техническая встреча с техническим руководителем и архитектором (1,5 часа): обсуждение архитектуры реального сценария + ваш production-кейс
- Финальная встреча с Генеральным директором