Sophia Willows' Blog
https://sophiabits.com/blogMy thoughts on technology, business, and adjacent topics
Entries
-
Exponential backoff with jitter is an effective retry strategy that helps avoid thundering herds, but most implementa...
-
There’s a subtlety in building AI agents that took me an embarrassingly long time to appreciate: your tool responses ...
-
When comparing REST and GraphQL, it’s not just about payload size, flexibility, or tooling. The real distinction is i...
-
A few months ago Stripe announced their upcoming Order Intents API at Stripe Sessions. There’s a lot to like about th...
-
Networks are unreliable. Even when services are otherwise healthy transient failures like timeouts, dropped connectio...
-
I have some thoughts on the Google Cloud’s latest global outage! The incident report contains some interesting nugget...
-
Webhooks are surprisingly hard to process correctly. Almost every software project I’ve worked on has needed to proce...
-
Designing great resolver functions in GraphQL is quite unintuitive. Giving consumers the ability to describe their de...
-
I’ve written about TypeScript enums in the past, and back then I encouraged the use of enums with string values inste...
-
I typically describe my career as being the result of a lot of luck. There are so many key moments in my professional...
-
I’ve been extremely fortunate over the course of my career, and I’ve been able to learn from some truly incredible pe...
-
A common mistake in system design interviews is to underestimate a low but steady write rate. Many candidates quickly...
-
Autofilling form fields has become an increasingly common and practical application of generative AI. With just a bit...
-
One of the powerful design patterns that can be employed within a GraphQL schema is the concept of collection lookups...
-
Try as we might to design APIs that last, it is very difficult to completely avoid the need for breaking changes. The...