Staff Software Engineer, Agentic Systems - Moveworks

Servicenow

  • Mountain View, CA
  • 1 day ago

    Highlights

    Structured concurrency — Python asyncio TaskGroups running multiple concurrent tasks per session (message polling, lease heartbeats, output publishing, orchestrator execution) with fail-fast semantics and graceful cancellation. • Agent orchestration engine — A state machine that manages long-running agent sessions, coordinating planning, execution, and user interaction across multiple LLM calls and tool invocations.

    Numbers & Facts

    LocationMountain View, CA

    Description

    Were building the runtime infrastructure that powers Moveworks AI agents — the systems that orchestrate, execute, and deliver agent responses to millions of enterprise users in real time. This is not an ML role. This is a distributed systems engineering role at the heart of the agentic AI wave.
    Our AI agents can plan, execute multi-step workflows, call tools, wait on human input, and resume — all while maintaining correctness, observability, and low latency. The systems that make this possible are what youll build and own.

    What you get to do in this role:
    •    Agent orchestration engine — A state machine that manages long-running agent sessions, coordinating planning, execution, and user interaction across multiple LLM calls and tool invocations
    •    Distributed session management — Lease-based ownership using DynamoDB conditional writes, heartbeat protocols, and crash recovery via checkpointing
    •    Event-driven message pipeline — SQS FIFO queues for ordered delivery, Kafka consumers for event processing, and real-time streaming via gRPC and Socket.IO
    •    Structured concurrency — Python asyncio TaskGroups running multiple concurrent tasks per session (message polling, lease heartbeats, output publishing, orchestrator execution) with fail-fast semantics and graceful cancellation
    •    Observability infrastructure — OpenTelemetry instrumentation, distributed trace context propagation across async boundaries, custom span lifecycle management for sessions that span minutes
    •    Caching and state layers — Redis, DynamoDB KV stores with per-org/per-bot scoping, batch read optimization, and hot-reload configuration

    Qualifications
    To be successful in this role you have:
    You should have deep experience in at least 3 of these areas:
    •    Distributed systems: consistency models, idempotency, exactly-once delivery, distributed locking/leasing
    •    Concurrent/async programming: Python asyncio, Go goroutines, structured concurrency, cancellation handling
    •    Event-driven architectures: message queues (SQS, Kafka), pub/sub, backpressure, delivery guarantees
    •    Database systems for infrastructure: DynamoDB (conditional writes, transactions), Redis (connection pooling, pub/sub)
    •    Observability: OpenTelemetry, distributed tracing, span context propagation, Prometheus metrics
    •    gRPC/protobuf: streaming RPCs, service interface design, error handling patterns

    Required:
    •    7+ years building production backend/infrastructure systems
    •    Strong in Python or Go (ideally both)
    •    Experience designing and operating systems that handle real traffic at scale
    •    Comfort with ambiguity — these are novel problems without textbook solutions

     

    Similar Jobs