Final Capstone: Build, Understand & Explain a Complete Software System

Problem First. Name Later.

Reasoning Checkpoint

A design challenge, worked through in writing — no auto-grading, just a real attempt.

2–4 hours

The Challenge

Monday morning: five new freshers sit in BlueTicket's meeting room. They look exactly as lost as Anna did on her first day. John hands her the whiteboard marker.

She draws BlueTicket, layer by layer: user → browser → DNS → internet → load balancer → backend → cache and database → response → browser → user. And for every layer, she answers the same five questions: What is it? Why is it needed? How does it work? What problem does it solve? What happens if it fails?

At the end, one fresher raises a hand: "How did you learn all this?" Anna smiles. "Problem first. Name later."

Your final capstone: do exactly what Anna did — for a small application of your own (ideally the project you built in Act 27).

What Your Capstone Needs

  • Draw the complete request journey for one real action in your application (for example, "join the waitlist"): user, browser, DNS, internet, load balancer or platform, backend, cache (if you have one), database, response, browser, user.
  • For every layer, answer the five questions: What is it? Why is it needed? How does it work? What problem does it solve? What happens if it fails?
  • Draw the stack underneath your backend: application → runtime → operating system → hardware (or cloud server) → network.
  • Add the practices around the journey: how your code is versioned, tested, built, deployed, monitored and secured.
  • Mark at least three places where your application could fail, and how you'd notice and recover.
  • Explain it out loud, in under ten minutes, to someone who isn't a developer — and note the questions they ask.
Stuck? A Few Hints
  • Use Act 26's journey as a template — but describe your own application, not BlueTicket.
  • If you can't answer one of the five questions for a layer, go back to the Act that taught it.
  • Explaining to a non-developer is the real test: if they follow it, you understand it.

Before You Move On

A year ago, Anna didn't know what a server was. If you can stand at a whiteboard and explain your own application — every layer, five questions each, what fails and how you'd know — you've done what this course set out to do. Everything from here is going deeper. Problem first. Name later.