Design and evolve our GraphQL API and the services behind it (Node.js, Postgres, S3, Docker/Kubernetes)
Build and improve AI-powered features: chart recommendation, data fluency, narrative generation, and agentic workflows that act on user intent
Own the eval infrastructure by defining what "good” looks like for our AI systems, build LLM-as-judge pipelines, and drive quality improvements from signal
Work across our composer and fluency engines: the systems that translate user data and intent into visual output
Contribute to architecture decisions: schema design, data loading and processing patterns, and pipeline orchestration
Partner closely with frontend engineers and designers (who often work directly in the codebase) to ship full features end-to-end
Skills:
6+ years of backend engineering experience, with strong TypeScript/Node.js fundamentals
Hands-on experience building with LLMs: prompt engineering, structured outputs, tool use, retrieval, caching strategies, and cost/latency tradeoffs
Experience with agentic architectures: multi-step reasoning, tool-calling agents, orchestration patterns, and the failure modes that come with them
You think carefully about eval infrastructure, not just whether the model works today, but how you'd know if it regressed tomorrow
You write code that's clear, well-typed, and doesn't require a comment to explain what it does. You are comfortable moving quickly and leveraging AI assistance. You can understand tradeoffs, particularly when it comes to moving quickly and code quality.
Bonus Points:
A genuine enthusiasm for data visualization. You find yourself opinionated about when to use a bar chart vs. a line chart, and you know why it matters
Experience with LangSmith, LangFuse, or similar LLM observability tooling
Familiarity with React and willingness to read and occasionally contribute to frontend code
Prior experience in a design-adjacent or creative tools product