Serverless humans
In a traditional system, every human needs a house (a server) — even when they're asleep. You pay rent, fix the roof, change the locks. Serverless changes that: the world (AWS) provides housing, food and air, and humans appear only when there's work to do.
The traditional way: humans who live in houses
Running software on your own servers or virtual machines is like each employee living in a house you own:
- You pay rent 24/7, even at 3 a.m. when nobody is working.
- You maintain the house — patching the operating system, replacing broken parts.
- You must guess how many houses you'll need for the busiest day.
The serverless way: humans on demand
With serverless:
- A human (a function or container) wakes up when a request or event arrives, does the work, and goes back to sleep.
- If a thousand customers arrive at once, a thousand copies appear — automatically.
- You pay only for the time they spend working, measured in milliseconds.
- AWS handles the housing: servers, operating systems, patching, scaling and availability across data centres.
| Servers / VMs | Serverless | |
|---|---|---|
| Who manages machines | You | AWS |
| Scaling | You plan and configure it | Automatic |
| Idle cost | You pay for idle capacity | Near zero when idle |
| Unit of work | Long-running process | Short tasks triggered by events (or managed containers) |
| Typical AWS services | EC2 | Lambda, Fargate, API Gateway, DynamoDB, SQS, EventBridge, Step Functions |
The serverless toolkit (the "world" AWS provides)
| Need | Serverless service | In our analogy |
|---|---|---|
| Run code on demand | AWS Lambda | A human who appears to do one task |
| Run longer processes without servers | AWS Fargate | A human who works a full shift, without needing a house |
| Front door for requests | Amazon API Gateway | Reception desk |
| Memory | Amazon DynamoDB, Amazon S3 | A personal notebook, a filing cabinet |
| Letters | Amazon SQS | Post office box |
| Announcements | Amazon SNS | Loudspeaker |
| Notice board | Amazon EventBridge | Town square board |
| Project manager | AWS Step Functions | Someone who coordinates a multi-step job |
| Guest list and ID checks | Amazon Cognito | Door security for app users |
| Medical monitoring | Amazon CloudWatch, AWS X-Ray | Heart monitors and medical records |
The quirks of serverless humans
Every lifestyle has trade-offs. Serverless humans:
- Wake up slightly slowly the first time — a cold start adds a short delay when a new copy starts. For most apps it's barely noticeable; for very latency-sensitive ones there are fixes (see the rat race).
- Have short attention spans — a Lambda function runs for at most 15 minutes per task. Long jobs need a manager (Step Functions) or a shift worker (Fargate).
- Forget everything between tasks — they're stateless. Anything worth remembering goes into memory (a database) — which is good design anyway.
- Have limits — AWS sets quotas (like how many can work at once), which you can raise when needed.
Serverless doesn't mean "no servers" — it means someone else runs them. You focus on what each human does, not where they sleep.
Why serverless fits microservices so well
Microservices want independent humans that scale on their own and cost little when quiet. Serverless gives exactly that: each service can be a few functions, a table and a queue — deployed independently, scaling independently, billed independently. That's why this handbook builds every human serverlessly.