Member-only story

What it takes to become a software architect

Alan Tai
10 min readJul 18, 2022

--

Ho Chi Minh city, Zuhlke’s 3rd office location in Asia

I had many conversations with software engineers in various domains and disciplines during the past 20 years of my career as a software engineer and software architect. Some of them were senior engineers having 8 or 10 years of experience. Many of them were early in their career having 3 to 5 years of experience. Some of them were my colleagues. Some were job candidates. At some point, they all ended up with the same question that I heard over and over again:

“I want to become a solution architect. What are the resources to learn more about architecture?” — A question asked by many Software Engineers.

Well, they were asking the wrong question. You will know why if you read on. Also, since my company is hiring Lead Software Architects as of this writing, it is worth explaining what a Software Architect is and how to become one.

What is Software Architecture?

What is software architecture in the first place? As the Software Architect title implies, a common analogy that I often hear is the construction of a building. The building architect creates the blueprint of the building. The engineers build it physically and make it work according to the blueprint. I would argue that this is a poor analogy in multiple ways.

The building analogy makes people focus too much on the static aspects of the system. The creation of a city is a better analogy in this regard since it involves both static elements like roads, buildings and bridges, and dynamic elements like traffic flows and people living in the city. The architect is the person who comes up with the design of the city, the plan of how it should be built, and how everything is going to fit together. Last but not least, the architect has a vision of how the city would evolve. But software architecture is more than that. Sometimes the architect needs to zoom in and out of the city making sure that the plan would work. The architect probably won’t care much about the interior design of a building while it is important to decide where to put a traffic light. An architect would need broad and, at the same time, deep technical knowledge to build software that is often as complex as a city. The architect would also need to communicate a consistent message to the business stakeholders…

--

--

Alan Tai
Alan Tai

No responses yet

Write a response