軟件工程師的職業建議

作者: 阮一峰

什么樣的人適合當軟件工程師?

下面的職業建議分別來自臺灣的侯捷老師,以及美國的著名程序員尼古拉斯.澤卡斯(Nicholas C. Zakas)。我覺得這些建議非常好,很有啟發,不僅適合 IT 行業,也適合其他行業。

興趣 #

雖然很多人在選擇職業時受到家庭、環境等方面因素的影響,不一定能從事自己非常感興趣的工作,但是如果可能的話,一定要以興趣為要。這樣在工作時會很開心,在個人發展方面也會取得很好的成就。

因為只有興趣才能使你樂在其中,樂在其中你才會產生熱情,充滿熱情才能使你做到卓越。

認知 #

認知影響態度,態度決定一切。

侯捷老師認為,一個人在選擇發展道路時,尤其重要的是要對自己有一個正確的認知。每個人的興趣可能會變,有些人看到某個行業有發展,有前途,因此對這個行業、這條路產生很大興趣,這是非常可能的。但是每個人的本質基本不變,你是否甘于寂寞,是否能夠與寂寞為伍?你的抗壓性怎樣?你的毅力強不強?你的心理素質如何?這些特質都是不易改變的,而且只有你自己才能給出這些問題的準確答案。只有對自己有了正確的認知后,才能決定往哪個方向發展。

他認為,做 IT 產業非常寂寞,也非常辛苦,大家可能在周末的晚上都要加班,這就要求從事該產業的人必須甘于寂寞,具備一定的忍耐力。侯捷先生在年輕的時候非常努力,曾被稱為部門的“門神”,通常都是最早來,最晚走。他認為如果一個人喜歡交際應酬,喜歡公關,就應該盡早離開這個行業,因為選擇道路一定要忠實于你的本質、你的興趣。

我補充一點,軟件工程師主要跟機器打交道,而不是跟人打交道。有時,你會整整一天坐在電腦屏幕前,不說一句話,全神貫注地調試軟件。所以,如果你特別喜歡社交場合,喜歡跟人互動,你可能不適合當軟件工程師。

EQ(情商) #

有能力讀完大學的人,聰明才智基本上處于同一水平,沒有人可以憑借聰明就可以取得成功。尤其是在進入社會后聰明才智已經退為次要位置,人們更重視 EQ 方面的東西,包括你的人際關系能力、溝通表達能力,抗壓性、處理危機的能力等等。

學技術要掌握本質 #

我們在學習技術時應該注意掌握技術的本質性、不變性和可復用性。本質的東西不易變,不易變就可復用,這三者是一體的。

在接觸先進的技術時,如果我們能將它的底層結構 、本質性的東西搞清楚,會給我們帶來莫大的幫助。本質性、結構性的東西屬于基礎建設方面的問題,它對我們做項目可能不會帶來直接的幫助,但在無形中會帶來很大的影響,無形的通常是最寶貴的!世界上沒有萬變不變的手法,只有萬變不變的宗旨。

刻苦修煉內功 #

學武的人都必須從最基本的馬步、吐納等內功方面學起,招術很重要,但如果沒有內功方面的基礎,招術也只能停留在基本的層面,不會到達很高的成就。

在技術追求方面也一樣,我們有時候會太熱心于學習業界的新技術,每一樣都想沾一點。其實不必太急,基本功的東西更重要,研究得扎實一些,招術就比較容易創作了。

唯堅持得成功。 #

堅持、毅力對一個人的成功是最重要的。有一句話說:在大樹底下站久了,樹陰就是你的。

侯捷老師自認才能平庸,但很能堅持。他的這個個性在朋友之間是被稱道的。雖然有時堅持并不代表一定成功,但只有堅持才能有成功的機會。年輕時盡量刻苦一些,使肉體承受最大的痛苦,年齡稍大一些的時候才能享受成果。有一句話“退一步海闊天空”,但侯捷先生更希望大家“撐一下海闊天空”,一試再試做不成,再試一下。

不要別人點什么,就做什么 #

尼古拉斯.澤卡斯的第一份工作,只干了8個月,那家公司就倒閉了。他問經理,接下來他該怎么辦,經理說:

”小伙子,千萬不要當一個被人點菜的廚師,別人點什么,你就燒什么。不要接受那樣一份工作,別人下命令你該干什么,以及怎么干。你要去一個地方,那里的人肯定你對產品的想法,相信你的能力,放手讓你去做。“

他從此明白,單單實現一個產品是不夠的,你還必須參與決定怎么實現。好的工程師并不僅僅服從命令,而且還給出反饋,幫助產品的擁有者改進它。

推銷自己 #

澤卡斯進入雅虎公司以后,經理有一天跟他談話,覺得他還做得不夠。

”你工作得很好,代碼看上去不錯,很少出Bug。但是,問題是別人都沒看到這一點。為了讓其他人相信你,你必須首先讓別人知道你做了什么。你需要推銷自己,引起別人的注意。“

他這才意識到,即使做出了很好的工作,別人都不知道,也沒用。做一個角落里靜靜編碼的工程師,并不可取。你的主管會支持你,但是他沒法替你宣傳。公司的其他人需要明白你的價值,最好的辦法就是告訴別人你做了什么。一封簡單的 Email:”嗨,我完成了 XXX,歡迎將你的想法告訴我“,就很管用。

學會帶領團隊 #

工作幾年后,已經沒人懷疑澤卡斯的技術能力了,大家知道他能寫出高質量的可靠代碼。有一次,他問主管,怎么才能得到提升,主管說:

”當你的技術能力過關以后,就要考驗你與他人相處的能力了。“

于是,他看到了,自己缺乏的是領導能力,如何帶領一個團隊,有效地與其他人協同工作,取到更大的成果。

生活才是最重要的 #

有一段時間,澤卡斯在雅虎公司很有挫折感,對公司的一些做法不認同,經常會對別人發火。他問一個同事,后者怎么能對這種事情保持平靜,同事回答:

”你要想通,這一切并不重要。有人提交了爛代碼,網站下線了,又怎么樣?工作并不是你的整個生活。它們不是真正的問題,只是工作上的問題。真正重要的事情都發生在工作以外。我回到家,家里人正在等我,這才重要啊。“

從此,他就把工作和生活分開了,只把它當作“工作問題”看待。這樣一來,對工作就總能心平氣和,與人交流也更順利了。

自己找到道路 #

澤卡斯被提升為主管以后,不知道該怎么做。他請教了上級,上級回答:

”以前都是我們告訴你做什么,從現在開始,你必須自己回答這個問題了,我期待你來告訴我,什么事情需要做。“

很多工程師都沒有完成這個轉變,如果能夠做到,可能就說明你成熟了,學會了取舍。你不可能把時間花在所有事情上面,必須找到一個重點。

把自己當成主人 #

澤卡斯每天要開很多會,有些會議根本無話可說。他對一個朋友說,我不知道自己為什么要參加這個會,也沒有什么可以貢獻,朋友說:

”不要再去開這樣的會了。你參加一個會,那是因為你參與了某件事。如果不確定自己為什么要在場,就停下來問。如果這件事不需要你,就離開。不要從頭到尾都靜靜地參加一個會,要把自己當成負責人,大家會相信你的。“

從那時起,他從沒有一聲不發地參加會議。他確保只參加那些需要他參加的會議。

最后生成于 2018-7-9 08:15:49

体彩7位数