The cardinal sin of software architecture

I’ve been conducting a lot of software architecture interviews this year, and I have found that many, perhaps most, candidates fall into the same trap: too much complexity . That is, they know how to stick software together, but when faced with a problem in their design, they intuitively think: “I know, I’ll add another component”. When this new component is extra computation (for example, another…