Healthy Software at Scale: Blueprints for Adaptable Architecture

architecture   microservices   devops   team topologies   fast flow   generative AI   developer experience  

Contact me for information about consulting and training at your company.

The MEAP for Microservices Patterns 2nd edition is now available


Recently I joined Lukas Egger on SAP Signavio’s Process Transformers podcast to talk about what makes software adaptable in a world that’s only getting faster and more chaotic.

Here’s a brief summary of some key points we discussed.


Architecture is about change

Good architecture isn’t just about runtime qualities like scalability or availability.
It also shapes how easy it is to change software tomorrow based on what we build today.

Software must satisfy two constituencies: its users and its developers. The architectural decisions developers make today determine how quickly teams can learn and adapt in the future.


Feedback loops drive adaptability

Modern business operates in a volatile, uncertain, complex, and ambiguous world.
To survive, organizations need fast feedback loops—from idea to production to learning.

Architecture either accelerates or throttles those loops.
Shorter loops mean faster learning and faster adaptation.


Loose design-time coupling

A central idea is loose design-time coupling — first articulated by David Parnas in the 1970s.
When a change can be made within one team, without coordination meetings across many teams, flow improves dramatically.

Tight coupling across teams leads to endless alignment meetings and slows everything down.


The success triangle

Delivering software rapidly, reliably, and pleasantly—what I call fast flow — depends on requires the success triangle, which consists of three elements:

  1. Process: adopt DevOps principles and practices (as in The DevOps Handbook).
  2. Organization: structure around Team Topologies—loosely coupled, autonomous teams.
  3. Architecture: design systems that support both of the above.

Monoliths vs. microservices

A good monolith can outperform a bad microservice design.

A monolith is a single deployable unit with one deployment pipeline.
A microservice architecture decomposes functionality into independently deployable services, each with its own pipeline.

The key distinction isn’t fashion — it’s team autonomy and feedback-loop scalability.
A single pipeline works well for a few teams, but eventually becomes a bottleneck.
Microservices—with many pipelines—scale feedback loops as the organization grows.


Measuring flow

To know whether you’re on the right track, start with DORA metrics:

  • Lead time – from commit to production (aim for hours, not months).
  • Deployment frequency – how often each developer deploys (ideally daily).
  • Change failure rate – how often a change causes issues (should be low).
  • Mean time to recovery – how fast you can fix production problems.

Track developer experience metrics too: cognitive load, feedback speed, and ease of deployment all matter.


Deploy continuously, release when ready

Separate deployment (pushing code to production) from release (making it visible).
Use feature flags to deploy safely and release on your own schedule.

Amazon reportedly deploys every 0.6 seconds—proof that continuous deployment and stability can coexist.


AI won’t replace developers—it amplifies disciplined ones

AI can boost productivity but only under human supervision and architectural discipline.
Without strong fundamentals—TDD, clean design, and feedback loops—it simply produces a pile of technical debt.

AI coding is another reminder that good architecture and disciplined software development still matter.


Final thought

The world will keep getting crazier.
The best way to keep up is to build architectures, teams, and processes that shorten feedback loops—from code to customer and back again.

That’s the blueprint for healthy software at scale.


Based on my conversation with Lukas Egger on the Process Transformers podcast, Episode 31.


architecture   microservices   devops   team topologies   fast flow   generative AI   developer experience  


Copyright © 2025 Chris Richardson • All rights reserved • Supported by Kong.

About www.prc.education

www.prc.education is brought to you by Chris Richardson. Experienced software architect, author of POJOs in Action, the creator of the original CloudFoundry.com, and the author of Microservices patterns.

Microservices Patterns, 2nd edition

I am very excited to announce that the MEAP for the second edition of my book, Microservices Patterns is now available!

Learn more

ASK CHRIS

?

Got a question about microservices?

Fill in this form. If I can, I'll write a blog post that answers your question.

NEED HELP?

I help organizations improve agility and competitiveness through better software architecture.

Learn more about my consulting engagements, and training workshops.

LEARN about microservices

Chris offers numerous other resources for learning the microservice architecture.

Get the book: Microservices Patterns

Read Chris Richardson's book:

Example microservices applications

Want to see an example? Check out Chris Richardson's example applications. See code

Virtual bootcamp: Distributed data patterns in a microservice architecture

My virtual bootcamp, distributed data patterns in a microservice architecture, is now open for enrollment!

It covers the key distributed data management patterns including Saga, API Composition, and CQRS.

It consists of video lectures, code labs, and a weekly ask-me-anything video conference repeated in multiple timezones.

The regular price is $395/person but use coupon OFFEFKCW to sign up for $95 (valid until Sept 30th, 2025). There are deeper discounts for buying multiple seats.

Learn more

Learn how to create a service template and microservice chassis

Take a look at my Manning LiveProject that teaches you how to develop a service template and microservice chassis.

Signup for the newsletter


BUILD microservices

Ready to start using the microservice architecture?

Consulting services

Engage Chris to create a microservices adoption roadmap and help you define your microservice architecture,


The Eventuate platform

Use the Eventuate.io platform to tackle distributed data management challenges in your microservices architecture.

Eventuate is Chris's latest startup. It makes it easy to use the Saga pattern to manage transactions and the CQRS pattern to implement queries.


Join the microservices google group