你自然會想:我要變得很牛!至少也得成為乙個很牛的程式設計師。儘管這個問題看起來並不像其他一些同樣老掉牙的問題那麼嚴肅(如「你覺得你最大的弱點是什麼?」),但很可能你還是覺得難以回答。也許有時候你表現得太牛了,不屑於回答這樣的問題。但要小心了,你可能會冒犯別人。
在我看來,這個問題同樣是乙個相當嚴肅的問題,值得好好思考一番。不是為了應付面試官,而是為了你自己。
對於這個問題,大部分人都會選擇乙個不痛不癢的回答來敷衍面試官。但它也確實引出了乙個更為深層次的問題:乙個軟體開發人員究竟該有怎樣的職業生涯?當然,我們選擇這一行是因為我們喜歡這一行,並且幸運地得到了老天的眷顧,讓我們幹上了這一行。但你能在50歲的時候依然坐在電腦前敲**嗎?60歲呢?所以,我們得趁年輕的時候好好思考一下這個問題:作為乙個程式設計師,最完美的職業生涯應該是什麼樣的?
那我就來告訴你吧:世界上的程式設計師大致有8種境界。
1.不朽的程式設計師
這是最高境界!雖然人已經離開這個世界,但是他的**卻依然活著。他成為計算機博物館中的乙個永久收藏。其他為數眾多的程式設計師都在學習他的作品。他在生前可能獲得過圖靈獎,或者發表了大量有影響力的**,或者發明了一些影響到計算機專業課程設定的基礎技術。他已經不僅僅擁有乙個維基百科的條目;事實上,有很多專門的**都在講述他的作品以及他的生平事蹟。
在有生之年能夠達到這一境界的程式設計師屈指可數。
代表人物:dijkstra,knuth,kay。2
2.成功的程式設計師
成功的程式設計師不僅擁有廣泛的知名度,同時還運營著乙個不錯的公司,甚至控制了整個產業鏈。他們擁有絕對的自由,可以做任何自己想做的事情。他們同時還擁有把「自由」帶給廣大程式設計師同胞的夢想。
這一境界的程式設計師最受人羨慕。要達到這一境界,更多的是需要商業上的才能,而不是程式設計能力。
代表人物:比爾·蓋茨,carmack,dhh。3
3.知名程式設計師
達到這一境界的程式設計師也不錯,當然,前提是你得有乙份不錯的工作。
這個境界的程式設計師雖然在圈子裡很有名,但是成為名人並不意味著可以靠這個賺取收入並且養活自己。出名固然不錯,但成功更為關鍵。你可能在一家非常知名的大型技術公司工作,也可能在一家很有影響力的小公司或者是在乙個很有希望的創業團隊工作。不管怎麼樣,其他的程式設計師都或多或少地聽說過你,並且你對自己所在的領域有著積極的影響。
4.勝任的程式設計師
作為一名軟體工程師你非常成功,你的能力使你在工作中游刃有餘。你從來不會為得到乙份滿意的工作而發愁。你的同事也非常尊敬你。每一家你曾經工作過的公司都因為你的加盟而在某些方面得到了提公升。
但問題是:接下來你將何去何從?
5.普通程式設計師
這個境界的程式設計師基本上能夠應付一般的程式設計工作。他們自己也很清楚,由於天資所限,他們很難成為傑出的程式設計師。
人貴有自知之名。通常你的能力都會比你自認為的要低。缺乏天賦並不是什麼大不了的事情。要勇敢一點,發掘自己的特長,並且充分加以發揮。
6.業餘程式設計師
業餘程式設計師通常都熱衷於編碼。他們可能是一些很有前途的學生或實習生,也可能正在參與某些開源專案,或者利用個人閒暇時間開發一些「好玩的」應用程式或**。從他們的**和創意可以看出,他們是一群很有想法、充滿激情的人。
成為一名業餘程式設計師是件好事。這個境界的程式設計師可以通過自我提公升,迅速地勝任程式設計師這個職業。
7.低調的程式設計師
還有一些坊間流傳的比較有個性的程式設計師,如joe coder,很有能力但是沒什麼令世人矚目的成就。他們可能服務於某家大型公司。對於這些人來說,寫**僅僅是份工作而已,並非他們生活的全部。這沒什麼錯,挺好的!
8.爛程式設計師
這個級別的程式設計師技能極其匱乏(已無境界可言),他們通常是陰差陽錯地乾上這一行的。他們所做的任何事情都會給他們的同事帶來痛苦和災難—當然可能也有乙個例外,就是他們的同事也是一幫差勁的程式設計師,差到連身邊全是一幫爛程式設計師都意識不到。
應該承認,以上所有的這些境界定義得並不嚴謹。事實上,並不是所有的程式設計師在他們的職業生涯中都渴望相同的東西。思考乙個程式設計師在10年、20年、30年甚至一生的時間裡所能取得的成就,是非常有意義的!想一想,你最崇拜哪個程式設計師?到底是他的什麼成就,使得你對他如此地崇拜?
總之,你究竟想要過怎樣的生活?
高效能程式設計師的修煉
1.盡量寫的簡潔,大道至簡 if s string.empty if s 2.寫 的時候注釋要突出功能的具體實現方法,而不是要寫出該段程式實現子什麼功能,盡量用函式名就表明了這段程式所要表達的意思,程式要寫的簡單明白其它的程式設計師能夠看懂 3.向 橡皮鴨求助 這個例子,就像很多電影裡乙個人物對著乙...
關於《高效能程式設計師的修煉》
關於 高效能程式設計師的修煉 關於注釋議論,與筆者不謀而合,注釋就是 寫的不好的物證,其實 不需要注釋,自己就可以說明自己。關於老鼠 電擊和乳酪的問題,其實大家現在往往再犯加兩倍 酪的同時,也加了 5倍的電擊,最終客戶或使用者只是說一句不好用,就對辛辛苦苦一年的成果無情給扼殺了。關於寫點東西的問題,...
20131123《高效能程式設計師的修煉》
好不容易盼來了乙個週末,平時待實驗室也就算了,幹嘛到了週末還在那裡待呢。乙個人閒來在寢室沒事,就隨意看看書,寫寫東西吧。今天看到額jeff atwood的 高效能程式設計師的修煉 這本書一開始就說了,要做程式設計師,你必須是對程式設計比較熱愛的,這樣的乙個開篇再次將我轉網際網路的想法打消掉了。下面就...