2022網(wǎng)易微專業(yè)高級前端開發(fā)工程師大搜云夢掩
談建筑:建筑師除了畫建筑圖還需要什么?
介紹
2022網(wǎng)易微專業(yè)高級前端開發(fā)工程師大搜云夢掩
download:https://www.zxit666.com/5515/
“建筑是在處理一些重要的事情,但誰知道它們是什么。
建筑師應(yīng)該是一個重要且受人尊敬的職位。每次聽到某某是某公司的架構(gòu)師,會不會有一種敬畏的感覺?在大眾眼中,架構(gòu)師通常與系統(tǒng)設(shè)計、技術(shù)實力、領(lǐng)導力和影響力密切相關(guān)。正是因為這個原因,企業(yè)中很多架構(gòu)師的職位都是由經(jīng)驗豐富、技術(shù)能力扎實的高級軟件工程師擔任的。但軟件行業(yè)對架構(gòu)師的定義其實并不明確:亞馬遜、阿里云等云服務(wù)商都有自己的架構(gòu)師團隊,但大多以架構(gòu)師的名義開展客戶售后服務(wù);企業(yè)中的架構(gòu)師無非是利用自己豐富的經(jīng)驗和強大的實力解決技術(shù)問題,相當于高級軟件工程師。這些都和我們心目中設(shè)計高大建筑圖的全知全能的建筑師大相徑庭。
總工程師
首先,架構(gòu)師是整個軟件項目的總工程師,負責軟件工程的總體設(shè)計、實施和質(zhì)量。因此,對于軟件架構(gòu)師來說,需要具備優(yōu)秀的編程能力,熟悉軟件項目開發(fā)流程,在各個技術(shù)領(lǐng)域有一定的廣度和深度。不僅如此,由于架構(gòu)師是技術(shù)方的總負責人,他(或她)通常需要思考模塊之間是如何交互的,功能服務(wù)的劃分是否合理,整個系統(tǒng)的瓶頸會在哪里等等。而這些都是技術(shù)性的東西。
當一個軟件工程師處理過很多大大小小的項目,他應(yīng)該對軟件工程和架構(gòu)有很深的理解,再加上一些系統(tǒng)的學習,他應(yīng)該有資格成為一個架構(gòu)師。所以從技術(shù)角度來說,軟件架構(gòu)師相當于高級軟件工程師。
圖表重要嗎?
可能大家都見過架構(gòu)師畫的各種架構(gòu)圖:層次架構(gòu)圖、物理網(wǎng)絡(luò)拓撲圖、流程圖、交互邏輯圖等等。但是要回答架構(gòu)圖是否重要的問題,我們需要了解一點為什么需要架構(gòu)圖。圖表的主要目的是幫助內(nèi)部工程師或外部技術(shù)人員快速理解其中包含的系統(tǒng)模塊信息。所以,那些看似很酷、很專業(yè)、很討喜的架構(gòu)圖,如果缺乏內(nèi)涵,未必對理解有幫助。相反,一個簡潔、清晰、易懂的架構(gòu)圖,即使看起來很丑,對軟件開發(fā)人員也有很大的幫助。所以架構(gòu)圖固然重要,但主要目的還是為了清晰簡潔地展現(xiàn)系統(tǒng)模塊的信息。
不僅僅是技術(shù)
如前所述,架構(gòu)師作為軟件工程的總工程師,將承擔技術(shù)方的責任。但現(xiàn)實中很少有只專注于技術(shù)工作的架構(gòu)師,或者至少是精通技術(shù)技能的,能在項目中游刃有余的。一個成功的架構(gòu)師,或者一個有影響力的架構(gòu)師,至少需要良好的領(lǐng)導力或者團隊管理能力。
對中國建筑師的八項技能要求中,有一半與技術(shù)沒有直接關(guān)系。
你可能會驚訝于后半段對架構(gòu)師的非技術(shù)要求,比如為什么架構(gòu)師需要考慮政治?之前我還是一個單純的技術(shù)人員的時候并不理解,但是隨著項目經(jīng)驗的不斷積累,直到我自己成為了項目經(jīng)理,我發(fā)現(xiàn)企業(yè)中很多架構(gòu)決策并不僅僅來自于架構(gòu)本身的技術(shù)合理性,而是與企業(yè)政治有關(guān)。這里的政治不是傳統(tǒng)意義上的官僚政治,更多的是指各部門之間的合作或競爭;尤其是當企業(yè)規(guī)模非常大的時候,這個考慮還是很重要的。限于篇幅,這里不贅述。一會兒我們可以單獨聊聊。
精益求精
很遺憾,很多從工程師提拔上來的架構(gòu)師,繼續(xù)在技術(shù)領(lǐng)域?qū)W習,忽略了非技術(shù)的東西。所以本文強調(diào)的一點是,架構(gòu)師的責任和要求絕對不僅僅是技術(shù)和架構(gòu)本身,更多的是非技術(shù)技能和經(jīng)驗的積累。比如,如何在合規(guī)、資源和開發(fā)效率之間取得平衡;對自己的軟件項目負責,對公司提供什么商業(yè)價值,對業(yè)務(wù)會有什么影響;如何向非技術(shù)人員(尤其是老板)解釋技術(shù)術(shù)語;面對不配合的外部部門,如何應(yīng)對,保證項目順利進行。這類問題需要非技術(shù)技能和經(jīng)驗,想要在職業(yè)道路上走得更遠的架構(gòu)師可能需要更多地考慮這些。只有走出自己的舒適區(qū),才能開始有效的學習和成長。