大型網站技術架構,架構師領導藝術

架構師的工做:架構設計,軟件開發,架構

其餘一些管理職能:規劃產品路線、估算人力資源和時間資源、安排人員職責分工,肯定計劃里程碑點、指導工程師工做、過程風險評估與控制。框架

 

這些管理事務須要對產品技術架構、功能模塊劃分、技術風險都熟悉的架構師參與或直接負責。測試

 

在軟件開發過程當中,架構師除了實現技術架構,完成產品技術實現外,還須要和項目組內外各類角色溝通協調,能夠說架構師至關多的時間用在和人打交道上。處理好人的關係對架構和項目的成功相當重要。優化

 

架構師做爲項目組最資深的專業技術人員,是項目組開發測試工程師的前輩。架構設計

從架構師的身上,工程師能夠看到本身的將來,所以架構師在作人作事方面須要嚴格要求本身,作好表率。設計

 

關注人而不是產品

必定要堅信:一羣優秀的人作一件他們熱愛的事,必定能取得成功。無論過程多麼曲折,無論外人看來多麼難以想象不靠譜。事務

 

因此最好的軟件項目管理不是制定計劃,組織資源,跟蹤修正項目進展,對成員進行激勵和懲罰,而是發掘項目組每一個成員的優秀潛能,讓你們理解並熱愛軟件產品最終的藍圖和願景。每一個人都是爲實現自我價值而努力,不是爲了領工資而工做。項目管理

 

尋找一個值得共同奮鬥的目標,營造一個讓你們都能最大限度發揮自我價值的工做氛圍。資源

 

沒有懶惰的員工,只有沒被激發出來的激情。全部強迫員工加班的管理者都應該爲本身的無能而羞愧。 開發

發掘人的優秀

有些企業喜歡挖優秀的人,而不是去把本身打形成一個培養優秀人才的地方。卻不知:是事情成就了人,而不是人成就了事。期望優秀的人來幫本身成事,不如作成一件事讓本身和參與的人都變得優秀。

調查下功能的實現,找開源實現,閱讀文檔和代碼,針對項目需求場景對代碼作優化,將優秀的代碼提交給開源項目的做者。

大多數人,包括咱們本身,都比本身覺得的更優秀,有些優秀須要在合適的環境中才會被激發出來,好比作一些有挑戰的事,和更優秀的人合做,抑或擁有了超越自個人勇氣。

 

發掘人的優秀遠比發掘優秀的人更有意義。

共享美好藍圖

藍圖應該是表述清楚的:產品要作什麼、不作什麼、要達到什麼業務目標,都須要描述清楚。

藍圖應該是形象的:產品能爲用戶創造什麼價值、能實現什麼樣的市場目標、產品最終會長什麼樣,都須要形象地想象出來。

藍圖應該是簡單的:無論內部仍是外部溝通,都能一句話說明白:咱們在作什麼。

 

藍圖應該寫在軟件架構設計文檔的扉頁、寫在郵件的簽名檔、寫在內部即時通信羣的公告上。

 

在項目過程當中,架構師要保持對目標藍圖的關注,對任何偏離藍圖的設計和決定保持警戒,錯誤的偏離要及時修正,必要的變動要通過你們討論,而且須要從新得到你們的認同。

 

也許有人會說"你是在忽悠我吧,只是想讓我努力工做而已"。青春總會逝去,人老是會死的,當有一天你白髮蒼蒼回首往事,你回爲無所事事而遺憾,但不會爲被人忽悠而羞愧。

批評馬雲的人,必定爲馬雲在建立阿里巴巴的時候沒有忽悠他成爲創始人而遺憾。

共同參與架構

架構師須要對系統架構負責,但並非說必定要架構師本身完成架構設計,並要項目團隊嚴格遵照架構決策。

把架構和架構師凌駕於項目和項目組之上,只會讓架構師變成孤家寡人,讓架構曲高和寡。

1. 不要只有架構師一我的擁有架構

讓項目參與者對架構充分爭論,你們越以爲本身是項目架構的重要貢獻者,就越是願意對開發過程承擔責任,越是願意共同維護架構和改善軟件。

2. 讓其餘人維護框架與架構文檔

除非是重大重構,不然架構師應該讓項目組成員維護框架和架構文檔,給項目組成員成長的機會也讓本身有更多的時間去尋找更大的挑戰。

學會妥協

不要企圖在項目中證實本身是正確的,必定要記住,你是來作軟件的,不是來當老大的。因此不要企圖去證實本身了不得,永遠也別幹這種浪費時間、傷害感情的事。

 

當作項目迷失方向的時候,提醒本身是來作軟件的,來實現客戶價值的,不是來證實誰對誰錯的。

 

不少時候,對架構和技術方案的反對意見,其實意味着架構和技術方案被關注、被試圖理解和接受。

 

架構師不該該對意見過於敏感,這時架構師應該作的是坦率地分享本身的設計思路,讓別人理解本身的想法並努力理解別人的想法,求同存異。

 

對於技術細節的討論應該當即驗證而不是繼續討論,當討論深刻到技術細節的時候也意味着問題已經收斂,對於總體架構設計,各方意見趨於一致。

 

而當你們再也不討論架構的時候,代表架構已經融入到項目、系統和開發者中了,架構師越早被項目組遺忘,越表示架構很是成功;項目組越離不開架構師,越表示架構還有不少缺陷。

 

成就他人

咱們活着不是爲了工做,不是爲了作設計、寫程序,這些不是咱們生活的目的。咱們活着是爲了成就咱們本身,而要想成就本身,就必須首先成就他人。

 

每一個人都有本身成就的目標,而工做是達成自我成就的一種手段:經過工做的挑戰,發掘自個人潛能,從新認知自我和世界。

 

軟件開發過程是人的智力活動的過程,軟件開發不只是製造軟件的過程,也是開發人員自我完善、超越自個人過程。因此咱們工做不僅是生產產品,還要成就人,並最終成就咱們本身。

 

作成一個項目不但要給客戶創造價值,爲公司盈利,還要讓項目成員得到成長。要讓他們以爲經過這個項目,本身的知識技能和業務水平都獲得了提升。

 

架構師做爲團隊的技術領導者,在項目過程當中不要試圖去控制什麼,帶着一個彈性的計劃和藍圖推動,團隊會管好他們本身。

相關文章
相關標籤/搜索