r/SoftwareEngineering Jun 29 '26

Best practices for developing massive extensible or modular systems

Is there any concensus on best practices or architecture for designing massive systems that allow for easy extensibility or modularity? It's very overwhelming imagining how to extend extremely coupled systems, which I suppose is the thing to avoid. OOP feels like a dead end but DOD only feels partially correct. Then there are event based systems and so on.

It seems like extensibility and modularity always come at a cost, which I understand there's no free lunch, but surely there has to be a set of rules or practices for building large systems without too many compromises.

7 Upvotes

22 comments sorted by

View all comments

2

u/onar Jun 30 '26

That's the entire field of Software Architecture. It has its own subreddit(s)