Microservices come with many drawbacks. Two that I’ve noticed in practice:

  • Deploying microservices is hard. The operational complexity of running and coordinating many services is significant. Each service needs its own deployment pipeline, observability and rollback story.
  • Dependencies and environment requirements tend to diverge. Each team picks its own libraries, language versions and runtime images. Over time the fleet drifts and shared platform work becomes painful.

This note was migrated from a stub. Expand each point when revisiting.