I often have the discussion about the 𝒓𝒐𝒍𝒆 of the software architect in product teams.
🔹 Is there one person 𝒕𝒉𝒆 software architect?
🔹 Is the software architect role 𝒅𝒊𝒔𝒕𝒓𝒊𝒃𝒖𝒕𝒆𝒅 across the team?
🔹 How do you make architecture and technology decisions?
🔹 Who is responsible for software architecture decisions?
Based on these questions, I have tried to summarize four different types of roles that can determine the work of software architecture in a product team 👇🏼
The Benovelent Dictator
"Architect decides, Team executes" (Source)
The Architecture Owner
"Architect as just-another Dev-Team Member"
"Divide the role of the architect on the specific know-how"
"Independent and collaborative coordination in all architectural decisions."
Which of these do you implement in your product team❓
Which do you prefer❓
By the way, in coming up with these role descriptions, I was heavily influenced by the following great blog posts and books 🙏🏻: