Solutions Architect Associate Hands-On Labs
A build-it-yourself lab track for the Solutions Architect - Associate (SAA-C03) material in The Exam Room. The Associate paper rewards knowing what a service actually does when you wire it up, which is hard to fake and easy to build. Each lab gives you a working base (CloudFormation plus a couple of scripts) and asks you to build the piece that carries the decision. You deploy real AWS resources, prove the behaviour, and tear them down.
The idea: scaffolding that fades
Same shape as the other tracks. Early labs are almost finished and you fill one
clearly-marked gap; later labs hand you less. Every lab ships a solution/ you
can deploy at any point (SRC=solution), so you are never stuck.
| Scaffold | What you’re given | What you do |
|---|---|---|
| 5/5 | Everything but one value or resource | Fill the gap, deploy, prove it |
| 3/5 | Infra, no wiring | Connect the pieces |
| 1/5 | A requirement and a skeleton | Design and build most of it |
| 0/5 | A requirement | Build it from scratch |
Before your first lab
Do the one-time, once-per-account setup: run preflight.sh (it ships in every
lab zip) to confirm your account is ready, then deploy the
lab reaper once. The reaper
auto-deletes any lab you forget to tear down after 24 hours, so a forgotten stack
becomes a deleted stack instead of a running bill. Every lab’s deploy.sh tags
its stack for the reaper automatically.
The arc
The track walks the four SAA-C03 domains, numbered in publication order, so labs 02 and 03 share a day: the fleet in the morning, the failover that evening. It grows over time; the table marks what is built and what is on the bench.
Labs 03, 04 and 05 are syntax-checked but have not been deployed against a real AWS account end to end. Neither have 01 and 02. Treat a first run as the shakedown.
| # | Lab | Domain | Scaffold | Status |
|---|---|---|---|---|
| 01 | Rotate a secret without restarting the application | D1 Secure architectures | 4/5 | built |
| 02 | Bake an image and replace a fleet without logging in | D2 Resilient architectures | 4/5 | built |
| 03 | Fail a database over and time the gap | D2 Resilient architectures | 4/5 | built |
| 04 | Land a stream in S3 as Parquet | D3 High-performing architectures | 4/5 | built |
| 05 | Move ten thousand objects down a lifecycle ladder | D4 Cost-optimized architectures | 4/5 | built |
| # | Lab | Walk-through | Download |
|---|---|---|---|
| 01 | Rotate a secret without restarting the application | Lab: Rotate a Secret Without Restarting the Application | zip |
| 02 | Bake an image and replace a fleet without logging in | Lab: Bake an Image and Replace a Fleet Without Logging In | zip |
| 03 | Fail a database over and time the gap | Lab: Fail a Database Over and Time the Gap | zip |
| 04 | Land a stream in S3 as Parquet | Lab: Land a Stream in S3 as Parquet | zip |
| 05 | Move ten thousand objects down a lifecycle ladder | Lab: Move Ten Thousand Objects Down a Lifecycle Ladder | zip |
The zips are built by scripts/build-lab-zips (also make lab-zips) into
zips/labs/ and committed, so they publish with the site. Re-run it whenever a
lab changes.