2006年的職場出奇的冷清,相比前幾年,簡歷的數量和質量都大為不如,很難得找到三年工作經驗以上的人,有一個不是特別笨,就是特別怪。就是麼,幹得好誰沒事換工作啊!Simon是一家外企軟件公司的總經理,最近給這個問題愁壞了。項目一個接一個的接下來,人手越來越緊張。雖然Simon是個極限編程的粉絲,但也不得不批准了一份又一份的加班申請。HR經理把這個問題歸結到房價上,他的妙論是「怕失業了還不上房款,不敢跳槽」。
這天,K項目組長Allen終於忍不住了,帶了一個只有一年工作經驗的小夥子要Simon面試,「很聰明!經驗少了點。」
Simon皺了皺眉毛,說:「你不知道這個職位最低要求是三年工作經驗嗎?」
Allen說:「這已經是三個月裡通過技術考試中最好的一個了,老大,試試吧。」Allen是Simon多年的哥們,比較隨便。
抵到面子上來,Simon只好讓Allen把小夥子帶進來。
Simon的面試通常是三步曲:
問題一:你能說說畢業後的主要工作經歷嗎?
問題二:再說說你在公司的地位?
問題三:你的發展目標是什麼?等回答後,比如說構架師,他就跟著問:想像一下你當構架師的一天,說給我聽聽?
小夥子回答第一問題很快很清楚,一年工作當然沒什麼東西。Simon覺得小夥子挺聰明。所以在小夥子回答了第二個問題後,問了一個發散性的問題:「你剛才說你在公司裡處於中等水平,那比你差的人為什麼會比你差呢?」
這個問題是個陷阱。
小夥子冒冒失失回答說:「我覺得他們每天工作是為工作而工作,工作沒有責任感。」
Simon點點頭說:「是嗎?那真是糟糕的員工。那你剛好比糟糕的員工好一點了?」
小夥子的臉一下子紅了,「我不是這個意思……」
「好了,那你說說比你好的人為什麼比你強?」
「我覺得他非常努力,工作很多年了還在學習各種構架,水平很高。」於是Simon就問那最後一個問題。果然,小夥子回答的是要成為構架師。大概70%的人想成為構架師。但是構架師是什麼呢?
Simon問道:「那你為什麼要成為構架師呢?」
小夥子一愣,大概還沒有人這麼置疑過他。「年紀大了,不能老寫程序吧。」這個回答,讓Simon想起關於他對什麼是老的定義:當你希望做年輕人做的事情時,你就還年輕;如果你希望做老年人做的事情,你就老了。這和你出生了多長時間是沒有關係的。
Simon接著問:「好吧,那你說說你成為構架師以後,每天都會做什麼?」
小夥子說:「我還沒想過,不過,我想應該主要是需求分析,設計構架吧……」這大概是現在年輕人的通病,年輕人很容易追逐一些自己也不清楚的目標。
Simon問:「那設計構架具體都做些什麼呢?」
小夥子這次的回答是:「比如,選擇程序框架,決定用Spring或Struts等等。」
「哦,那我問你,你怎麼說服別人是用Spring還是Struts呢?」
「如果我有經驗,我會知道哪個更好……」
「是嗎,但關於Spring或Struts的知識任誰都可以很容易得到。如果別人不同意你的建議,你怎麼說服他?如果同意你的建議,那你不過是作出了和別人一樣的認識,別人又憑什麼認可你呢?」
小夥子沒想過構架師日子裡還有一個說服人的工作,說:「我是構架師,我應該有權力做決定吧?」
Simon想起權力的三種層次,第一層,任命;第二層,專業;第三層,品德。
Simon問:「如果在一個成熟的軟件企業裡沒有你所想像的構架師呢?或者說,構架師這種職業已經死亡或消失了呢?你會怎麼定位你的職業?」
小夥子顯得很震驚。
Simon畫了一個系統構架,然後又給小夥子看了一段代碼。
「那一個更難懂?」Simon問。
小夥子指著代碼說:「代碼難懂。」
Simon的解釋是:「這就是為什麼實際上所謂的構架師不存在的原因。一個更簡單的東西怎麼會更有價值呢?每個人都能夠畫出這種構架圖,但不是每個人都能寫出好的代碼。」
送走了小夥子,Simon有點難受。他有點喜歡這個小夥子,但是,這又是一個被愚蠢的教育和誤人子弟的技術雜誌污染的傢伙。Simon在自己的筆記本中加了一句話:中國程序員最愚蠢的認識之三:我想當構架師。前面兩個赫然是:
35歲後寫不動程序了;
我只要做Java(C++);