Serverless on AWS — Production-Ready Guides
Start Here
If you're new to serverless on AWS (or new to doing it well), start with these three. They go from zero to a working system you could actually ship.
Building a Serverless Event Pipeline — S3 to Step Functions — The full walkthrough: 140 resources deployed in 455 seconds using CDK. EventBridge, Lambda (ARM64), DynamoDB single-table design, dead-letter queues, the works. This is the post that kicked off InfraTales, and it's still the one people share the most.
Serverless Payment Webhooks — Stripe to DynamoDB — Real money, real stakes. How to handle Stripe webhooks with Lambda without losing events or double-charging customers. Idempotency, retry logic, and the failure modes that'll ruin your weekend if you don't plan for them.
SQS vs EventBridge: When to Use What — Everyone has an opinion on this. Here's mine, backed by actual latency numbers and cost comparisons. Short version: EventBridge is almost always the right default. Long version: read the post.
Deep Dives
Once you've got the basics down, these go deeper into the patterns that separate "it works in staging" from "it works at 3 AM on Black Friday."
Step Functions Orchestration Patterns for Real Workloads — Express vs Standard workflows, error handling that actually recovers, and the map state pattern that saved me from writing a custom orchestrator. Includes the state machine I copy into every new project.
Lambda Cold Starts — What Actually Moves the Needle — I benchmarked provisioned concurrency, SnapStart, ARM64, smaller packages, and lazy initialization. Some of it matters. Most of it doesn't. Here are the numbers.
Event-Driven Architecture on AWS: The Honest Version — The good: loose coupling, independent scaling, clean boundaries. The bad: debugging distributed systems is genuinely hard. The ugly: eventual consistency will break your brain at least once. I cover all three.
DynamoDB Single-Table Design Without Losing Your Mind — Single-table design is powerful and also kind of terrible to learn from blog posts. This one uses the actual data model from the event pipeline project, with real access patterns, GSI choices, and the migration I had to do when I got the partition key wrong the first time.
Serverless Observability — CloudWatch, X-Ray, and What's Missing — You can't debug what you can't see. Here's my setup for tracing requests across Lambda, Step Functions, SQS, and DynamoDB — plus why I added structured logging even though "CloudWatch Insights is fine." (It's fine until it isn't.)
From Monolith to Serverless: A Migration Timeline — Not a theory piece. This is the actual timeline from a project that moved a Node.js Express API to Lambda + API Gateway. What took 2 weeks, what took 2 months, and what we gave up on entirely.
What We're Building Next
I'm working on a comprehensive guide to multi-tenant serverless architecture — the kind where you need per-tenant isolation, usage tracking, and cost attribution. It's the problem nobody talks about until they're three months into a SaaS build. Should be live within the next few weeks.
Get These Guides in Your Inbox
Every week: one AWS failure broken down + the fix that worked. No fluff, no "10 tips" listicles. Just real infrastructure problems and real solutions.
More from InfraTales:
- Cost Optimization Hub — Stop overpaying. Real savings with real numbers.
- Security Hub — Zero trust, IAM, and DevSecOps that actually ships.