Upper-Intermediate Reading #opinion #architecture #microservices

Reading Architecture Opinion Pieces

5 exercises on opinion articles arguing for and against microservices and monoliths. Identify the author’s actual stance, distinguish claims from evidence, and recognise hedging language.

Reading technical opinion pieces effectively
  • Find the thesis — look for “My position is this”, “I am arguing that” — these signal the real claim
  • Hedging language“almost always”, “in some cases”, “that said” qualify absolute-sounding claims
  • Claim vs. evidence — identify what the author asserts vs. what they offer to support it
  • Existence proofs — real-world examples that prove something is possible, countering hypothetical objections
  • Reframing — authors attack the cause attributed to a problem, not just the problem itself
0 / 5 completed
1 / 5
Passage: The Microservices Trap — Opinion Piece
Title: The Microservices Trap: Why Distributed Systems Are Not a Default

There is a quiet consensus forming in the industry that microservices — the architectural
pattern that dominated the 2010s — are frequently chosen for the wrong reasons. I want
to be careful here: I am not arguing that microservices are bad. I am arguing that they
are expensive, and that the bill comes due in ways most teams do not anticipate.

The case for microservices is legitimate. Independent deployability genuinely removes
coordination overhead when you have large teams working on well-separated domains.
Fault isolation means a memory leak in the recommendation engine does not take down
the checkout flow. These are real advantages.

But the case against default microservices is equally compelling. Every inter-service
boundary you draw is a distributed systems problem. You now need to reason about
network partitions, eventual consistency, and retry logic that simply does not exist
in a monolith. "Simple" CRUD operations that touch multiple services require distributed
transactions or sagas — both of which are significantly more complex than a database
transaction.

My position is this: the right answer depends almost entirely on team size and domain
clarity. Below roughly 20 engineers, a well-factored monolith is almost always the
correct choice. The overhead of microservices — service discovery, inter-service
authentication, distributed tracing, independent deployment pipelines — consumes
engineering capacity that a small team cannot afford to spare. You pay the microservices
tax before you receive the microservices dividend.

If you are reaching for microservices because they feel "more professional" or because
a large tech company uses them, reconsider. Netflix runs microservices with thousands
of engineers supporting the infrastructure. You do not.
Which sentence best describes the author's actual position on microservices?