Python Backend Developer (HyperDrive)

Orion soft · Россия · по договорённости

Компания
Orion soft
Город
Россия
Зарплата
по договорённости
Уровень
senior
Формат
full_time

Описание вакансии
Orion soft создает стабильное ПО для ИТ-инфраструктуры Enterprise-бизнеса. Наши продукты помогают автоматизировать и оптимизировать процессы, создавать защищенную инфраструктуру под КИИ, строить частные облака и запускать эффективные ML/AI-процессы. HyperDrive предоставляет единый API и пользовательский интерфейс для управления виртуальной инфраструктурой, Kubernetes-кластерами, секретами, GitOps-процессами и внутренними платформенными сервисами. Наша команда активно растет и ищет Senior Python Backend Developer.

Твои задачи
· Проектировать распределённые сценарии между микросервисами: RPC, событийное взаимодействие, фоновые процессы, гарантии доставки, идемпотентность и восстановление после частичных отказов;
· Проектировать и реализовывать REST API на FastAPI с использованием OpenAPI и версионируемых контрактов;
· Разрабатывать внутренние RPC-методы и событийные взаимодействия через NATS и FastStream;
· Работать с NATS JetStream: streams, durable consumers, ack/nak, redelivery, backoff, дедупликацией и обработкой сообщений с учётом семантики at-least-once delivery;
· Реализовывать фоновые и длительные процессы, не привязанные к жизненному циклу HTTP-запроса;
· Проектировать транзакционные сценарии PostgreSQL, включая transactional outbox и согласованную публикацию событий;
· Работать с PostgreSQL через SQLAlchemy 2 Async и asyncpg, проектировать модели данных, запросы и миграции Alembic;
· Обеспечивать идемпотентность операций, retry-механизмы, обработку ошибок и согласованность данных между сервисами;
· Использовать optimistic/pessimistic locking, advisory locks и другие механизмы координации конкурентных и распределённых процессов там, где это необходимо;
· Разрабатывать интеграции и контроллеры для внешних инфраструктурных API: Kubernetes, VMware, zVirt/oVirt, K2 Cloud, Vault и GitOps-систем;
· Работать с Kubernetes API, ресурсами кластера и reconciliation-подходом;
· Обеспечивать observability сервисов: structured logging, метрики, distributed tracing и диагностику межсервисных взаимодействий;
· Писать модульные, контрактные и интеграционные тесты;
· Поддерживать воспроизводимые интеграционные окружения с PostgreSQL, NATS, Vault, Keycloak и SpiceDB через Testcontainers;
· Участвовать в проектировании межсервисных контрактов и архитектурных решений;
· Проводить code review и помогать развиваться middle-разработчикам.

Наши ожидания
· Уверенный коммерческий опыт разработки на Python. Важнее глубина инженерного опыта, чем формальное количество лет;
· Глубокое понимание asyncio, конкурентного выполнения, event loop и жизненного цикла асинхронного приложения;
· Опыт разработки API на FastAPI или сопоставимом Python-фреймворке;
· Практический опыт с Pydantic и современными аннотациями типов Python;
· Уверенное знание PostgreSQL: транзакции, уровни изоляции, блокировки, индексы, планы выполнения и оптимизация запросов;
· Опыт работы с SQLAlchemy 2, желательно с асинхронным API;
· Понимание event-driven-архитектуры, RPC, message broker-ов и семантики доставки сообщений;
· Понимание проблем распределённых систем: повторная доставка, частичные отказы, идемпотентность, race conditions и согласованность данных;
· Опыт написания тестов с pytest и pytest-asyncio, использования моков и интеграционных окружений;
· Понимание REST, OpenAPI и версионирования API и межсервисных контрактов;
· Практическое понимание Docker и основных сущностей Kubernetes;
· Умение разбираться в существующем коде, находить архитектурные и технические проблемы и аргументированно проводить code review;
· Способность самостоятельно проектировать технические решения и обсуждать архитектурные компромиссы с командой.

Здорово, если ты
· Имеешь практический опыт с NATS, NATS JetStream.

Открыть и откликнуться →

Отклик ведёт на сайт работодателя. Бесплатная регистрация открывает отклик и разбор резюме.

Многих вакансий каталога нет на агрегаторах

12300+ вакансий от 1200+ компаний — в основном напрямую с карьерных сайтов и из Telegram-каналов. У 500+ из них есть контакт нанимающего: пишешь человеку, а не в общую очередь. Регистрация бесплатная — откроет контакты и подбор вакансий под твоё резюме.