重點摘要#

  • 架構師的**自我(ego)**可能是最大的敵人
  • 成功帶來自信,但自信和傲慢之間的界線很細
  • 架構是團隊的架構,不是你個人的架構
  • 從需求出發,專注於團隊合作,定期檢視自己的行為

詳細內容#

Architecture 這個單字中確實有一個小寫的 ‘i’,但沒有大寫的 ‘I’。小寫的 i 安靜地融入單字中,只為拼寫和發音而存在。這對軟體架構師有什麼啟示?我們的自我可能是我們最大的敵人。

常見的陷阱#

誰沒有遇過這樣的架構師:

  • 認為自己比客戶更了解需求
  • 將開發者視為被雇來實現自己想法的資源
  • 當自己的想法被挑戰時,變得防禦性十足或忽視他人的想法

為什麼會這樣#

  • 成功帶來傲慢:成功和經驗建立了自信,讓我們成為架構師。但自信和傲慢之間有一條細線。在某個時刻,專案的規模超過了我們個人的能力,傲慢會在我們還不知道的時候悄悄溜進來
  • 人們尊重我們:艱難的設計問題提供了關鍵的安全網。我們的防禦性、傲慢或對經驗的過度強調可能導致錯過重要的設計問題
  • 我們是人:架構師將自己傾注到每個設計中。對你創作的批評感覺像是對你個人的批評。防禦是容易的,停止防禦是困難的

如何避免#

  • 需求不會說謊:與客戶密切合作,確保你們都理解每個需求提供的商業價值。不是你驅動架構,而是需求驅動架構
  • 專注於團隊:團隊成員不僅是資源,他們是你的設計協作者和安全網。這是團隊的架構,不是你個人的。你提供指導,但每個人一起承擔重任
  • 檢查你的工作:模型不是架構,它只是你對架構應如何運作的理解。與團隊合作,透過測試來驗證架構如何支持每個需求
  • 審視自己:每天花幾分鐘反思你的互動。你是否給予每個人的想法應有的尊重?你是否對善意的意見做出負面反應?

從架構中移除大寫的 ‘I’ 並不能保證成功,但它確實消除了一個完全是你自己造成的常見失敗來源。

— By Dave Quick