Skip to content
Neha Kumari
Go back

Serverless, and the smallest real thing I could picture building

For a long time “serverless” was a word I nodded at in meetings without really holding anything behind it. It sounds like there are no servers, which can’t be right, because something has to run the code. So I left it vague, the way you do with words that feel like they’d take an afternoon to unpack.

It did take an afternoon. Here’s the version I wish someone had given me.

What “serverless” actually means

There are still servers. You just never touch them. You don’t pick a machine size, you don’t patch the operating system, you don’t keep anything running and waiting. You hand AWS your code, and it runs that code only when something calls it, then goes quiet again.

Two things follow from that, and they’re the whole appeal:

Plain version: you stop renting a kitchen that’s always on, and start paying per dish, cooked only when someone orders.

The smallest real thing I could picture

Abstract definitions never stick for me, so I went looking for the smallest complete thing you could actually build serverless. A contact form turned out to be perfect: someone fills it in, you save the message. Tiny, but it touches every piece.

A small serverless setup: the browser loads a static page from S3, then sends an API request to API Gateway, which invokes a Lambda function, which reads and writes to a DynamoDB table.
Four small pieces, each only doing work when something asks it to.

Walking it left to right:

That’s the whole thing. Nothing is “on” between visitors. The first form submission of the day spins Lambda up from cold; the rest reuse it; overnight it all costs essentially nothing.

What clicked for me

The shift wasn’t the individual services, it was realizing the shape of a serverless app is just “a front door, a small function, and somewhere to put the data,” with no machine humming underneath holding it all together. Once I saw that shape, half the architectures I’d been nodding at in discovery suddenly had a skeleton I could trace.

It also reframed cost in a way my sales brain liked. For a small or bursty workload, serverless is often the honest answer: the customer pays for usage, not for a server sitting idle most of the day. That’s a real thing to be able to say in a conversation, not just a buzzword to drop.

Quick reference, for future me

PieceWhat it doesPlain version
S3Stores the static page filesA folder the browser downloads from
API GatewayReceives the form requestThe front desk
LambdaRuns the logic on demandA cook who only shows up per order
DynamoDBStores the submitted messagesThe notebook it all gets written into

Same honest caveat as always: I’ve traced this end to end and stood up the small pieces, but I haven’t run a real one in front of users yet. The picture in my head just got a lot more specific, though, and that’s exactly the direction I want it moving.


Share this post:

Previous Post
What a good proof-of-concept actually proves
Next Post
How the pieces talk: APIs, queues, and events in AWS