為什么你總成為不了架構(gòu)師?
背景:
今天接到一個哥們兒的電話,說,很郁悶,想和我聊聊。
我問,有啥郁悶的事情啊,說來聽聽。
他說,最近很郁悶,我本來今年的計劃是成為一個架構(gòu)師,但是,無論如何努力,都不知道為什么,感覺希望很渺茫...
這哥們兒其實是一個很努力的家伙,曾經(jīng)是我Team里技術(shù)***的程序員,對一個技術(shù)不鉆明白不罷休的那種程序員。
我給他電話里說了說我一直想說,但一直都沒有時間說的話,那就是:為什么你總是成為不了架構(gòu)師?
一、什么是架構(gòu)師?
其實架構(gòu)師的概念并不是從程序開發(fā)專業(yè)一誕生就有的職位概念,架構(gòu)師(Software Architect)僅僅是最近幾年提出來的一個職位,貌似Software Architect的概念是IBM提出來的。然而,架構(gòu)是什么樣的一個職位,就像云計算一樣,看起來很美,但是,每個人都有自己的理解。
很多人認(rèn)為,架構(gòu)師就是系統(tǒng)分析師,是拿到系統(tǒng)需求進(jìn)行分析的人,錯!如果系統(tǒng)只是系統(tǒng)分析,那么架構(gòu)設(shè)計誰來弄?
有人認(rèn)為架構(gòu)師就是架構(gòu)設(shè)計的人,畫畫UML,寫一寫文檔之類的人,錯!畫UML就是設(shè)計嗎?畫圖的人有了,設(shè)計的人是誰?
還有人認(rèn)為架構(gòu)師是從屬于項目經(jīng)理,只管設(shè)計,而沒有任何權(quán)利的人,錯!如果設(shè)計的決策權(quán)交給項目經(jīng)理,那么這個設(shè)計是有分量的嗎?
架構(gòu)師是什么?
我們先不回答,我們先來看看在架構(gòu)師概念出現(xiàn)前的一些職位提法。
在架構(gòu)師概念出現(xiàn)前,微軟是我們大多數(shù)軟件企業(yè)的研發(fā)機構(gòu)設(shè)置的樣板,當(dāng)時比較流行的職位搭配是——技術(shù)經(jīng)理+項目經(jīng)理。
ok,當(dāng)然也有很多企業(yè)實際上,技術(shù)經(jīng)理和項目經(jīng)理是一個人。
也就是大多數(shù)企業(yè)當(dāng)時是采用的開發(fā)主管負(fù)責(zé)制,即:技術(shù)+團隊+項目,的負(fù)責(zé)人。
當(dāng)我們把“項目經(jīng)理”剝離出開發(fā),僅僅對項目進(jìn)度以及為項目推進(jìn)而排除各項外部障礙時,其實負(fù)責(zé)開發(fā)技術(shù)和開發(fā)團隊的人就是“技術(shù)經(jīng)理”了。
如果,我告訴你,之前所謂的技術(shù)經(jīng)理其實就現(xiàn)在的架構(gòu)師,可能我們大家就更容易理解了。
沒錯,就是這樣的,如果“架構(gòu)師”的設(shè)計失去了“發(fā)言權(quán)”、“技術(shù)方向的決策權(quán)”、“團隊人員的開發(fā)資源調(diào)配權(quán)”,那么我們可以想見,這個設(shè)計是多么的無力!!
因此,什么是架構(gòu)師?
架構(gòu)師是具有技術(shù)發(fā)言權(quán),方向決策權(quán),和團隊人員開發(fā)資源調(diào)配權(quán)的開發(fā)團隊的TeamLear,也是這個程序的設(shè)計者,當(dāng)然他是這個程序團隊的靈魂!!
因此,不想當(dāng)Teamleader的程序員,絕對不可能成為真正意義上的架構(gòu)師!
同時,不是Teamleader的架構(gòu)師,也是一個被架空的,蒼白無力的架構(gòu)師!
二、如何才能用架構(gòu)師的思想去思考?
架構(gòu)師,如果只是把需求變成程序,那就不是架構(gòu)師,那是叫“照著葫蘆畫瓢”。
架構(gòu)師,如果只是精通各種框架,比如S\S\H之類的技術(shù),只是利用S\S\H之類的技術(shù)去描述用戶提出的需求,那是叫“用S\S\H畫瓢”。
ok,不賣關(guān)子,那么怎么思考就是架構(gòu)師應(yīng)該去思考的方法?
首先告訴你,進(jìn)行沒有設(shè)計的架構(gòu)設(shè)計叫架構(gòu)師嗎?
這種情況在軟件行業(yè)內(nèi)太普遍了!!
為什么沒有設(shè)計?
因為,很多人都不懂什么叫設(shè)計!!
給大家一個概念,什么是設(shè)計?——
設(shè)計因未來而存在!——鐘聲 2010年6月
沒有面向未來的,只是面向過去的,那絕對不是設(shè)計,那絕對只是模仿!!
設(shè)計因未來而存在!!
即,沒有創(chuàng)新,就沒有設(shè)計!!
即,沒有改變,就沒有設(shè)計!!
用進(jìn)化論去思考你的設(shè)計!!
讓你的設(shè)計超越一切理論!!
設(shè)計只是記憶的載體而不是記憶的全部!!
其實程序員是藝術(shù)家,而不是建筑工人!!
那么,為什么你總成為不了架構(gòu)師?
不要僅僅從技術(shù)的角度出發(fā)一味的按照自己理所當(dāng)然的方向去努力,要學(xué)會用設(shè)計的思想思考,并努力讓你自己成為有分量的人!!
【編輯推薦】
- 架構(gòu)師不可不知的十大可擴展架構(gòu)
 - 資深架構(gòu)師Theo談統(tǒng)計學(xué),業(yè)務(wù)與運維工程師的成長
 - OneWorld OneWeb:專訪Opera中國***架構(gòu)師羅志宇
 















 
 
 







 
 
 
 