
Three Responsibilities of a Global Application (Part 2)
In Part 1 , I explained that at a global scale, trust is part of the architecture. Not trust as a feeling, but trust as something the system must enforce and prove. In this article, I aim to explain the 3 distinct responsibilities that enable the system to grow organically. Why global systems feel complex Most complexity in global systems does notcome from services. It comes from mixing concerns . I have seen this pattern many times: CloudWatch dashboards are used to answer audit questions CloudTrail logs are pulled into debugging workflows Metrics start carrying tenant identifiers just to be safe None of the above are wrong in isolation, but when they are together, they create systems that are: Hard to operate Hard to explain Hard to defend The problem is the system is trying to answer too many different questions at once. In short, it is the same pattern that applies to code Single Responsibility. My job brought me to a point where I stopped thinking in terms of architectures and sta
Continue reading on Dev.to
Opens in a new tab


