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