Renato Cavalcanti

Renato Cavalcanti

Software Developer / Akka

Depth Over Fluency: Engineering When the Agent Writes the Code

Language fluency is becoming something we can borrow from an assistant. Depth — understanding type systems, concurrency models, trade-offs — is becoming more valuable, not less.

Code assistants now write competent Kotlin, Java, Rust, Go, or TypeScript on demand, often in languages we’ve barely touched ourselves. So what’s left for us to learn? If the assistant handles the syntax, the idioms, and increasingly the patterns, does it still matter whether we know a language inside out?

I think it does, but not in the way we used to assume. In this talk, I’ll argue that language fluency and language depth are decoupling. Fluency is the muscle memory of writing idiomatic code, and it’s becoming something we can borrow from an assistant. Depth is something else: understanding type systems, concurrency models, memory semantics, effect handling, the trade-offs a language’s designers made and didn’t make. Depth is becoming more valuable, not less, because it’s what lets us evaluate, steer, and trust what the assistant produces.

I’ll share what working this way has actually taught me. The assistant is often most useful before any code gets written, helping you explore the codebase and see what the work really is. And depth matters most when there’s a real design decision to make. The assistant does the typing. The judgment is still yours.

The popular advice is “learn to prompt.” I think that’s the wrong advice. Assistants already write our code; the real question is what we should be getting better at while they do. You’ll leave with a sharper sense of which parts of your expertise are durable, which are becoming commoditized, and how to use an assistant as a learning multiplier rather than a shortcut around the hard parts.


Renato Cavalcanti is a software developer at Akka and a core contributor to the Akka SDK, working on the runtime team. His work focuses on applying distributed systems principles — such as durability, workflows, supervision, and observability — to the design of reliable multi-agent AI systems.

A Scala developer since 2009, he has long worked on distributed systems, Event Sourcing, CQRS, and DDD, with a practical focus on production concerns. He is the founder of BeScala, the Belgian Scala User Group.