Joe Magerramov's blog
Friday, December 5, 2025
Cratographer: Solving Problems That Weren't Worth Solving (Until They Were)
›
I've been having a small problem. Not a big deal, but annoying enough that it kept bugging me. When working with AI agents on code chang...
Sunday, November 9, 2025
Switching from Synchronous to Asynchronous Mode of Coding
›
When I blogged about the challenges and opportunities of AI assisted coding, there were a fair number of questions about details of our expe...
Sunday, October 19, 2025
The New Calculus of AI-based Coding
›
Over the past three months, a team of experienced, like-minded engineers and I have been building something really cool within Amazon Bedroc...
Monday, June 16, 2025
The Nuanced Reality of Throttling: It's Not Just About Preventing Abuse
›
If you work with multi-tenant systems you are probably familiar with the concept of throttling or admission control. The idea is pretty simp...
Saturday, March 1, 2025
The Trouble with Leader Elections (in distributed systems)
›
When working on distributed systems, it's not uncommon to need a piece of logic that executes across the entire system. Some examples of...
Wednesday, January 24, 2024
The mathematics of redundancy
›
I was at an airport during a recent business trip, watching planes take off and land when I saw the iconic Boeing 747 take off. This reminde...
Saturday, February 4, 2023
Batching: Efficiency under load
›
In this post, I wanted to make a quick observation about batching as an underused technique in distributed systems. Systems folks have long ...
›
Home
View web version