偶然在網(wǎng)上看到這樣一個(gè)故事:John和Bill一起到山中探險(xiǎn),忽然他們發(fā)現(xiàn)一只老虎正深情的望著他們,John撒腿就要跑,Bill卻迅速的從背包里拿出一雙跑鞋穿在腳上,John看到后氣急敗壞的對(duì)說(shuō)Bill“你穿什么鞋也跑不過(guò)老虎的”Bill同情的看了他一眼,回答說(shuō)“我干嗎要和老虎比,我只要跑過(guò)你就夠了!
大笑以后不免想起John的境遇是不是有點(diǎn)象中國(guó)的程序員呢?我個(gè)人習(xí)慣把軟件從業(yè)人員分為初級(jí)程序員、高級(jí)程序員、系統(tǒng)分析員和項(xiàng)目經(jīng)理四大類的方法,我把優(yōu)秀程序員的標(biāo)準(zhǔn)分為職業(yè)習(xí)慣和個(gè)人能力兩方面,職業(yè)習(xí)慣包括文檔編寫習(xí)慣,規(guī)范化、標(biāo)準(zhǔn)化的編碼習(xí)慣、軟件測(cè)試習(xí)慣、模塊化開發(fā)習(xí)慣等,個(gè)人能力包括團(tuán)隊(duì)協(xié)作能力、需求理解能力、學(xué)習(xí)和創(chuàng)新能力等。我接觸過(guò)的幾百個(gè)程序員后的感覺(jué),除非那種天生適合編程的人才能成為行業(yè)的頂尖高手,按照以上標(biāo)準(zhǔn)絕大多數(shù)程序員只能歸入“平庸”之列,所以我們這里的討論主要是基于大多數(shù)“平庸”的程序員的。
故事中的John能不能活命跟三個(gè)問(wèn)題有關(guān):老虎、Bill、自己,中國(guó)程序員的困境也來(lái)自三個(gè)方面。
困境之一:老虎的威脅。程序員要面對(duì)的餓老虎實(shí)在不少,比如說(shuō)老板,好象老板就是程序員的天敵(當(dāng)然自己當(dāng)老板的程序員除外,呵呵),什么“不懂技術(shù)卻指手畫腳”、什么“得到與付出不相當(dāng)”似乎是程序員最常見的牢騷,這個(gè)問(wèn)題不可能得到真正的解決,在這里就不詳細(xì)討論了。
困境之二:Bill的競(jìng)爭(zhēng)。一般說(shuō)來(lái)中國(guó)的程序員大都是吃“青春飯”的,大部分程序員的黃金時(shí)代是24~28歲。到了30歲左右,一批又一批年輕程序員會(huì)給你帶來(lái)巨大的競(jìng)爭(zhēng)壓力。首先由于軟件行業(yè)的飛速發(fā)展,很多自己以前學(xué)的東西逐漸升級(jí)換代,而許多程序員由于長(zhǎng)期于工作,學(xué)習(xí)新知識(shí)的效率必然下降。其次自己干了幾年,薪水要求自然就高了,而年輕程序員工資又低、干活又快,當(dāng)然會(huì)成為老板的首選;第三,30歲基本都已經(jīng)成家了,要支撐家庭的生活負(fù)擔(dān),你幾乎連從頭在來(lái)的勇氣都不會(huì)有了。中國(guó)的老話說(shuō)“長(zhǎng)江后浪催前浪、一代新人換舊人”,這個(gè)歷史的規(guī)律在軟件開發(fā)行業(yè)體現(xiàn)的尤其明顯和殘酷,很多程序員必然要面對(duì)的結(jié)果就是降薪乃至失業(yè)。
困境之三:自我的實(shí)力。我們都知道人最難戰(zhàn)勝的是自己,所以自我也就是程序員需要超越的最大障礙。大多程序員都把系統(tǒng)分析員和項(xiàng)目經(jīng)理作為自己的職業(yè)目標(biāo),但這些目標(biāo)的達(dá)成,需要個(gè)人素質(zhì)、市場(chǎng)機(jī)遇等多個(gè)方面的條件,太多的程序員就是在高不成、低不就的狀態(tài)中蹉跎了歲月。對(duì)于系統(tǒng)分析員,特別需要以下幾方面的素質(zhì):客戶需求分析能力、系統(tǒng)架構(gòu)與設(shè)計(jì)能力、模塊分解設(shè)計(jì)能力、項(xiàng)目流程控制能力、項(xiàng)目風(fēng)險(xiǎn)評(píng)估能力等,而對(duì)于項(xiàng)目經(jīng)理則更注重項(xiàng)目管理方面的能力如團(tuán)隊(duì)組織能力、溝通協(xié)調(diào)能力、分析問(wèn)題解決問(wèn)題的能力以及良好的職業(yè)道德等,而這些素質(zhì)和能力往往只能依靠程序員個(gè)人的學(xué)習(xí)和努力?吹皆絹(lái)越多的程序員開始學(xué)習(xí)項(xiàng)目管理的課程,真的有點(diǎn)為他們擔(dān)心,因?yàn)楝F(xiàn)在的項(xiàng)目管理培訓(xùn)只能停留在理論和考證的程度,既沒(méi)有素質(zhì)方面的訓(xùn)練,又缺少實(shí)際軟件開發(fā)項(xiàng)目的案例,學(xué)習(xí)的結(jié)果遠(yuǎn)遠(yuǎn)不能達(dá)到預(yù)期的效果。
面對(duì)這許多困境,我們要如何準(zhǔn)備好一雙跑鞋,使自己跑的更快呢?我們認(rèn)為一個(gè)高效的方法就是到國(guó)外軟件企業(yè)工作,學(xué)習(xí)國(guó)外先進(jìn)的軟件開發(fā)經(jīng)驗(yàn),使自己成為真正的國(guó)際化人才。那么選擇哪個(gè)國(guó)家作為自己學(xué)習(xí)的對(duì)象、發(fā)展的踏板呢?
我們的第一個(gè)目標(biāo)當(dāng)然是美國(guó)。因?yàn)槊绹?guó)是世界上最大的軟件生產(chǎn)國(guó),世界500強(qiáng)軟件公司前10位,有8個(gè)公司的總部設(shè)在美國(guó)。但是近兩年來(lái),美國(guó)的IT業(yè)一直處于低谷,裁員和減薪成為美國(guó)軟件公司生存下去的重要武器。很多具有美國(guó)名校背景的中國(guó)留學(xué)生紛紛回國(guó)發(fā)展,其中一個(gè)很重要的原因就是就業(yè)形勢(shì)很差,中國(guó)程序員要去美國(guó)發(fā)展不論是尋找企業(yè)還是工作簽證都有很大困難。
我們的第二個(gè)目標(biāo)是印度。印度一直是美國(guó)最重要的軟件外包國(guó)家,印度也因此建立了世界上最完備的軟件人才培訓(xùn)體系。象印度學(xué)習(xí)更重要的是從教育體系上改變,我國(guó)軟件學(xué)院的建立就是向這個(gè)方向上的一次嘗試,雖然收效甚微,但畢竟已經(jīng)邁出了可喜的第一步。作為程序員個(gè)人如果到印度發(fā)展可就不大現(xiàn)實(shí)了,因?yàn)橛《鹊娜肆Τ杀颈緛?lái)就比中國(guó)低,而獨(dú)特的殖民文化使印度人并不認(rèn)為“軟件藍(lán)領(lǐng)”是難堪的稱呼,而中國(guó)程序員對(duì)此卻大多耿耿于懷,所以印度也不是我們的最佳目標(biāo)。
我們的第三個(gè)目標(biāo)是日本。在全球IT行業(yè)全面不景氣的大環(huán)境下,這兩年日本的應(yīng)用系統(tǒng)開發(fā)卻一直保持上升勢(shì)頭。多年的發(fā)展使日本的軟件行業(yè)具有自己的鮮明特點(diǎn),日本的軟件開發(fā)與國(guó)際通行的CMM軟件成熟度模型并不完全相同,但是雙方在某些關(guān)鍵流程上驚人的一致,比如書寫技術(shù)文檔。這樣就實(shí)現(xiàn)了高效管理與嚴(yán)格的時(shí)間控制,保證軟件的整體質(zhì)量與利潤(rùn)率。近兩年日本IT企業(yè)通過(guò)各種方式來(lái)降低人員成本,其中最主要的就包括軟件外包和外國(guó)軟件工程師輸入,中國(guó)就是日本企業(yè)吸納人才的首選對(duì)象。
有一些程序員因?yàn)椴幌矚g日本國(guó)而對(duì)赴日工作嗤之以鼻,在我們周圍,有無(wú)數(shù)事例證明了只有自己足夠強(qiáng)大才不會(huì)被別人欺負(fù),真正愛國(guó)的程序員更應(yīng)該虛心的學(xué)習(xí)別人的優(yōu)點(diǎn),兵法有云“知己知彼,百戰(zhàn)不殆”,只有我們充分了解對(duì)手的優(yōu)缺點(diǎn),客觀看待自身的問(wèn)題,才能使我們中國(guó)的軟件行業(yè)實(shí)現(xiàn)真正的跨越,超越日本,擊敗印度,抗衡美國(guó)。
真的希望能看到這樣一天:中國(guó)的程序員能面對(duì)世界自信的說(shuō)“我們是最棒的!”
您是不是該為自己準(zhǔn)備一雙跑鞋了呢?