如何做一個技術全面的架構師
作為領導
好的軟體架構師必須知道,他們作為領導者的作用不一定是告訴開發人員做什麼。 相反,好的架構師的行為本身就像一個指導,管理一個開發團隊向同一個技術願景前進,利用領導技能,如講故事,影響,導引衝突和建立個人的信任等方式,把他們的架構願景變成現實。
一個好的領導者,同時也是一個好的架構師,將仔細聽取每個參與者的意見,透過與團隊反饋互動微調他們的願景。 很好地引導到下一個點。
作為開發人員
在理想的目標架構與軟體系統的當前狀態之間平衡才能做出良好架構選擇。比如,如果關聯式資料庫更適合問題域,即使很無聊,如果再將文件資料庫新增到系統中也沒有意義。架構師如果不首先考慮是否適合業務問題領域,會被各種技術誘惑而進行架構選擇。
架構師減輕這一點的最好方法是花費時間與開發人員泡在程式碼中。瞭解系統如何建立,以及系統的約束,這些將為架構師提供關於當今環境的正確選擇的更多資訊。
具有系統焦點
經驗豐富的開發人員知道,程式碼只是工作軟體的一個方面。為了使程式碼執行,經驗豐富的開發人員需要理解其他重要的質量屬性,程式碼才能在其生產環境中執行良好。他們需要考慮部署過程,自動測試,效能,安全性和可支援性等方面質量屬性。 開發人員才能可以根據這些質量屬性進行編碼實施,架構師不僅專注於理解程式碼,而且需要了解並滿足不同利益相關者(如支援,安全和操作人員)的需求。
好的架構師需要專注於尋找能夠滿足這些不同利益相關者需求的解決方案,而不是根據某一個參與者的偏好或風格選擇進行最佳化的工具或方法。
像一個企業家思考
所有的技術選擇都有成本和效益,一個好的架構師將從兩個角度考慮新的技術選擇。成功的企業家會願意承擔風險,但是會尋求快速學習和快速失敗的方法。 架構師可以以類似的方式處理技術選擇,尋求現實世界中有關短期和長期成本的資訊,意識到他們的可能好處。
一個很好的例子是,當架構師避免承諾立即使用從新文章讀過的或在會議上聽說過的新工具。相反,他們應當設法瞭解該工具的相關性,並在他們的環境中執行的架構樣本以收集更多的資訊。他們不會基於多好的銷售額而選擇一個工具,,而是依據它提供了什麼價值,是否提供給他們的系統所需要的。 他們還會尋找工具的隱性成本,例如支援的工具是否足夠好(例如文件級別,社群採用情況),工具帶來多少鎖定或長期引入的額外風險。
用戰術思維平衡策略
許多團隊與各個開發人員都是傾向於選擇他們最舒適或最有經驗的工具和技術構建他們的系統。
好的架構師需要注意什麼是更新的技術,哪些工具或方法可能是有用的,但不一定立即採用他們。技術採用需要一個考慮長期前景的方法。 架構師將在團隊和組織層面尋求敏捷性(允許團隊快速移動)和調整(保持足夠的一致性)之間的良好平衡。
建立自己的技術雷達是在探索有用的工具。
良好溝通
架構師需要知道有效的溝通是建立在信任基礎上,需要在團隊外影響隊員,這些都是架構師的關鍵技能。 他們知道不同群體的人使用不同的詞彙,使用技術術語與生意或管理人士交流會變得困難。架構師不會使用模式、工具和程式設計概念與他們交流,而是使用受眾熟悉的詞語與之交流。 使用諸如風險回報,成本和收益等詞彙向商業人士傳達技術選擇,將比與開發團隊一起使用的技術詞彙更適合。
架構師也意識到團隊內部溝通和外部溝通一樣重要,可以利用圖表和小組討論,建立和完善技術願景,並使用編寫寫日誌的方式,如維基,能夠為將來提供為歷史發展軌跡。
結論
做一個全面的架構師不容易。有這麼多的元素需要我們關注,每個都利用許多開發人員往往不具備的技能。 最重要的不一定是架構師具有什麼能力,而是他們在這些不同領域有足夠的專業知識才能有效。只有熟練掌握上述六個領域之一的架構師,才會成為具有良好專業知識水平的架構師。
相關文章
- 一名架構師,他要如何做微服務技術選型?架構微服務
- 技術部如何做覆盤——“年終盤點一對一”之前端架構師前端架構
- 如何做一個合格的測試架構師架構
- 如何做好一個系統架構師:抓住敏捷架構中幾個關鍵決策點架構敏捷
- 架構師如何做出架構決策? – IasaGlobal架構
- 在阿里架構師眼中構建一個較為通用的業務技術架構就是如此簡單阿里架構
- 企業架構師、解決方案架構師和技術架構師的異同 - Briqi架構
- 後端架構師技術圖譜後端架構
- 程式設計師、技術主管和架構師程式設計師架構
- wemall全棧移動商城技術架構分享全棧架構
- 人人都是架構師-清晰架構 | 京東物流技術團隊架構
- 怎樣學習一個新的架構技術架構
- 業務架構、資訊架構、技術架構三位一體架構
- 技術棧查漏補缺——架構師架構
- 微博首席架構師楊衛華:新浪微博技術架構分析架構
- 新浪微博技術架構分析-微博首席架構師楊衛華架構
- Redux技術架構簡介(一)Redux架構
- 架構師之路:一個架構師需要掌握的知識技能架構
- 《大型網站技術架構:核心原理與案例分析》讀書筆記 - 第4篇 架構師(附 大型網站架構技術一覽)網站架構筆記
- 創業之初的技術題:如何構建一個較為通用的業務技術架構創業架構
- 技術架構師如何制定決策 – Mark Greville架構
- 技術架構師要有責任心 [網路]架構
- 如何成為一個架構師架構
- 架構師修煉之道(一)技術高手的困惑與發展架構
- WEB 架構技術Web架構
- 大型網站架構技術一覽網站架構
- 大型網站技術架構(一)--大型網站架構演化網站架構
- CTO、技術總監、首席架構師的區別架構
- 分散式領域架構師要掌握的技術分散式架構
- 淘寶招聘java開發工程師/技術專家/架構師Java工程師架構
- 網站技術架構網站架構
- 一張圖看懂大型網站技術架構網站架構
- “大話架構”阿里架構師分享的Java程式設計師需要突破的技術要點架構阿里Java程式設計師
- 大型網站技術架構(三)--架構模式網站架構模式
- 大型網站技術架構(二)--架構模式網站架構模式
- 程式設計師如何做好技術規劃?程式設計師
- 架構師日常(一)架構
- 如何做一個優秀的前端重構工程師前端工程師