New
Design, build, and maintain Java-based services that process simulation lifecycle events and conversation data through event-driven pipelines Build and extend the transport-agnostic messaging library supporting RabbitMQ, Apache Kafka, and Google Cloud Pub/Sub Contribute to the LLM evaluation pipeline — resolving Freemarker-templated metric prompts, calling the LLM Gateway, and storing scored results in Couchbase Develop and extend the Evals REST API for querying simulation results, conversation assessments, and agent performance metrics Work on routing and fan-out logic in the simulation event router, bridging Kafka streams and RabbitMQ queues in a hybrid architecture Implement reliable message processing patterns: retry with exponential backoff, Dead Letter Queues, and idempotent operations for correctness across multi-pod deployments 4+ years of software development experience Strong proficiency in Java, including Java 21 features, and experience with the Spring Boot ecosystem (Spring Data, Spring AMQP, Spring Actuator) Experience building event-driven services with message brokers such as RabbitMQ, Apache Kafka, or Google Pub/Sub Familiarity with Couchbase, MongoDB, or other document/NoSQL databases Experience with Docker and Kubernetes for containerized, cloud-native deployments Solid understanding of distributed systems concepts: optimistic concurrency, idempotency, retry strategies, and stateless service design Remote-First Model: Fully remote (#LI-Remote); WeWork space available 401(k) Retirement Plan with 4% employer match HSA & FSA Plans: Pre-tax health spending accounts Employee Stock Purchase Program (ESPP): Discount on company shares Flexible Paid Time Off (PTO) and Paid Holidays Generous Parental Leave Policy