Why we reach for Rust when it matters
Rust has gone from a cult favourite to a mainstream choice for systems where correctness and speed are non-negotiable. We don't write everything in it — but for the right problems, it's become our default. Here's how we think about where it earns its place.
Safety without a garbage collector
Rust's borrow checker eliminates whole categories of bugs — use-after-free, data races, null-pointer dereferences — at compile time, without the pauses of a garbage collector. You pay for that with a steeper learning curve, and get back code that's both fast and hard to crash.
If it compiles, a surprising amount of the time, it's correct. That confidence is worth a lot on critical paths.
Where we reach for it
- Performance-critical services where latency and throughput are the product.
- Systems and infrastructure code that has to be rock-solid.
- Wasm modules targeting the browser and edge.
- Anything handling untrusted input where memory safety is a security property.
Where we don't
Rust is not the fast path for a quick CRUD API or an early-stage MVP where iteration speed beats raw performance. There, a higher-level language ships faster and the performance ceiling is irrelevant. Choosing the right tool means being honest about what the project actually needs.
The hidden benefit: fearless refactoring
The under-appreciated win is maintenance. Rust's compiler is so strict that large refactors become safe — change a type, and the compiler walks you to every place that needs updating. On long-lived systems, that confidence compounds.
The takeaway
Rust isn't a religion or a silver bullet. It's the tool we pull out when performance and safety both matter and the code has to last. Match the tool to the job, and Rust will quietly make your most critical systems your most reliable ones.
More articles
Putting AI agents into production: a 2026 field guide
Agentic AI is the defining shift of the year — but a demo that dazzles and a system you can trust with real users are very different things. Here's how we ship agents that hold up.
RAG that actually works: beyond the naive vector search
Everyone's first RAG demo works. The second one — on real, messy, enterprise data — usually doesn't. Here's what separates a toy from a system people trust.
Designing AI-native interfaces people actually trust
Bolting a chat box onto your app isn't an AI product. Designing for uncertainty, control and trust is. Here's how we approach AI-native UX.
Have a project in mind?
Let's turn these ideas into your product. Tell us what you're building.
