怎麼算是優秀的程式設計師--寫給工作2,3年了的同行

zy178327331發表於2008-12-23
很多程式設計師在幹了兩三年後,會有一陣子的迷惘,他們在想,我這樣子的算是優秀的程式設計師嗎?這日子一天一天的過,每天不斷的重複,也不知道幹了些什麼。其實當你有這個迷惘的時候,證明你最少是一個熟手了,不是剛畢業那會,急著工作,什麼都不會,凡事現學,那時候想不到這個問題。當你做了兩三年,公司裡的專案基本都對你不陌生了,你也算是這個公司的老人了,對於寫程式碼完成任務,非常容易了。這個時候人很容易感到厭倦,弄來弄去還是這點東西,沒勁啊。這個時候特想知道別人是怎麼過來的,別人每天都在幹嗎。我是不是要學點新的東西了呢。 

  其實要解決這個困惑,首先要定好自己的位,看看自己在上百萬的程式設計師大軍中究竟處在什麼位置。簡單來說,世界上的公司只有兩種,大公司和小公司。大公司做大專案,小公司做小專案。大專案程式複雜,使用者龐大,資料量也龐大。買的硬體都是大傢伙,都用IBM 的大機器,那小專案呢,針對一家小公司,或者做個產品,賣給一些小公司用。其實說起來,大小專案用的技術都是差不多的,大專案用java,小專案也用java,大專案要排序,小專案也要排序,程式設計師會的知識,到哪裡都不過時,你遇到的問題大家都會遇到。但是話說回來,大專案還是能讓人見世面的,處理上百萬條資料的做法,和處理幾百條肯定是不一樣,老在小公司裡做的人,的確有可能成為井底之蛙。大的專案要更嚴謹,更要求效率,更不能浪費,而且負荷一大,什麼都顯形了,這就人群一樣,當風平浪淨的時候,誰都是聰明人,誰也不服誰,一旦有了大壓力,大災難,比如說一顆炸彈丟進地鐵裡,這個時候還能沉得住氣,做出冷靜分析的人,那才是真正的高人。 大專案也是這樣,高負荷測試,誰寫的模組效率不足,立刻就顯示出來了。 

  有的人說了,那我也沒辦法啊,世界500強能招多少人啊,我也沒機會體驗那大專案大規則啊。其實凡事在個人,在一個小專案裡,你同樣可以嚴格遵循遊戲規則,流程圖該畫就畫,UML模型圖該更新就更新,程式碼規範該遵守就遵守,文件改寫還寫,效率該要求還要求。這些個步驟,你都一一執行,不要給自己找個理由就省略了,有的人可能說,我忙呀,沒空啊,客戶催的緊啊,誠然,你有時候是很忙,但是你不可能一直都這麼忙,你總有空下來的時候,空的時候就可以把這些該做的做了。大部分情況下,我們並不是忙的顧不了,而是因為懶惰,公司又不是我的,我那麼辛苦幹什麼呢,人一這樣想,就沒有動力去佈置這些事情了,反正能過則過,能拖則拖吧,抱著這個思想,混了一天又一天。機會都是自己掙來的,不是別人給你的,老等著別人給你機會,強迫你走流程,你就永遠沒有機會了。 

  還有一部分人,也很敬業,該做的也都做了,對得起老闆也對得起自己。但是覺得做來做去都是這點東西,一點新意都沒有,完全沒有了激情,每天機械似的的上班下班,十分苦悶。其實計算機的發展日新月異,個人是不可能瞭解到全部東西的,就算你覺得自己掌握了很多很多知識,完全沒有問題了,事實上你掌握的知識也不足十萬分之一,你所以感到乏味,是因為自己給自己下了套子,把自己捆住了。井底之蛙的問題並不在於它的位置在井底,而在於這個青蛙失去了前進的動力,覺得這口井就是世界了,實際上只要再多走一部,就可能發現井底的暗流,再多遊一點,就可能發現暗渠,即便在地下,青蛙也還是有非常多的活動空間的。類比到人,不管你這個專案用的什麼技術,不管你已經寫了多少遍了,總有你沒發現的祕密,這個函式你用的多,說不定還有更好的函式你沒注意過,那個比這個效率更好,功能更多。 

  是啊是啊,你說的都很對,我也一直在學,一直在看,可是感覺好像到了瓶頸一樣,頂不上去了,辛苦多日,效果不大呀。 

  好,你有了進步的動力,現在還得需要進步的方法了,如果你一直收效甚微,說明你該換個辦法嘗試一下了,辦法簡單說就有一個,走出去,對於這一個辦法,你得跳出自己的小圈子,去看看外面的世界,比如說你用struts相當一段時間了,感覺沒什麼突破了,你就要拋開你這個專案,去struts的圈子裡,更廣泛的去接觸一下這個方面的程式設計師,看看別人在做什麼專案,別人遇到了什麼問題,是否能和你產生共鳴,是否幫你解決了困惑很久的一個問題,或者你也可以幫助那些初入門的學生,助人是很快樂的,對自己也是很有好處的。慢慢的你甚至可以和struts的官方聊上幾句了,甚至可以指出他們軟體的錯誤和弊端了,這個時候你的水準已經很高了。 

  恩,不錯,我自己也覺得我比較高了,但是我還是很困惑,現在新的技術天天出來,人家現在都玩AJAX了,我還不會玩呢,我焦慮啊,我著急啊,怎麼辦呢,什麼都學吧,一沒時間,二也學不會呀。真難過。 

  沒什麼可難過的,人人都有自己的侷限,每個人都只能掌握一點內容,妄想說撒撒都懂,那是剛畢業的學生的簡歷上才這麼寫的。你只需要成為一個領域的專家就夠了,不需要樣樣精通。但是也別過了頭,自持是公司的老員工,自持是非常熟悉了某個框架,就不肯進步了,吃老本也是不行的。當你有空的時候,當你不那麼忙的時候,你也得出去看看,最近有什麼新的動向,看看雅虎被合併了沒,看看百度又推出了什麼產品,看看現在是什麼趨勢,什麼語言挺吃香,這些東西你不必專門研究,但是你得知道,你得了解時代的形式,你得知道現在大家不怎麼用VB了,得知道JDK已經出了1.6了。這些工作不用你費勁心思的去研究,只要你空下來的時候,別去看小說,跑來看看IT的動態就行了。

相關文章