先來聽我說幾個真實的故事:
上週面試了乙個開發人員,這個人所有的面試題都答出來了。各方面我們需要的知識也掌握了,但是在初試中,這個人就被我們三個面試官一併否決了。 原因很簡單,這個面試者提供的答案都是能解決問題,但幾乎都是效率最差的方案;另外,從一些面試題中,可以看出這人很多時候,把開發工作當成乙個應付差事的工作來做,而不是作為自己的興趣來做。缺乏激情,工作只是應付差事,僅僅是由於有幾年工作經驗,才能答出我們的面試題。這樣的人不要也罷。
另外乙個故事,公司有個開發組,在他們組發生過這樣一件事情:有次在乙個介面布局文件中,有幾個很明顯的錯別字。提交到某個開發人員那裡後,開發人員在知道是錯別字的前提下,不跟其它相關人員溝通,在web頁面上,仍然採用了這個錯別字。
再乙個面試中聽到的故事:在問面試者為何離開前乙個公司的時候,有個面試者說了這樣一種情況,乙個10個多人的開發團隊,忙了一年,產品還沒有上線,需求還在因為boss的靈感不斷,還在不斷修改中,最後他覺得對這個專案和這個公司失去了激情,為此他決定尋找新的工作機會。
種種原因,沒能或不再把程式設計工作當作一種樂趣,沒有成就感,這是上面三個故事產生的根源。這是我的看法。
不僅僅程式,程式設計系統產品在焦油坑中苦苦掙扎,程式設計師們也在焦油坑中苦苦掙扎。下圖是人月神話第一章的插圖:拉布雷阿的焦油坑壁畫(mural of la brea tar pits)。我們每個人都象其中的動物一樣,時時刻刻陷身在焦油坑中,都在苦苦的掙扎中。
說自己陷身焦油坑,有這個,哪個苦惱。誰沒有苦惱,人在各個階段都會有大量的苦惱存在,在苦惱中仍然有激情,這才是重要。
有時候,我就在關注身邊的程式設計師,去想他們為何會有這樣、那樣的行為發生。分析的其中乙個結果就是:程式設計師的水平差別很大程度是看他是否有程式設計的激情。
比如:剛畢業的大學生,差的,好的我都看到過,好的乙個在還有半年才畢業的時候,就被我拉到公司工作了(這個人後來由於想自己創業,離職了,不過這個人的激情我非常佩服)。而差的,在面試中一些非常簡單問題的答題,讓我差點吐掉。要知道,我面試剛畢業者,一般不是考具體應用,而是重點考察演算法、資料結構的簡單知識,而這些知識,大學裡是必修的。
有哪些方面可能成為程式設計師有激情的原因?
在人月神話的第一章《焦油坑》中提到程式設計行業「滿足我們內心深處的創造渴望和愉悅所有人的共有情感」提供了五種樂趣:
從我的角度來理解,就是以下兩個方面:
程式設計的結果和過程,很多時候受制於其它人的。這時候必然會對你在這方面的樂趣產生限制。
越是大公司,越是大型的系統,這種限制越多。另外,日企的嚴格開發規範,我覺得是對這些限制達到極致的表現。所以我個人肯定不會去日企。也不建議去日企。有些技術牛人,沒有去大企業,可能的乙個原因是因為他想把自己這些程式設計樂趣保留在乙個更大的範圍。
另外,微軟開發流程我知道的可能比較多點。我就說說我對微軟開發中的樂趣說說我的看法,畢竟我不在微軟,可能不一定對。
1、我覺得在微軟開發團隊,測試人員的開發樂趣比開發人員的開發樂趣要更多。
開發人員需要有產品經理的各種文件作限制,他的最大開發樂趣可能是在設計各種更優秀的演算法來保證介面功能可用。
而測試人員則需要用各種工具(包括自己開發的,使用指令碼等)來測試各種場景。比如我挺佩服的施凡
,有段時間,他為了測試live meeting,自己在設計寫個語音機械人,來完成這個測試。
2、工作產品被很多人使用的成就感,這點大家應該都很明白,就不細說了。
上面說的是針對個人的程式設計激情,很多時候,周圍人的習慣會影響你也會慢慢具有這個習慣,這就是團隊,環境在潛移默化的感染者您。
如何讓團隊保持激情?
以下只是我個人的看法,並不一定使用於你的環境。
1、制度化,並以身作則。
比如我帶領的csdn論壇相關產品開發團隊,有個制度就是每週四,組內乙個成員介紹自己最近關注的技術。這個制度我沒有往整個公司推廣,是因為我覺得推廣到整個公司,平均分配到每個人身上,就是4、5個月才輪到乙個人一次,對於個人學習的督促作用一點用都沒有了。
2、工作節奏鬆勁輪換,不能一直以乙個節奏來進行。
該加班的時候就加班,該放鬆的時候就放鬆。注意不能一直是乙個節奏,如果一直是乙個節奏,那麼人很容易懶散。
總結:
最近在看《人月神話》,其中的很多知識點感觸很深,很淺顯的乙個道理,如果讓自己乙個人去慢慢悟的話,就不知何時才能出來。
回到本文討論的主題,如何讓自己保持激情?如何讓團隊保持激情?這是每乙個程式設計師,每乙個專案經理都要考慮的事情,只有有激情的團隊才能產生偉大的作品。才能跟上時代的步伐。
焦油坑與激情
2007年09月02日 11 15 00 先來聽我說幾個真實的故事 上週面試了乙個開發人員,這個人所有的面試題都答出來了。各方面我們需要的知識也掌握了,但是在初試中,這個人就被我們三個面試官一併否決了。原因很簡單,這個面試者提供的答案都是能解決問題,但幾乎都是效率最差的方案 另外,從一些面試題中,可...
人月神話 焦油坑
岸上的船兒,如何海上的燈塔,無法移動。荷蘭諺語 焦油坑的意思說明了即使你足夠強大,也無法擺脫束搏而沉到坑底。it專案也是這樣,不論是開發大型軟體系統還是小型專案,都會遇到諸多複雜的問題和影響因素,專案本身就是乙個足夠複雜的動態系統,沒有最優,只有滿意。專案四要素,人員,組織環境,干係人,外部依賴和約...
《人月神話》之1 焦油坑(The Tar Pit)
從很久之前就有仔細閱讀 人月神話 的想法,也嘗試過幾次,卻總是因為各種各樣的原因半途而廢。其中乙個重要的原因就是書中列舉的都是大型專案,我自己卻只參與過一些小不點專案,沒辦法把自己的經歷代入然後進行思考。但是,即使 我相信由於人員的分工,大型程式設計專案碰到的管理問題和小專案區別很大 它們之間仍然有...