Skip to content
all episodes
Code of Architecture · episode 15

Software Architecture: The Hard Parts — Episode 6

1:07:31

Episode participants

  • Anton Kosterin

    guest

Conversation

What we discussed on the recording

The Software Architecture: The Hard Parts finale connects service contracts, analytical data, and trade-off analysis. The book supplies a language for choices: how tightly to constrain messages, where transformations should happen, and which qualities are sensitive to context.

A strict contract protects consumers but makes evolution more expensive. A loose contract preserves interpretation freedom and moves validation to the receiver. With consumer-driven contracts, each consumer declares what it needs and the provider verifies compatibility.

For analytics, the speakers compare Data Warehouses, Data Lakes, and Data Mesh. A warehouse transforms data in advance, a lake delays transformation until consumption, while a mesh returns responsibility to domains through data products, a self-service platform, and federated governance.

The final chapter offers no mechanical decision algorithm. Sensitivity points identify parameters where a small change affects quality attributes, while trade-off points expose collisions among them. Matrices make arguments visible, but they cannot replace context and engineering judgment.

Book series
Software Architecture: The Hard Parts
Neal Ford, Mark Richards, Pramod Sadalage, Zhamak Dehghani
Book playlist