We Chose Elixir and Got Lucky

September 24, 2025
elixir

Four years ago at Workera – whoosh, there goes time and my black hair – we picked Elixir to give us an unfair startup advantage: ship twice as fast and stay up. Three things cemented our decision: fewer frontend–backend handoffs, a simple, consistent stack, and reliability.

Elixir delivered on all fronts. And it turned out it was a great litmus test for talent.

I could tell you we planned for the AI wave. We honestly didn’t. Sometimes you just get lucky. Turns out the primitives Elixir gives you, processes, message passing, supervision, turned out to be exactly what we needed to build our AI‑native platform.

Why Elixir fits agents

One agent = one process. A clean mental model: start many, run them side by side, let them talk by sending messages. No contortions.

Crashes are normal. When an API flakes or a model times out, the system restarts the agent instantly. Problems stay local; the app stays up.

You can see the work. With a persistent connection to the frontend, users watch agents think in real time, no polling, no extra services. Trust grows when the system is visible.

State without the drama. Each agent keeps its own notes. Less shared state means fewer surprises. When we need persistence, we add it deliberately.

These aren’t new ideas. They’re the actor model and supervision, the battle‑tested playbook that kept phone switches running for decades. It maps neatly to modern agent workloads, which are mostly coordination and I/O.

The rough edges

It wasn’t all smooth sailing. We built our own API clients that others got off the shelf. We missed the early wave of agent frameworks; no LangChain equivalent, no plug‑and‑play voice tools. But here’s the thing: these gaps let us to build thin, focused adapters that we understood completely. No black boxes, no surprise dependencies, just code we could debug.

Where we are now

Today, hundreds of assessment sessions run concurrently, with multiple agents collaborating in each one. We don’t wrestle with unhardened AI frameworks or chase the latest orchestration library. We’re running on a runtime built for many independent, fault‑tolerant actors, battle‑hardened over decades.

While others are reinventing distributed systems to handle agents, we’re using one that solved these problems before AI was cool. Elixir let us ship our AI features in half the time we’d need elsewhere, with the observability and resilience our enterprise customers demand.

Sometimes the best tool for tomorrow’s problem is the one that’s been quietly excellent all along.

Taste