Python-разработчик (Middle+ / Senior)
Описание
Отдел внутренней автоматизации разрабатывает собственную информационную систему для бизнес-задач в авиационной отрасли. Система состоит из модулей для ввода, хранения, обработки, парсинга и аналитики данных. Следующий этап — AI-агенты, которые распознают данные и решают прикладные задачи, используя сервисы системы как инструменты. Ищем разработчика, который быстро включится в текущую разработку и в перспективе возьмёт на себя техническое лидерство: архитектуру, контроль качество кода и стратегию развития платформы. Обязанности Базовые обязанности (разработчик) Поддержка, багфикс и развитие функционала существующих модулей. Разработка новых модулей (микросервисов) по функциональным требованиям (ФТТ). Разработка парсеров и загрузчиков данных: веб-источники, файлы (Excel, PDF, сканы), email. Разработка интеграций с внешними и внутренними системами, включая 1С. Связки между сервисами (API, очереди, события) без переписывания работающего ядра. Веб-интерфейсы с удобным UI/UX для внутренних пользователей. Аналитические отчёты, дашборды, шаблоны выгрузки. Интеграция LLM (OpenAI, Anthropic, локальные модели) в бизнес-процессы: извлечение и распознавание данных, structured output, классификация. Разработка AI-агентов: ReAct, tool / function calling к БД и очередям, память, RAG, multi-agent сценарии, обработка результатов. Автотесты (unit, integration, контрактные) и практики безопасной разработки. Работа в окружениях dev / staging / prod без риска для продакшена: миграции, feature flags, откат. Логирование, мониторинг и трассировка своих сервисов. Перспектива развития (Tech Lead, архитектор) Аудит текущей кодовой базы через code review: логика сервисов, архитектура, узкие места, точки интеграции, технический долг, формирование беклогов. Целевая архитектура платформы и план её поэтапного развития. Решения фиксируются в ADR / C4. Проектирование недостающих звеньев: оркестратор агентов, сервис унифицированного доступа к данным, шина событий. Архитектура AI-слоя: выбор моделей и фреймворков, инструменты агентов (в т. ч. MCP), оценка качества (evals), контроль стоимости, guardrails. Оптимизация кода, производительности и инфраструктуры. Совместная проработка роудмеп развития платформы Стандарты разработки: code style, ревью, тестирование, CI/CD, безопасность, трекинга задач, ведение документации. Техническое лидерство: декомпозиция и оценка задач, ревью и контроль качества кода другого разработчика, менторинг. Участие в найме и развитии команды. Требования Обязательно Сильный Python (3.11+), asyncio, типизация. FastAPI, Pydantic v2, SQLAlchemy 2.x / Alembic. Архитектура микросервисов: REST, очереди, event-driven (RabbitMQ / Redis Streams), идемпотентность, ретраи. PostgreSQL (проектирование схем, оптимизация запросов), Redis. Docker, CI/CD, Git-flow, работа с несколькими окружениями. Тестирование: pytest, unit / integration / контрактные тесты. Безопасность: OWASP Top 10, OWASP Top 10 for LLM (prompt injection, утечки данных), аутентификация и авторизация (OAuth2 / JWT), управление секретами, rate limiting. Парсинг защищённых источников: Playwright / Selenium, прокси, обход антибот-защиты и капч, устойчивость к изменениям вёрстки. Опыт с LLM и агентами в продакшене: ReAct, tool calling, memory, multi-agent chains, RAG. Фреймворки LangChain / LangGraph, CrewAI. Векторные БД: pgvector / Qdrant / Milvus, эмбеддинги, chunking, гибридный поиск. Быстрый вход в чужой код и навык качественного code review. Будет плюсом Глубокий опыт LangGraph, промпт-инжиниринг, оценка качества LLM (evals), Langfuse / LangSmith. MCP (Model Context Protocol), локальные модели (vLLM, Ollama). Распознавание документов: OCR, PDF / Excel-парсинг (Docling, Unstructured и аналоги). Kubernetes, Prometheus + Grafana, OpenTelemetry. Фронтенд для внутренних интерфейсов: React / Vue + TypeScript. 1С: запросы, внешние обработки, интеграции (HTTP-сервисы, OData). Команда часто работает с 1С. Опыт в роли Tech Lead или архитектора. Знание авиационной предметной области (P/N, компоненты, ремонт, логистика). Почему эта роль может быть вам интересна Прикладные задачи: разработка решений, которыми пользуются сотрудники в ежедневной работе. Влияние на технические решения: возможность участвовать в выборе архитектуры, инструментов и подходов к развитию системы. Сочетание разработки и AI: работа с backend-сервисами, интеграциями, обработкой данных и агентными сценариями. Прямое влияние на архитектуру и технологический выбор, рост до Tech Lead / архитектора. Конкурентную заработную плату, подробные условия обсуждаются с финалистом на данную позицию.