爲什麼你總成爲不了架構師?

爲什麼你總成爲不了架構師?
 
背景:
今天接到一個哥們兒的電話,說,很鬱悶,想和我聊聊。
我問,有啥鬱悶的事情啊,說來聽聽。
他說,最近很鬱悶,我本來今年的計劃是成爲一個架構師,但是,無論如何努力,都不知道爲什麼,感覺希望很渺茫...
這哥們兒其實是一個很努力的傢伙,曾經是我Team裏技術最好的程序員,對一個技術不鑽明白不罷休的那種程序員。
我給他電話裏說了說我一直想說,但一直都沒有時間說的話,那就是:爲什麼你總是成爲不了架構師?
 

 
 
一、什麼是架構師?
 
其實架構師的概念並不是從程序開發專業一誕生就有的職位概念,架構師(Software Architect)僅僅是最近幾年提出來的一個職位,貌似Software Architect的概念是IBM提出來的。然而,架構是什麼樣的一個職位,就像雲計算一樣,看起來很美,但是,每個人都有自己的理解。
 
很多人認爲,架構師就是系統分析師,是拿到系統需求進行分析的人,錯!如果系統只是系統分析,那麼架構設計誰來弄?
 
有人認爲架構師就是架構設計的人,畫畫UML,寫一寫文檔之類的人,錯!畫UML就是設計嗎?畫圖的人有了,設計的人是誰?
 
還有人認爲架構師是從屬於項目經理,只管設計,而沒有任何權利的人,錯!如果設計的決策權交給項目經理,那麼這個設計是有分量的嗎?
 
 
架構師是什麼?
 
我們先不回答,我們先來看看在架構師概念出現前的一些職位提法。
在架構師概念出現前,微軟是我們大多數軟件企業的研發機構設置的樣板,當時比較流行的職位搭配是——技術經理+項目經理。
 
ok,當然也有很多企業實際上,技術經理和項目經理是一個人。
也就是大多數企業當時是採用的開發主管負責制,即:技術+團隊+項目,的負責人。
 
當我們把“項目經理”剝離出開發,僅僅對項目進度以及爲項目推進而排除各項外部障礙時,其實負責開發技術和開發團隊的人就是“技術經理”了。
 
 
如果,我告訴你,之前所謂的技術經理其實就現在的架構師,可能我們大家就更容易理解了。
 
沒錯,就是這樣的,如果“架構師”的設計失去了“發言權”、“技術方向的決策權”、“團隊人員的開發資源調配權”,那麼我們可以想見,這個設計是多麼的無力!!
 
 
因此,什麼是架構師?
 
架構師是具有技術發言權,方向決策權,和團隊人員開發資源調配權的開發團隊的TeamLear,也是這個程序的設計者,當然他是這個程序團隊的靈魂!!
 
 
因此,不想當Teamleader的程序員,絕對不可能成爲真正意義上的架構師!
同時,不是Teamleader的架構師,也是一個被架空的,蒼白無力的架構師!
 
 
二、如何才能用架構師的思想去思考?
 
 
架構師,如果只是把需求變成程序,那就不是架構師,那是叫“照着葫蘆畫瓢”。
架構師,如果只是精通各種框架,比如S\S\H之類的技術,只是利用S\S\H之類的技術去描述用戶提出的需求,那是叫“用S\S\H畫瓢”。
 
ok,不賣關子,那麼怎麼思考就是架構師應該去思考的方法?
 
首先告訴你,進行沒有設計的架構設計叫架構師嗎?
這種情況在軟件行業內太普遍了!!
爲什麼沒有設計?
因爲,很多人都不懂什麼叫設計!!
 
給大家一個概念,什麼是設計?——
 
設計因未來而存在!
——鐘聲 2010年6月
 
 
 
 
 
 
沒有面向未來的,只是面向過去的,那絕對不是設計,那絕對只是模仿!!
設計因未來而存在!!
 
 
即,沒有創新,就沒有設計!!
即,沒有改變,就沒有設計!!
 
 
用進化論去思考你的設計!!
讓你的設計超越一切理論!!
設計只是記憶的載體而不是記憶的全部!!
其實程序員是藝術家,而不是建築工人!!
 
 
那麼,爲什麼你總成爲不了架構師?
不要僅僅從技術的角度出發一味的按照自己理所當然的方向去努力,要學會用設計的思想思考,並努力讓你自己成爲有分量的人!!
 
 
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章