Module Quiz
Complete this quiz after finishing all concept and practice pages. Save your answers before opening separate quiz calibration. Treat it closed-book on a first pass; then review.
Current Module Questions
Question 1: The Microservices Distillation
Which single property is the strongest test for whether something is a microservice, rather than just a service?
Question 2: Right-Size the Service -- Scenario A
A 6-engineer team is considering splitting their modular monolith into 10 microservices. They have manual deploys, no distributed tracing, and one on-call person rotating weekly. What is your recommendation?
Question 3: Strangler-Fig
Why does strangler-fig migration succeed where big-bang rewrites fail?
Question 4: Bounded Context = Service?
Is a bounded context the same as a microservice? Justify.
Question 5: Right-Size the Service -- Scenario B
Your colleague proposes a "Customer Service" that exposes GET/POST/PUT/DELETE /customers, a "Product Service" with the same pattern, and an "Order Service" that orchestrates both. What anti-pattern is this, and what should you propose instead?
Question 6: Database-Per-Service
A colleague suggests keeping one PostgreSQL instance but giving each service its own schema to "simplify ops." Is this OK? Why or why not?
Question 7: Contract Compatibility
Which of the following changes to an existing sync API are safe to ship without coordinating consumers? Which are breaking?
a) Add a new optional field to a response. b) Add a new required field to a request. c) Rename an existing response field. d) Add a new enum value to a response field. e) Relax a validation (accept more inputs).
Question 8: Consumer-Driven Contract Testing
Why is CDC consumer-driven rather than provider-driven?
Question 9: Sync vs Async
Convert this synchronous call chain to a more resilient design, and justify: Frontend -> Orders -> Payments -> Inventory -> Fulfillment.
Question 10: Resilience Primitives
Why is a timeout alone insufficient protection for a slow downstream?
Question 11: Right-Size the Service -- Scenario C
A team has an existing 30-service microservices architecture. Deploy frequency is lower than when they had a monolith. Three services share one database. Every API change requires coordinated deploys across 4+ services. What is their problem, and what do you recommend?
Question 12: Distributed Tracing
What specifically is needed, at each service, for distributed tracing to work end-to-end on a single request?
Question 13: Expand-Contract
Describe the expand-contract pattern for renaming a field user_id to customer_id in a response. What is the customer-visible behavior during each phase?
Question 14: Conway's Law
Your org has 3 teams and 15 microservices. What prediction does Conway's Law make about what the architecture will look like in 12 months?
Question 15: Team Topology
What is the difference between a platform team and a shared-service team, and why does it matter?
Interleaved Review Questions
Prior Module Question 1 (S7 M3, Bounded Contexts)
Why would two teams call the same entity by the same name and mean different things, and what does DDD recommend when they do?
Prior Module Question 2 (S7 M2, Architecture Patterns)
Why is a modular monolith often a better first architecture than microservices for a new product?
Prior Module Question 3 (S6, Data Layer)
Why does ACID consistency become harder across multiple services?
Prior Module Question 4 (S5, Design)
Why is high cohesion + low coupling a goal for both classes and services?
Prior Module Question 5 (S4, Systems Programming)
Why is "the network is reliable" one of the famous fallacies of distributed computing?
Self-Assessment and Remediation
Scoring and Advancement Criteria
Mastery Level (90-100% correct):
- Retrieval is strong; complete all module and semester evidence gates before advancing.
- Evidence: you can argue both for and against microservices given a concrete team and product, and walk through a full decomposition + contract + resilience sketch on demand.
Proficient Level (75-89% correct):
- Targeted review of specifically missed questions. Redo the corresponding mini drill.
- For each missed cluster, write a one-paragraph Feynman note in your own words.
Developing Level (60-74% correct):
- Rework practice pages 01 and 02 on a different industry (switch from e-commerce to SaaS or logistics).
- Re-read the three concepts most frequently missed.
- Retake the quiz one week later.
Insufficient Level (<60% correct):
- Return to Semester 7 Module 3 (Bounded Contexts) first; this module depends heavily on the DDD intuition.
- Then re-read this module's concept pages in order without skipping drills.
- Retake the quiz after a full concept+practice replay.
Remediation Resources
- Missed Cluster 1 questions: Sam Newman, When Should You Use Microservices?, and Fowler, MicroservicePremium.
- Missed Cluster 2 questions: Chris Richardson, Decompose by business capability and Decompose by subdomain.
- Missed Cluster 3 questions: Chris Richardson, Database per service and Pact Foundation, Pact docs.
- Missed Cluster 4 questions: Circuit Breaker pattern and Michael Nygard, Release It!.
- Missed Cluster 5 questions: OpenTelemetry, Traces, and Team Topologies.
Progression boundary
Quiz performance calibrates retrieval and reasoning. It does not replace runnable work, changed-case transfer, the module assessment or required semester evidence. Consult practice calibration for the additional independent cases.