Orion soft

Python Backend Developer (HyperDrive) | Orion Career

Коротко

Senior Python Backend Developer в команду HyperDrive (Orion soft) — платформы для управления виртуальной инфраструктурой, Kubernetes-кластерами, секретами и GitOps-процессами. Задачи включают проектирование распределённых микросервисных сценариев, REST API на FastAPI, работу с NATS JetStream, PostgreSQL через SQLAlchemy 2 Async, интеграции с Kubernetes, VMware, Vault и GitOps-системами. Требуется глубокий опыт asyncio, PostgreSQL, event-driven архитектур и распределённых систем. Формат работы — гибрид (офис или удаленно).

О компании
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 или FastStream;
•Понимаешь семантику at-least-once delivery и имел опыт построения идемпотентных consumers;
•Имеешь знание паттернов transactional outbox, idempotent consumer, saga и подходов к координации распределённых процессов;
•Имеешь опыт использования Testcontainers;
•Имеешь опыт разработки Kubernetes-контроллеров, работы с Kubernetes API, CRD и reconciliation loop;
•Имеешь опыт работы с асинхронными Kubernetes-клиентами;
•Имеешь опыт с Kustomize, FluxCD или Argo CD;
•Знаком с Vault, Keycloak, OIDC, OAuth 2.0, JWT или SpiceDB;
•Имеешь опыт интеграции с VMware, zVirt/oVirt или облачными API;
•Имеешь опыт с OpenTelemetry, Prometheus, Uptrace, VictoriaMetrics или VictoriaLogs;
•Знаком с GitLab API, Terraform, Puppet или Ansible;
•Имеешь опыт разработки распределённых систем и типизированных межсервисных контрактов;
•Имеешь опыт проектирования control plane-систем или платформ, управляющих внешней инфраструктурой.
Мы предлагаем
•Конкурентную заработную плату, соответствующую навыкам, прозрачную систему премирования;
•Работу в аккредитованной ИТ-компании;
•Гибридный формат работы — можно работать удаленно или в офисе с командой;
•Курсы и тренинги от корпоративного университета, возможность внешнего обучения и сертификации за счет компании, регулярные внутренние митапы и обмен опытом;
•Заботу о здоровье: ДМС в лучших клиниках с полным пакетом услуг (включая стоматологию и телемедицину) с первого рабочего дня, разнообразные спортивные программы в офисе и за его пределами;
•Комфортный и уютный офис с парковкой, собственным кафе и компенсацией питания, кухни на каждом этаже, спортзал с душевой.

Хватит откликаться.
Получите рекомендацию.

$10 стартовых кредитов

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

Это не отклик на вакансию: резюме не уходит в компанию, а рекомендацию именно по этой роли мы не обещаем.

Посмотрите, кто ещё получает интервью на автопилоте