Chapter Template
Every module README.md follows this exact structure. Consistency matters more than per-chapter
flourish — a reader should be able to jump to "§9 Common mistakes" in any module without hunting.
Sections marked (omit if N/A) may be dropped when genuinely irrelevant; everything else is mandatory.
# NN — <Title>
> <Difficulty emoji> <Difficulty> · **Reading time:** ~N min · **Prerequisites:** [Module X](../X/), [Module Y](../Y/)
<One-paragraph statement of what this chapter is about, in plain English.>
---
## 1. What you will learn
- Bulleted, concrete, testable objectives.
- "You will be able to X" — not "we will discuss X".
## 2. Why this concept exists
Start with the **engineering problem**, before the AWS feature.
What breaks without it? Show the broken system first.
## 3. Beginner explanation
Plain language. Assume the reader has never met the concept.
Analogy allowed here — but it must be immediately followed by §4.
## 4. How it actually works
The real AWS behaviour. Precise terminology. No hand-waving.
This is where the analogy gets cashed out into mechanism.
## 5. Diagram
One or more Mermaid diagrams — **always followed by prose explaining the diagram.**
A diagram that isn't explained does not count.
## 6. Step-by-step flow
Numbered walkthrough of exactly what happens, in order, naming the component acting at each step.
## 7. Configuration
The knobs, their ranges and defaults. **Link to [`_reference/aws-facts.md`](../_reference/aws-facts.md)
rather than restating numbers.**
## 8. Production considerations
What goes wrong at scale, under failure, during deploys.
🔴 **Level 3 depth** — this is the section that separates this course from a tutorial.
## 9. Common mistakes
Each as: **Mistake → why it's wrong → what to do instead.**
## 10. Real-world example
A concrete corporate scenario with realistic numbers.
## 11. Interview questions
### 🟢 Beginner
### 🟡 Intermediate
### 🔴 Advanced
### ⚫ System design
Advanced and system-design questions get **reasoning**, not one-line answers.
## 12. Summary
Compact bullets. Should be re-readable in 60 seconds.
---
**Next:** [NN+1 — <Title>](../NN+1-.../)Cross-cutting authoring rules
Terminology rule
The first time an AWS term appears anywhere in the course:
Term — Simple: one sentence a beginner understands. Technical: the precise behaviour. Example: a concrete instance.
Defined once, in its owning module. Later modules link, never redefine.
Depth rule
For hard topics, explicitly mark the three levels:
- 🟢 Level 1 — What is it?
- 🟡 Level 2 — How does it work?
- 🔴 Level 3 — What goes wrong and how do I design around it?
The "Why?" rule
Whenever a beginner could reasonably ask "but why?", answer it inline in a callout:
Why? …
Mandatory for at least: why deletion is explicit, why visibility timeout exists, why duplicates
happen, why metrics are "Approximate", why FIFO needs MessageGroupId, why more consumers stops
helping, why a queue can grow while consumers look healthy.
Numbers rule
All quotas, limits and pricing live in _reference/aws-facts.md. Chapters link to it.
Never hard-code a limit in chapter prose.
Code rule
- Java 21+, AWS SDK for Java 2.x.
- Spring Boot chapters use a currently supported version, and must state clearly which behaviour is SQS and which is Spring.
- Never credentials in source. Show
DefaultCredentialsProvider, profiles, env vars, IAM roles. - Explain the important lines; skip the boilerplate.
Diagram rule
Mermaid only. Simple beats clever. Every diagram gets explanatory prose. Verify diagrams render before marking a chapter done.
Callout boxes
📌 Remember this — the one thing to retain.
⚠️ Common mistake — the trap.
🎯 Interview point — what an interviewer is listening for.
Why? — the pedagogical answer.