
DynamoDB Streams is not an outbox
A stream handler isn't an outbox. The transactional outbox pattern is the natural way to solve the dual write problem, but it can be trickier than you think to implement correctly.

Author profile
AWS Serverless Hero • Father • Tech Blogger • Podcast Host • Poultry Rancher
Browse the latest writing surfaced through DevArt.

A stream handler isn't an outbox. The transactional outbox pattern is the natural way to solve the dual write problem, but it can be trickier than you think to implement correctly.

Turn deferred event delivery into an EventBridge primitive so any app can schedule work without managing EventBridge Scheduler itself.

Before you build the pricing page, ask yourself whether your project really needs users.

AI agents often run with more access than they should. Here's how moving to session-based identity changed how I design and trust autonomous systems.

Serving images from S3 worked for years, until it didn't. Here's how I moved image optimization out of my workflow and made performance the default.

The real cost of swapping infrastructure isn't performance or price - it's code. A look at how teams reduce risk by keeping client contracts intact.

Engineering wins look dramatic from the outside. From the inside, they're months of small, unglamorous changes - the kind nobody celebrates until they compound into something that looks impossible.

Adding or removing cache nodes to a cluster has always been a roll of the dice. But recent improvements in Valkey 9 make it safer than ever.

Valkey 9.0 introduces numbered databases in cluster mode - a subtle change that simplifies multi-tenant design, data isolation, and atomic data updates.

I make it no secret that I think APIs will literally shape the future of tech. APIs give us access to...

I recently took Neon out for a spin. Get a look at what it's all about after my first trial run.

In a world where AI-generated content is taking over, it's never been more important to let your personality shine ✨

Cron jobs let you set recurring events down to 1-minute intervals. But what if you need more?

I recently put Postman's AI companion to the test, let's talk about what I learned.

Find those around you who push you out of your comfort zone and stick with you every step of the way.

Learn how I automated the creation of redirect links and click-tracking to highlight content creators without any extra work

Learn how to send a message directly to Slack when you publish to a topic.

The world has gone async, but is that enough to build delightful apps? In most cases, it is not.

Every year I write some software to creatively distribute presents to my brother. I might have gone too far this year.

Instead of the usual "this is what came out of re:Invent" post, let me share some big realizations from the conference.

You can go from thought to functional API in as little as 15 seconds.

I'm a lazy person. Beyond being lazy, I'm also forgetful. That's a killer combo when it comes to...

Did you know real-time notifications were more than just WebSockets? You have plenty of options based on your use case.

How often do you generative AI to write your code? What about writing your tests? You might be doing it backwards.

It's time we stop the old code-first or spec-first debate.

Is your API defined with an Open API Spec? Good news! You can turn that into an event-driven engine in your CI pipeline.

Get instant access to a low-latency, auto-scaling web server directly from your browser.

Auth is hard enough as it is. Be sure you understand the difference between two primary modes of authentication: API keys and tokens.

Earlier this year I released an AI-powered fitness app focused on creating tailored workouts using...

Get your audience engaged with emoji reactions in real-time!
Advertisement