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