ServiceNow
Senior Staff Software Engineer, Agentic Systems - Moveworks
Автоматический пересказ вакансии на русском. Полный текст на языке оригинала и форма отклика — на сайте работодателя.
Инженер в команду Moveworks, которая строит runtime-инфраструктуру для AI-агентов ServiceNow. Роль сфокусирована на распределённых системах: оркестрация агентных сессий, event-driven пайплайны и observability для миллионов корпоративных пользователей.
Задачи
- Разрабатывать движок оркестрации агентов — стейт-машину для долгоживущих сессий, координирующую планирование, выполнение и взаимодействие с пользователем через множество вызовов LLM и инструментов
- Реализовывать распределённое управление сессиями на основе lease-модели с conditional writes в DynamoDB, heartbeat-протоколами и восстановлением после сбоев через checkpointing
- Строить event-driven пайплайн сообщений: SQS FIFO для упорядоченной доставки, Kafka-консьюмеры для обработки событий, real-time стриминг через gRPC и Socket.IO
- Применять structured concurrency: Python asyncio TaskGroups для параллельных задач в рамках сессии с fail-fast семантикой и graceful cancellation
- Развивать observability-инфраструктуру: инструментация OpenTelemetry, propagation trace-контекста через async-границы, управление жизненным циклом span для сессий длительностью в минуты
- Создавать слои кэширования и состояния: Redis, KV-хранилища на DynamoDB со скоупом per-org/per-bot, оптимизация batch-чтения и hot-reload конфигурации
Требования
- 12+ лет опыта построения production backend/infrastructure систем
- Уверенное владение Python или Go (желательно обоими)
- Опыт проектирования и эксплуатации систем, обрабатывающих реальный трафик в масштабе
- Готовность работать в условиях неопределённости — задачи новые, без готовых решений из учебников
- Глубокий опыт минимум в 3 из следующих областей: распределённые системы (модели консистентности, идемпотентность, exactly-once delivery, распределённые локи/lease)
- Concurrent/async программирование: Python asyncio, Go goroutines, structured concurrency, обработка отмены
- Event-driven архитектуры: очереди сообщений (SQS, Kafka), pub/sub, backpressure, гарантии доставки
- Инфраструктурные базы данных: DynamoDB (conditional writes, транзакции), Redis (connection pooling, pub/sub)
- Observability: OpenTelemetry, распределённый трейсинг, propagation span-контекста, метрики Prometheus
- gRPC/protobuf: streaming RPC, проектирование сервисных интерфейсов, паттерны обработки ошибок
Условия
- Гибкий подход к распределённой работе с доверием: work personas (flexible, remote или required in office) в зависимости от характера работы и локации
- Равные возможности трудоустройства для всех кандидатов
- Возможность запросить разумные accommodations в процессе отбора
- Позиция может требовать экспортного контроля (EAR) и получения соответствующего одобрения
Навыки
- Python
- Go
- asyncio
- DynamoDB
- Redis
- SQS
- Kafka
- gRPC
- protobuf
- Socket.IO
- OpenTelemetry
- Prometheus
- distributed systems
- structured concurrency