Pratishtha Pandey
Modularity: Let's dig deeper
#1about 3 minutes
Defining modularity and its importance in system design
Modularity is the practice of dividing a system into separate, independent parts to improve communication and decision-making during the design process.
#2about 6 minutes
The hidden complexity of large microservice landscapes
While microservices offer benefits like fast delivery, they can create a complex, tangled landscape that slows down innovation when new business requirements touch multiple services.
#3about 2 minutes
Moving from gut feeling to quantitative architectural metrics
Instead of relying on intuition, teams should measure modularity at the product and domain level using concrete metrics, similar to how code quality is measured.
#4about 3 minutes
Measuring system tangles with average component dependency
The average component dependency (ACD) metric helps quantify the overall connectedness of a system by averaging the direct and indirect dependencies for each microservice.
#5about 3 minutes
Calculating propagation cost to measure change impact
Propagation cost (PC) is a key metric that measures the ripple effect of a change in one component across the entire system, directly impacting innovation speed.
#6about 2 minutes
Using lack of cohesion metrics for service grouping
The lack of cohesion metric helps determine if a group of microservices truly belongs together by analyzing shared concerns, such as data access patterns.
#7about 3 minutes
Applying coupling factor and other metrics in practice
By calculating the coupling factor and tracking metrics on a dashboard, teams can monitor trends and make informed decisions about system architecture and team structure.
#8about 2 minutes
Considering the modular monolith for easier refactoring
The modular monolith pattern offers a middle ground by enforcing strong boundaries between modules while keeping them in a single deployable unit, simplifying refactoring.
#9about 2 minutes
Key takeaways for adopting a modularity mindset
Adopting modularity requires a mindset change that extends beyond engineering to business decisions, experimentation with metrics, and sharing learnings with the community.
#10about 1 minute
Tools for tracking dependencies in large-scale systems
To count direct and indirect connections in complex systems, tools like Istio for service mesh data and distributed tracing can be used to automate dependency discovery.
Related jobs
Jobs that call for the skills explored in this talk.
Matching moments
36:33 MIN
Focusing on modularity over architectural labels
Monoliths: A love story
10:28 MIN
Contrasting modulith and microservice architectures
Modulith Instead of Monolith - Pragmatically Towards Microservices
23:08 MIN
Conclusion: Focus on fundamentals beyond the hype
Microservices? Monoliths? An Annoying Discussion!
08:17 MIN
Introducing the modular monolith as a practical alternative
Stairway to Heaven - Scaling Frontends the Right Way
03:44 MIN
Why modern microservice architectures are harder to observe
Hands on with OpenTelemetry
08:31 MIN
Why microservices fail without proper modularity
It’s all about the domain, honey ! Experiences from 15 years of Domain-Driven Design
05:58 MIN
The real problem is poor modularization, not architecture choice
Microservices? Monoliths? An Annoying Discussion!
02:52 MIN
Why microservices often become a distributed monolith
CQRS and Event Sourcing without the pixie dust
Featured Partners
Related Videos
Modulith Instead of Monolith - Pragmatically Towards Microservices
Hendrik Lösch
Microservices? Monoliths? An Annoying Discussion!
Eberhard Wolff
It’s all about the domain, honey ! Experiences from 15 years of Domain-Driven Design
Carola Lilienthal
Modern software architectures
David Tielke
Resolving technical debts in software architecture
Carola Lilienthal
Beyond micro-services, embrace composable architecture !
Loïc Carbonne
The Rise of Reactive Microservices
David Leitner
Intentional Code - Minimalism in a World of Dogmatic Design
David Whitney
Related Articles
View all articles.gif?w=240&auto=compress,format)



From learning to earning
Jobs that call for the skills explored in this talk.

Senior Software Architect - Scalable Microservices & Security
team
Barcelona, Spain
Senior
Microservices


Solution Architect (self-healing Micro-Frontend)
Westhouse Consulting GmbH
Intermediate
React
DevOps
Spring
Kotlin
Grafana
+6

Software Engineer Microservices
Vanderlande Industries GmbH
Dortmund, Germany
€57-68K
Intermediate
API
GIT
Java
JIRA
+11

Domain Architect Ricardo Platform (f/m/d) | 80-100% | Hybrid working model | Valbonne France
SMG Swiss Marketplace Group
Canton de Valbonne, France
Senior


Domain Architect Ricardo Platform (f/m/d) | 80-100% | Hybrid working model | Zürich Switzerland
SMG Swiss Marketplace Group
Sachseln, Switzerland
Senior
![Senior Software Engineer [TypeScript] (Prisma Postgres)](https://wearedevelopers.imgix.net/company/283ba9dbbab3649de02b9b49e6284fd9/cover/oKWz2s90Z218LE8pFthP.png?w=400&ar=3.55&fit=crop&crop=entropy&auto=compress,format)
Senior Software Engineer [TypeScript] (Prisma Postgres)
Prisma
Remote
Senior
Node.js
TypeScript
PostgreSQL

DevOps Engineer – Kubernetes & Cloud (m/w/d)
epostbox epb GmbH
Berlin, Germany
Intermediate
Senior
DevOps
Kubernetes
Cloud (AWS/Google/Azure)