Making sense of monolith structure and modularity - C#