Lots of folks that don’t know what I do (and some that do) will often ask what is a software architect? What is software architecture?
My short answer is that software architecture answers all the “how do I
When you look at all the “how do I” questions that come up - there are lots - but they are all architecture. This can literally be something as simple as “how do I add logging to this system?” with simple answers - we are using SLF4J on Log4J. Which can then lead into deeper questions (how do I change logging levels at runtime? how is logging started and shutdown in this system?)…up to the “standard” stuff that architects typically focus on - “how does the solution provide for scalable performance?”, etc.
But in the end, whenever I hear a “how do I” or “how does it” question - that is architecture - and a potential teaching moment. In my opinion, architects should be doing what the other team members are doing (coding/testing) in order to be effective. And really good architects teach.