問答:淺談架構師的職責

640?wx_fmt=jpeg

前兩天在後臺看到一名讀者的留言,問我“架構師的職責是什麼?”,那我今天就按照我個人的經歷或者自己工作的思路回覆一下。

       首先,架構師是技術團隊發展到一定階段或者系統複雜度逐步加深,需要有專人來承擔架構這項任務,並不是只有架構師纔開始做架構,或者只有架構師才能做架構。

對於一個軟件項目而言,架構師需要產出架構設計文檔和架構開發文檔,架構設計文檔用於讓技術團隊理解該業務項目的架構。而架構開發的文檔則用於給開發團隊提供開發的過程指導,比如如何基於當前架構,開發功能模塊,有哪些API對外暴露,數據庫表結構設計等、正確的實踐路線,團隊要遵守哪些規範等。

當然,有時架構設計文檔和開發文檔合二爲一的,放在一個文檔中完成。

所以一位合格的架構師一定是要具備代碼實現能力+架構思維+業務理解,絕非是傳說中的“PPT工程師”。

如果開發團隊中缺乏TechLead或者主程,架構師還需要幫助團隊搭腳手架和示例項目,也就是要搭建一個最基礎的可運行項目,通過這個項目,大家可以直觀的理解架構是怎麼落地的,通過示例項目,可以知道如何基於框架開發,後面就也可以照葫蘆畫瓢照着實現。

接下來,在開發過程中,架構師需要答疑、解決架構中存在的問題,對架構做優化,包括做代碼審查,對於不符合架構規範要指出和修正。

簡單來說,架構師在整個開發週期中,雖然不是寫代碼的主力,但是要時刻跟蹤項目的開發狀態。

如果當前沒有開發中的項目,那麼架構師該幹嘛?

這個時候,架構師最重要的就是利用這段空檔期,做好Bug分析和公共代碼檢查,以發現當前代碼的軟肋,發現還有哪些代碼還有bad smell,爲下一次重構做準備。

最後,我一直的觀點,架構師需要避免系統動大手術,避免推翻重做,而是要早發現早治療,儘量做小手術,分階段的實施。

描二維碼或手動搜索微信公衆號【架構棧】:ForestNotes

歡迎轉載,帶上以下二維碼即可

              640?wx_fmt=jpeg

點擊閱讀原文”,所有【架構棧】近期的架構文章彙總

↓↓↓

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章