Most applications go out cold — see where you stand first. No sign-up to start.
Don't just apply. Show up ready.
Olive works from this exact posting — no sign-up to start.
At a glance
Job overview
Ditto is a fast‑growing startup redefining data movement at the edge, building an AI‑driven platform that lets engineers create, test and ship software via autonomous agents, with a focus on measurement, evaluation and reliable runtime execution.
Skills & qualifications
Skills
Benefits
Full job description
About Ditto: Ditto is redefining how data moves at the edge. Our mission is to make it seamless for developers to build resilient, real-time applications, regardless of network conditions. Whether you're in a stadium, airplane, or remote military base, Ditto's peer-to-peer sync engine ensures devices stay connected and data stays consistent, even without internet. With more than $145 million in funding and trusted by organizations like Chick-fil-A, Delta Airlines, and the U.S. military, Ditto powers mission-critical experiences across aviation, retail, travel, hospitality, defense, and more. As a globally distributed, fast-growing startup, we’re committed to building a diverse and inclusive team that reflects the wide range of perspectives needed to solve the world’s hardest connectivity problems. As an AI Engineer at Ditto, you build the system that builds our software. We are moving engineering from handcraft — every change written, tested, and shipped by a person tending it one at a time — to an operated platform where agents do the work and engineers tend the agents. You will help build Symphony: the brief runtime that executes agent teams, the typed tool surface those agents reach the host through, the telemetry that makes every run measurable, and the evaluation loop that turns a bad output into a better brief instead of a hand-patched diff. This is deliberately a blend of AI engineering and developer tooling, because at this layer they are the same job. Getting an agent to reliably build, test, and ship an iOS change is part prompt and context design, part sandboxing and process supervision, part CI and release plumbing, and entirely a measurement problem. Your users are Ditto's own engineers, and your product is the thing they run every day — so you will care as much about a clear error message and a fast local loop as you do about token cost per completed task. This role suits someone comfortable in ambiguity, opinionated about evaluation over intuition, and happy to own a system end to end.
Key Responsibilities
-
Build the agent execution runtime: Design and ship the layer that compiles a brief into a running team of agents — topology and handoffs, deterministic gates, the shared message bus, session lifecycle, and the recovery behavior that keeps a long run from losing its work.
-
Design the tool surface agents work through: Replace "here is a shell, please be careful" with typed, versioned toolpacks backed by reviewed repository recipes — sandboxed execution boundaries, lease handling, process-tree ownership, and MCP servers that expose our internal systems to agents safely.
-
Make quality measurable, then improve it: Build the evals, benchmarks, and metric sets that score a run; instrument the system with per-phase timing, structured error taxonomies, and cost attribution; and use that signal to tune prompts, context, and topology rather than guessing.
-
Own the model substrate as a swappable input: Bind briefs to capability classes instead of vendor model names, work with routing and inference infrastructure across hosted and on-prem serving, and tune context, caching, and model selection against real cost, latency, and accuracy data.
-
Partner with service teams and raise the bar: Work directly with Ditto's engineering teams to turn their workflows into briefs they trust, establish the patterns others compose from, and mentor engineers as agentic development becomes the default path rather than the experiment.
What You'll Need
-
5+ years of professional software engineering experience, including meaningful time building and operating LLM-backed systems in production — not prototypes or demos, but something real people depended on.
-
Hands-on depth with agentic systems: tool and function calling, multi-agent orchestration, context and prompt engineering, structured output, and a practical understanding of where these systems fail and why.
-
Strong developer-tooling instincts from building the things engineers depend on — CLIs, build systems, CI/CD, internal platforms — with the empathy for the daily loop that comes from having been the person on call for it.
-
A rigorous approach to evaluation. You have built evals or benchmarks, and you reach for a measurement before an opinion when arguing that one approach beats another.
-
Strong Python (async, typed interfaces, Pydantic or similar) plus the systems fundamentals to work across a polyglot codebase — processes, sandboxing, filesystems, and the ability to debug something you did not write.
-
Demonstrated ownership and strong communication, with a track record of navigating ambiguity, setting technical direction, and working effectively with internal customers in a distributed, remote-friendly team.
Nice to Haves
-
Experience with MCP — building servers or clients, and designing tool interfaces that constrain what a model can do rather than trusting it not to.
-
Sandboxing and host isolation experience: process supervision, network and filesystem boundaries, resource leases, and the operational reality of macOS toolchains, Xcode, and iOS simulators.
-
Release engineering background — bundling, artifact provenance, benchmarking against a baseline, staged promotion, and rollback you have actually rehearsed.
-
Observability and cost accounting at scale, particularly OpenTelemetry, and experience making a spend number trustworthy enough to enforce budgets against.
-
Inference infrastructure experience: model routing and serving (vLLM or similar), prefix caching behavior, GPU capacity planning, or running open-weight models on owned hardware.
-
Fine-tuning or post-training experience with open-weight models, and a view on when it is worth the cost.
-
Familiarity with Rust, Swift, or Kotlin — enough to build tooling that has to understand the repositories it operates on.
-
A track record in fast-growing or startup environments, including 0→1 platform work where adoption had to be earned team by team rather than mandated.
The Benefits of Building with Us We offer competitive salaries and meaningful equity. We believe everyone on the team should have a stake in what we’re building. Benefits vary by region to make sure you're covered in the ways that matter most. In the US, that includes health, dental, vision, life, and disability insurance, plus a 401(k) and flexible spending accounts. Regardless of where you live, everyone at Ditto can utilize flexible time off. And while we work remotely, our Atlanta office is always open if you ever want a place to work or meet up with teammates.
Apply Anyway At Ditto, we know game-changers don’t always come wrapped in a “perfect” resume. Years of experience? Every single bullet point checked? Meh. That’s not what drives us. What does matter?
-
Grit.
-
Curiosity.
-
Adaptability.
-
And a genuine spark for what we’re building.
So if you’re fired up about our mission but not sure you tick every box - hit that apply button anyway. Use your application to show us how you’ll make an impact here. We’re always on the lookout for exceptional humans who want to grow, stretch, and build something meaningful with us. Equal Opportunity Employer Ditto is proud to be an equal-opportunity employer. We do not discriminate in hiring or any employment decision based on race, color, religion, national origin, age, sex (including pregnancy, childbirth, or related medical conditions), marital status, ancestry, physical or mental disability, genetic information, veteran status, gender identity or expression, sexual orientation, or other applicable legally protected characteristics. Ditto is committed to providing reasonable accommodations for qualified individuals with disabilities and disabled veterans in our job application procedures. If you need assistance or an accommodation due to a disability, please let us know.
You've read the whole posting — now see how you match it.