更新時(shí)間:2019-09-17 10:15:25 來(lái)源:動(dòng)力節(jié)點(diǎn) 瀏覽2249次
對(duì)于工作多年的程序員而言,日后的職業(yè)發(fā)展無(wú)非是繼續(xù)專(zhuān)精技術(shù)、轉(zhuǎn)型管理和晉升架構(gòu)師三種選擇。
架構(gòu)師在一家公司有多重要、優(yōu)秀架構(gòu)師需要具備怎樣的素質(zhì)以及架構(gòu)師的發(fā)展現(xiàn)狀三個(gè)方面來(lái)分析
程序員如何才能晉升為優(yōu)秀的高薪架構(gòu)師?
希望通過(guò)本文讓程序員們了解架構(gòu)師的市場(chǎng)行情,了解架構(gòu)師的發(fā)展前景,并幫助你更清晰地做出職業(yè)規(guī)劃。
架構(gòu)師在一家公司有多重要
架構(gòu)師對(duì)一家公司、一個(gè)項(xiàng)目有多重要?我們來(lái)看一看調(diào)查的數(shù)據(jù)——
架構(gòu)師在公司中擔(dān)當(dāng)著「IT架構(gòu)靈魂人物」的角色,因?yàn)樗麄儾粌H做著架構(gòu)師的本職工作,還同時(shí)做程序開(kāi)發(fā),寫(xiě)核心代碼。另外,架構(gòu)師依舊是技術(shù)高手,編程能力依然是一流的。
從圖表結(jié)果來(lái)看,我們可以認(rèn)為架構(gòu)師是一家公司的IT架構(gòu)靈魂人物,他必須具備出色的設(shè)計(jì)能力、編程能力和溝通能力,在完成本職的架構(gòu)工作外,還要協(xié)調(diào)好項(xiàng)目中人員的關(guān)系,做出合理的分工,最終完成全部工作。
架構(gòu)師是程序員個(gè)人發(fā)展的一條道路,在一家公司里有著極為重要的地位,是團(tuán)隊(duì)的關(guān)鍵人物,擔(dān)當(dāng)著重責(zé)。
軟件架構(gòu)師李先生這么比喻道:「架構(gòu)師的工作就像是他打造一棵樹(shù)的主干和枝干,然后程序員們讓這棵樹(shù)上長(zhǎng)出樹(shù)葉和果實(shí)?!?/p>
一名架構(gòu)師必須能夠?qū)懗鏊H自設(shè)計(jì)的系統(tǒng)中最難以實(shí)現(xiàn)的那段核心代碼,種出主干和枝干,才能將“冒芽開(kāi)花結(jié)果”的重?fù)?dān)交給開(kāi)發(fā)團(tuán)隊(duì)來(lái)做。
既然架構(gòu)師是「靈魂人物」,那么,成為一名架構(gòu)師,需要具備怎樣的素養(yǎng)呢?
優(yōu)秀架構(gòu)師需要具備怎樣的素質(zhì)
擔(dān)任全棧技術(shù)架構(gòu)師三年的劉先生表示:「架構(gòu)師雖然經(jīng)常需要做一些分工的工作,涉及到一些管理層面,但在我看來(lái),它并不算完全的管理,更考驗(yàn)溝通能力和他的設(shè)計(jì)能力。」
在具體分析架構(gòu)師該具備的素質(zhì)前,我們首先了解下架構(gòu)師的主要職責(zé)有哪些。我選取了平臺(tái)上企業(yè)對(duì)Java架構(gòu)師、前端架構(gòu)師、爬蟲(chóng)架構(gòu)師發(fā)出的面試邀請(qǐng),我們先來(lái)看一看企業(yè)對(duì)架構(gòu)師這一職位的需求描述是什么——
企業(yè)對(duì)Java架構(gòu)師的職位描述與職位要求
企業(yè)對(duì)前端架構(gòu)師的職位描述與職位要求
企業(yè)對(duì)爬蟲(chóng)架構(gòu)師的職位描述與職位要求
可以看出,企業(yè)無(wú)論是招哪一類(lèi)架構(gòu)師,都會(huì)要求他們具有多年從業(yè)經(jīng)驗(yàn),有過(guò)項(xiàng)目開(kāi)發(fā)經(jīng)歷,精通多門(mén)編程語(yǔ)言且熟悉數(shù)據(jù)庫(kù)。
本次我采訪了多名架構(gòu)師與程序員以及CTO,綜合他們的描述,總結(jié)出架構(gòu)師的主要職責(zé)為以下四點(diǎn)——
1確認(rèn)需求
架構(gòu)師要懂得用戶需求,理解用戶真正想要什么,這使得架構(gòu)師必須要和分析人員不斷溝通,反復(fù)確認(rèn)需求規(guī)格說(shuō)明書(shū),以此來(lái)保證他精準(zhǔn)清楚用戶需求。
項(xiàng)目經(jīng)理劉先生在受訪時(shí)說(shuō):「架構(gòu)師會(huì)與很多人溝通,例如開(kāi)發(fā)人員,例如我們項(xiàng)目經(jīng)理,有時(shí)甚至是用戶本身。架構(gòu)設(shè)計(jì)的目的很明確,目的是什么呢?挖掘用戶需求?!?/p>
2系統(tǒng)分解
在架構(gòu)師認(rèn)可需求規(guī)格說(shuō)明書(shū)后,架構(gòu)師已明確用戶需求是是什么,這時(shí)候便看架構(gòu)師的分解能力了。
通過(guò)入職的全棧技術(shù)架構(gòu)師周先生從「縱向分解」和「橫向分解」和我們說(shuō)明了系統(tǒng)分解是什么——
「一般分為縱向分解和橫向分解,縱向分解是將整個(gè)系統(tǒng)分層,從而將整體系統(tǒng)分解成下一級(jí)的子系統(tǒng)與組件。橫向分解是在系統(tǒng)分解成不同的邏輯層或服務(wù)后,對(duì)邏輯層進(jìn)行分塊,確定層與層之間的關(guān)系?!?/p>
3技術(shù)選型
在系統(tǒng)分解后,架構(gòu)師會(huì)最終形成軟件整體架構(gòu),接下來(lái),架構(gòu)師的職責(zé)是技術(shù)選型。
「前端到底用瘦客戶端還是富客戶端呢?數(shù)據(jù)庫(kù)是用MySQL還是MSSQL又或是Oracle呢?」架構(gòu)師張先生在接受采訪時(shí)說(shuō),「在了解用戶需求后,分解完系統(tǒng)后,技術(shù)選型是非常重要的環(huán)節(jié),提出各個(gè)方向,我再進(jìn)行評(píng)估。不過(guò),很多人都以為架構(gòu)師是有決定權(quán)的,其實(shí)不是,架構(gòu)師沒(méi)有拍版的權(quán)力,決定由項(xiàng)目經(jīng)理來(lái)做。」
架構(gòu)師在技術(shù)選型階段會(huì)提供參考信息給項(xiàng)目經(jīng)理,項(xiàng)目經(jīng)理再?gòu)念A(yù)算、進(jìn)度、人力、資源等各方面情況來(lái)權(quán)衡,最終確認(rèn)。
4制定技術(shù)規(guī)格說(shuō)明
如前文調(diào)查顯示,架構(gòu)師在項(xiàng)目開(kāi)發(fā)過(guò)程中是「靈魂人物」,并且要具備協(xié)調(diào)組織能力和懂得人員分工。
在制定技術(shù)規(guī)格說(shuō)明階段,架構(gòu)師要協(xié)調(diào)起所有的開(kāi)發(fā)人員,架構(gòu)師通常會(huì)用技術(shù)規(guī)格說(shuō)明書(shū)與開(kāi)發(fā)人員保持溝通,讓開(kāi)發(fā)人員能從各個(gè)視角去觀測(cè)、理解他們負(fù)責(zé)的模塊或者子系統(tǒng),確保開(kāi)發(fā)人員能夠按照架構(gòu)意圖實(shí)現(xiàn)各項(xiàng)功能。
在了解架構(gòu)師的職責(zé)后,再來(lái)看看架構(gòu)師該具備什么能力才能成為一家公司中的「靈魂人物」。我們先來(lái)看一下調(diào)查數(shù)據(jù)——
37%的受訪人認(rèn)為架構(gòu)師的設(shè)計(jì)能力最重要,技術(shù)實(shí)力重要度排在第二占了24%,溝通能力則排在第三,占比14%,管理能力在大多數(shù)架構(gòu)師眼中并不是最重要的,僅占了7%。此次,我們?cè)敿?xì)分析排在前三的能力。
1設(shè)計(jì)能力-擅長(zhǎng)整合分析
架構(gòu)是過(guò)程,并非結(jié)果。
架構(gòu)是架構(gòu)師洞察內(nèi)在結(jié)構(gòu)、原則、規(guī)律與邏輯的過(guò)程,架構(gòu)師要做到清晰理解系統(tǒng),以及簡(jiǎn)潔描述,這是分析整合的能力。
一個(gè)架構(gòu)師必須具備極強(qiáng)的分析能力,要做到根據(jù)產(chǎn)品宗旨和目標(biāo),分析清楚產(chǎn)品定位以及產(chǎn)品業(yè)務(wù),再整合利用現(xiàn)有的技術(shù)領(lǐng)域,找出最佳方案,實(shí)現(xiàn)產(chǎn)品概念。
2技術(shù)實(shí)力-實(shí)現(xiàn)產(chǎn)品規(guī)劃
架構(gòu)師首先要將代碼寫(xiě)的清晰易懂,要能夠?qū)崿F(xiàn)功能,做到?jīng)]有Bug,這要求架構(gòu)師必須具備至少熟練掌握一門(mén)語(yǔ)言。
這是最重要的,每一名出色的架構(gòu)師,必定是一位優(yōu)秀程序員。架構(gòu)師并不是純粹的管理崗位,對(duì)那些愛(ài)寫(xiě)各式文檔、畫(huà)流程圖、脫離代碼、只說(shuō)不做、高高在上的架構(gòu)師,程序員們通常會(huì)稱(chēng)他們?yōu)椤?/p>
PPT架構(gòu)師。
不懂編程的架構(gòu)師的職業(yè)生涯必定是短暫的,無(wú)論如何都不可本末倒置,要想實(shí)現(xiàn)自己的職業(yè)規(guī)劃,不能荒廢自己本身的技能,技術(shù)是架構(gòu)師賴(lài)以生存的最基本能力。
所以,不推薦不熱愛(ài)編程的人去做架構(gòu)師,對(duì)于團(tuán)隊(duì)工作和個(gè)人發(fā)展來(lái)說(shuō),都會(huì)帶來(lái)糟糕的后果。
3溝通能力-能夠橫向溝通
架構(gòu)師必須參與項(xiàng)目開(kāi)發(fā)全過(guò)程,包括確認(rèn)需求、系統(tǒng)分解、架構(gòu)設(shè)計(jì)、技術(shù)選型、制定技術(shù)規(guī)格說(shuō)明、系統(tǒng)實(shí)現(xiàn)、集成測(cè)試和部署各階段,在這一系列過(guò)程中,架構(gòu)師會(huì)與各部門(mén)溝通交流。
一個(gè)產(chǎn)品會(huì)有多部門(mén)合作,架構(gòu)師在其中的溝通極為重要,直接影響產(chǎn)品進(jìn)度與質(zhì)量。架構(gòu)師不僅要與開(kāi)發(fā)人員溝通,也要和項(xiàng)目經(jīng)理、分析人員甚至用戶溝通,來(lái)實(shí)現(xiàn)產(chǎn)品的各種可能性。
所以,對(duì)于架構(gòu)師來(lái)講,不僅有技術(shù)方面的要求,還有能夠橫向溝通的要求。
架構(gòu)師的發(fā)展現(xiàn)狀
成為一名架構(gòu)師是程序員的職業(yè)發(fā)展道路之一,架構(gòu)師的工作前景也是程序員們所關(guān)心的事情,采訪了數(shù)名架構(gòu)師,做出「架構(gòu)師的發(fā)展現(xiàn)狀」的相關(guān)分析。首先,我們來(lái)看一看架構(gòu)師們想去怎樣規(guī)模的公司——
可以發(fā)現(xiàn),初創(chuàng)公司并不受到架構(gòu)師們的青睞,架構(gòu)師們更偏向進(jìn)入具有一定規(guī)模已有成熟產(chǎn)業(yè)線的公司進(jìn)行發(fā)展。
接下來(lái),我們收集了近一年來(lái)架構(gòu)師所收到的面試邀請(qǐng)數(shù)——
能夠看出,最近一年來(lái),企業(yè)對(duì)架構(gòu)師的需求量是在逐步上升的。在了解企業(yè)需要后,我們?cè)賮?lái)看一看架構(gòu)師的收入——
以上數(shù)據(jù)是兩年來(lái)通過(guò)1入職的架構(gòu)師年薪,20萬(wàn)以下和60萬(wàn)以上各占3%,20萬(wàn)至30萬(wàn)、30萬(wàn)至40萬(wàn)各占22%,40萬(wàn)至50萬(wàn)占比最大,高達(dá)34%,從現(xiàn)狀年薪來(lái)看,架構(gòu)師屬于高薪職業(yè)。
高薪職業(yè)往往都擔(dān)著巨大壓力,對(duì)于架構(gòu)師而言,他們?cè)诠ぷ髦忻媾R的最大的困難又是什么呢——
協(xié)調(diào)人際利益占了35%,管理分工占了26%,這些與「人」相關(guān)的內(nèi)容成為架構(gòu)師在工作中面臨的最大困難。對(duì)于能成為架構(gòu)師的人來(lái)說(shuō),只要不是PPT架構(gòu)師,基本都具備了對(duì)架構(gòu)師而言最重要的設(shè)計(jì)能力和編程能力,所以最重要的有時(shí)并不是最困難的。
他們必須思考清楚用戶最需要的是什么,同時(shí)協(xié)調(diào)好項(xiàng)目?jī)?nèi)部人員的利益關(guān)系,對(duì)于很多不擅于打交道的程序員而言,協(xié)調(diào)和管理的確成為了他們最頭疼的問(wèn)題。
受訪的架構(gòu)師們表示,面對(duì)協(xié)調(diào)和管理所帶來(lái)的困擾時(shí),不能著急,協(xié)調(diào)人員之間的利益、管理和分配工作量本身就是一件需要大量實(shí)踐才能有成效的事情,成功的架構(gòu)師們往往會(huì)選擇從減壓做起,而協(xié)調(diào)與管理,在他們看來(lái),是一件水到渠成的事。
以上就是動(dòng)力節(jié)點(diǎn)java培訓(xùn)機(jī)構(gòu)小編介紹的“Java架構(gòu)師之路-小白到Java年薪百萬(wàn)的架構(gòu)師”的內(nèi)容,希望對(duì)大家有幫助,更多java最新資訊請(qǐng)繼續(xù)關(guān)注動(dòng)力節(jié)點(diǎn)java培訓(xùn)機(jī)構(gòu)官網(wǎng),每天會(huì)有精彩內(nèi)容分享與你。
相關(guān)閱讀
0基礎(chǔ) 0學(xué)費(fèi) 15天面授
有基礎(chǔ) 直達(dá)就業(yè)
業(yè)余時(shí)間 高薪轉(zhuǎn)行
工作1~3年,加薪神器
工作3~5年,晉升架構(gòu)
提交申請(qǐng)后,顧問(wèn)老師會(huì)電話與您溝通安排學(xué)習(xí)
初級(jí) 202925
初級(jí) 203221
初級(jí) 202629
初級(jí) 203743