一篇文章搞懂高級程序員、架構(gòu)師、技術(shù)經(jīng)理、技術(shù)總監(jiān)、CTO的區(qū)別
我希望用一篇文章完全讓大家正確的理解從程序員到架構(gòu)師、技術(shù)經(jīng)理、技術(shù)總監(jiān)、CTO的完整區(qū)別以及進階要領(lǐng)。
只有客觀去認識,才會更加合理的找到自己的擅長點,從而更好的發(fā)展自己。
上圖是典型的薪資結(jié)構(gòu)圖,我們先從高級程序員談起。
01.高級程序員
一般是至少三年以上的工作經(jīng)驗,有些地方是五年以上,很多小公司或者創(chuàng)業(yè)公司,高級程序員覆蓋工作職責(zé)比較廣,基本包含部分產(chǎn)品經(jīng)理、項目經(jīng)理的工作職責(zé)以外,最主要負責(zé)核心代碼編程,基本技術(shù)難點都自己解決為主。
在公司大一點的都有非常明確的職責(zé)和級別定義,以阿里為代表,P5-P6代表高級軟件工程師這個級別,基本能獨立負責(zé)設(shè)計和編碼階段。
其實,在國外例如Google、Facebook等公司,很多牛人的title都是Senior Level engineer,這一點不像在中國。
在國內(nèi),一般一個高級程序員的準確定義:
負責(zé)核心復(fù)雜功能的實現(xiàn)方案設(shè)計與編碼實現(xiàn)。
詳細描述:能獨立設(shè)計一個業(yè)務(wù)模塊的能力,并且獨立設(shè)計數(shù)據(jù)庫表以及UML畫圖,利用部分設(shè)計模式以及懂得算法和效率的高質(zhì)量代碼。
02.架構(gòu)師
一般能做到架構(gòu)師這個稱謂,工作年限至少都在5年-8年以上,具體還看每個人的學(xué)習(xí)能力和領(lǐng)悟能力,以及成長情況(是否具備并發(fā)項目環(huán)境)。
之所以有架構(gòu)師這個稱謂,主要還是公司發(fā)展以及大了的需要,需要專注于技術(shù)的人,你也可以理解為技術(shù)專家,攻克公司技術(shù)難題為主,例如淘寶的雙11的挑戰(zhàn),以及公司發(fā)展需要考慮獨立拆分,數(shù)據(jù)庫壓力太大,需要分布式緩存以及CDN的配合,怎么選擇,怎么結(jié)合自己公司的情況攻克當前技術(shù)難題。
如果一定要準備定義,我用一句話:
架構(gòu)師的職責(zé)應(yīng)該是立足于技術(shù)和業(yè)務(wù)之間的中間角色或者平衡點, 在針對業(yè)務(wù)深刻理解的基礎(chǔ)上,針對業(yè)務(wù)中存在諸多變數(shù),挑選適合的技術(shù)架構(gòu)和技術(shù)方案。
03.技術(shù)經(jīng)理
技術(shù)經(jīng)理坦率的講,就是從高級程序員開始分化而來,一部分同學(xué)選擇繼續(xù)專研技術(shù),往縱向發(fā)展,一部分同學(xué)打算覺得未來管理這條路很好,主動選擇開始轉(zhuǎn)型管理這個方向,于是才有里技術(shù)主管或者技術(shù)經(jīng)理這個稱謂。
我還是以阿里為參考,阿里的M代表管理方向,你可以通過下圖可以清晰的看見P系列和T系列對應(yīng)的級別。
P6和M1,從技術(shù)的角度,如果你打算往管理M發(fā)展,M1對應(yīng)的至少你也能勝任資深工程師。
所以,這個時候你就非常清晰了,技術(shù)經(jīng)理本身就是從資深工程師發(fā)展而來,很多公司的技術(shù)經(jīng)理根本沒有從一線研發(fā)做起,大部分就是一個項目經(jīng)理,帶帶項目為主,根本無法勝任剛才我講到的技術(shù)經(jīng)理的工作。
***,我稍微總結(jié)下部分技術(shù)經(jīng)理的要領(lǐng):
首先,具備核心模塊代碼編程的能力,從設(shè)計方案到核心編碼,再到后期的代碼review,這方面是能完全勝任的。
其次 ,才是團隊任務(wù)管理,分配工作,工作量評估,以及幫助團隊人員提升實力,以及推動更加合理的考核機制。
再次,協(xié)調(diào)的能力,與人打交道的能力,平級部門,產(chǎn)品、設(shè)計、測試、運營打交道的能力,這個還是要有的,不能一味盲干,也不能一味不發(fā)聲,總之你要讓你的團隊在公司應(yīng)該有一定的美譽,讓大家能記住你們團隊。
04.技術(shù)總監(jiān)
技術(shù)總監(jiān)一般工作8--10年以上,首先技術(shù)經(jīng)理的事你能做的非常好,再加上公司發(fā)展的需要,需要你同時帶領(lǐng)多條業(yè)務(wù)線或者多個小團隊的時候,基本就是技術(shù)總監(jiān)了。
從管理的層級,技術(shù)總監(jiān)同時管理多個技術(shù)經(jīng)理,管理從業(yè)務(wù)線劃分的團隊。
從技術(shù)的層級,這里我補充一點,盡量你能勝任架構(gòu)師這個級別,也就是說你至少也是一個技術(shù)專家***。當然,你會問?之前你提到高級程序員開始從技術(shù)專家和管理開始分化,這不是有點矛盾么。
其實,當你開始往技術(shù)經(jīng)理發(fā)展的時候,其實就是多維度發(fā)展了,技術(shù)也是一個維度,并不是說你做純管理脫離于技術(shù),技術(shù)的積累你仍然需要繼續(xù)專研。
***,總結(jié)下技術(shù)總監(jiān)的部分要領(lǐng):
從業(yè)務(wù)線和團隊的角度,你有能力組建研發(fā)部,搭建公共技術(shù)平臺,管理各條業(yè)務(wù)線以及從技術(shù)經(jīng)理、高級程序員、項目經(jīng)理、還有架構(gòu)師的能力。
05.CTO
首先澄清幾個CTO的誤區(qū),CTO的要求是***的,不是每一個人都勝任CTO,好的CTO在國內(nèi)非常少,非常稀有。
很多同學(xué)的一個巨大的誤區(qū),認為CTO就專注于技術(shù)的,這是不對的,CTO如果只專注于技術(shù),那你招一個架構(gòu)師不就成了,為什么還需要找CTO呢。
還有一個誤區(qū),很多同學(xué)從大公司出來進入一家創(chuàng)業(yè)公司 or 小公司,掛名某某CTO,自認為自己已經(jīng)一步登天,其實離CTO的能力差之甚遠。
CTO是一個系統(tǒng)的成長軌跡,不是一朝一夕可以練成的,需要后天的巨大“自我改進”能力。如果用我自己的話總結(jié),CTO的成長之路猶如“從蠶到蛾的蛻變”,整個蛻變過程缺一不可,***都是要經(jīng)歷性格塑造的,不斷的改變自己的性格。
我用一張圖能稍微總結(jié)下CTO的要領(lǐng),如果你有志于往CTO發(fā)展,至少你得知道,你盡量往這方面發(fā)展是OK的。
真正的CTO,是軟件產(chǎn)品和技術(shù)是統(tǒng)一管理的,在通過后期的自己的努力,通過情商、逆商以及商業(yè)思維來輔助。
如果一定要總結(jié)下CTO的要領(lǐng):
1.業(yè)績達成:洞察客戶需求,捕捉商業(yè)機會,規(guī)劃技術(shù)產(chǎn)品,通過技術(shù)產(chǎn)品領(lǐng)導(dǎo)業(yè)務(wù)增長,有清晰的戰(zhàn)略規(guī)劃、主攻方向,帶領(lǐng)團隊實現(xiàn)組織目標。
2、前沿與平臺:到這個研發(fā)規(guī)模規(guī)模級別了,一定要有專門的團隊做技術(shù)應(yīng)用創(chuàng)新探索和前沿技術(shù)預(yù)研。而且要和技術(shù)平臺團隊、應(yīng)用研發(fā)團隊形成很好的聯(lián)動作用,讓創(chuàng)新原型試點能夠很平滑的融入商業(yè)平臺再讓應(yīng)用研發(fā)線規(guī)模化的使用起來。
3、研發(fā)過程管理:站在全局立場來端到端改進業(yè)務(wù)流程,為業(yè)務(wù)增長提供方便。
4、組織與人才建設(shè):公司文化和價值觀的傳承;研發(fā)專業(yè)族團隊梯隊建制建設(shè)、研發(fā)管理族團隊梯隊建制建設(shè);創(chuàng)建創(chuàng)新激發(fā)機制,激發(fā)研發(fā)人創(chuàng)新向前發(fā)展,激發(fā)黑馬人脫穎而出。
CTO做的事情,是商業(yè)、產(chǎn)品、技術(shù)、管理、團隊相平衡的綜合統(tǒng)管。































