35歲:我還能做程序員嗎?

          35歲:我還能做程序員嗎?

          在中國(guó),程序員不能超過35歲,似乎已經(jīng)是不爭(zhēng)的事實(shí),軟件開發(fā)工作就是青春飯,頂多靠畢業(yè)這十年的時(shí)間,超過這個(gè)年齡,要不成功躍身成為管理者,要不轉(zhuǎn)行進(jìn)入其他領(lǐng)域,好像再?zèng)]有更好的選擇,即使偶有繼續(xù)堅(jiān)持作開發(fā)的,也被看成另類一族。老外卻不是這樣,40,50歲仍然作開發(fā)工作的大有人在,甚至很多牛人,包括獲得康柏最佳軟件獎(jiǎng)的Robber,仍在埋頭作著他所喜歡的編碼工作,為何如此差異。我仔細(xì)想了一下,特別是這一年參加了太多的技術(shù)培訓(xùn),基本有了一些結(jié)論。

          首先,國(guó)內(nèi)軟件開發(fā)工作的性質(zhì)決定這一切。我們所作的產(chǎn)品開發(fā),真正技術(shù)含量并不高,高等院校畢業(yè)的學(xué)生經(jīng)過幾年的培訓(xùn)和實(shí)踐,基本都能掌握這些技能。而我們現(xiàn)有產(chǎn)品開發(fā)設(shè)計(jì)水平有限,對(duì)于軟件開發(fā)的理解還僅限于編碼,完成功能這些基本的需求,產(chǎn)品進(jìn)度是第一驅(qū)動(dòng)力,特別是一些小公司,把快速開發(fā)出產(chǎn)品作為最高目標(biāo),軟件設(shè)計(jì)質(zhì)量差,很少考慮可維護(hù)性、可擴(kuò)展性這些重要的軟件質(zhì)量屬性,僅僅追求功能和進(jìn)度,產(chǎn)品以最快的速度完成設(shè)計(jì)、編碼,少有測(cè)試甚至沒有測(cè)試,就直接交付給客戶。當(dāng)在客戶那里暴露出各種各樣的問題來時(shí),開發(fā)人員就開始不斷的為客戶解決這樣那樣的問題。軟件做到最后,很多人都會(huì)陷入自己不斷挖掘出來的“陷阱”里走不出來,步入在復(fù)雜的系統(tǒng)中查找BUG、解決BUG、增加功能、引入新的BUG、再解決BUG這樣永無休止的惡性循環(huán)中,從事的都是一些低級(jí)開發(fā)工作,對(duì)于軟件開發(fā)的理解無法上升到更高的層次,每天都疲于救火和拼命打補(bǔ)丁,軟件維護(hù)成本居高不下;即使最終擺脫了這樣的厄運(yùn)――項(xiàng)目結(jié)束,下一次軟件開發(fā)又是同樣過程的重復(fù)。

          這些無休止的低級(jí)開發(fā)和維護(hù)工作,會(huì)耗光一個(gè)人所有的激情和精力,隨著年齡的增大,熱情和體力都在衰減,而這些工作,只要畢業(yè)生經(jīng)過培訓(xùn),同樣可以勝任。有著廉價(jià)的、并且充滿熱情的畢業(yè)生作競(jìng)爭(zhēng),身心疲憊的老程序員必然面對(duì)更大的競(jìng)爭(zhēng)壓力,做到最后,連他們自己都會(huì)失去對(duì)軟件開發(fā)的興趣,甚至?xí)a(chǎn)生厭倦的情緒。對(duì)于這樣的快速開發(fā)模式,十年開發(fā)經(jīng)驗(yàn)和五年開發(fā)經(jīng)驗(yàn)有很大區(qū)別嗎?干嗎不使用更經(jīng)濟(jì)便宜的開發(fā)人員?

          另一個(gè)原因,是我們中國(guó)人一向的官本位思想。開發(fā)人員始終處于一種很尷尬的境界,聽起來從事的是高級(jí)技術(shù)工作,說起來也是“以人為本”,但是,有多少企業(yè)管理者真正重視和認(rèn)可開發(fā)人員的,哪怕是碩士,博士,這些開發(fā)人員在“大官,小官”面前,都只是普通勞動(dòng)者而已。程序員是一個(gè)沒有未來的行業(yè),哪怕資歷再深,能力在強(qiáng),也還是一個(gè)勞動(dòng)者而已,只有當(dāng)上領(lǐng)導(dǎo),走上管理才是最終的出路,否則,薪水上不去,地位上不去,只能面對(duì)被淘汰的命運(yùn)。

          實(shí)際,之所以出現(xiàn)這種問題,是由于國(guó)內(nèi)對(duì)軟件開發(fā)一直抱有一種錯(cuò)誤理解。如果軟件開發(fā)僅僅是代碼編寫,查找BUG,可以說,那確實(shí)是在做一些低級(jí)的軟件行為。做了十年的開發(fā)人員,確實(shí)不見得比作了3年的人更強(qiáng)多少,反正是簡(jiǎn)單重復(fù)的工作,工作3年的一樣可以作,而且有更大的熱情和精力。

          軟件業(yè)要發(fā)展,就應(yīng)該跳出這個(gè)怪圈,走向更高的領(lǐng)域,對(duì)軟件開發(fā)重新進(jìn)行認(rèn)識(shí)。我們要明白,軟件開發(fā)要融入工程化的思想,要有高度的設(shè)計(jì)能力,關(guān)注更多的軟件運(yùn)行屬性和設(shè)計(jì)質(zhì)量屬性。同樣的系統(tǒng),不同的軟件人員會(huì)做出完全不同的軟件,正規(guī),高效的開發(fā)團(tuán)隊(duì)要比游擊隊(duì)開發(fā)團(tuán)隊(duì)不只高出幾十倍的效率。

          軟件開發(fā),不僅僅需要關(guān)注功能、性能,更應(yīng)該去研究可維護(hù)性、可擴(kuò)展性等質(zhì)量屬性;不僅僅只關(guān)注代碼,而更要上升為設(shè)計(jì),復(fù)用等。軟件開發(fā)不能只是寫出C語言的代碼,單元測(cè)試、同行評(píng)審、培訓(xùn)與學(xué)習(xí),這些都是開發(fā)人員基本的素質(zhì),也是提高軟件質(zhì)量的最基本手段;舉例來說,單元測(cè)試做好了,就可以讓開發(fā)效率大大提高,也能讓軟件的維護(hù)成本降下來,把開發(fā)人員解放出來;同行評(píng)審可以讓開發(fā)人員之間更多的交流和溝通,在設(shè)計(jì),編碼階段嚴(yán)格控制軟件質(zhì)量;培訓(xùn)則是提高自身技術(shù)水平,從理論上提升自己的最好方法。現(xiàn)在基本上所有這些主要的質(zhì)量行為都被忽略了,而這恰恰是走出低級(jí)開發(fā)的最好途徑。同時(shí),還有更高層次的設(shè)計(jì)開發(fā)、軟件重構(gòu)、模塊化、系統(tǒng)構(gòu)架、搭建統(tǒng)一軟件平臺(tái)、度量軟件質(zhì)量等等。有了重構(gòu),就會(huì)寫出可讀性好,可維護(hù)性好的軟件,甚至因此提高自己的軟件設(shè)計(jì)能力,減少出錯(cuò)的幾率;模塊化,讓軟件最大程度的實(shí)現(xiàn)復(fù)用,提高軟件開發(fā)效率和開發(fā)質(zhì)量;軟件構(gòu)架設(shè)計(jì),從技術(shù)層次上最早決定了軟件的命運(yùn),而這里又有太多的技術(shù),設(shè)計(jì)模式,軟件規(guī)劃等,讓軟件開發(fā)從編碼上升到設(shè)計(jì)的層次,搭建統(tǒng)一軟件平臺(tái),是大產(chǎn)品,系列化開發(fā)的必然之路,對(duì)于軟件質(zhì)量的度量,會(huì)讓我們的軟件開發(fā)變得更加透明,清晰,讓我們更清楚地把握到軟件的開發(fā)過程,從各個(gè)環(huán)節(jié)去控制軟件質(zhì)量,而不是僅僅憑著感性的認(rèn)識(shí)到了最后才去補(bǔ)救。

          以上這些知識(shí),一個(gè)人,哪怕勤奮學(xué)習(xí)一輩子,也不可能完全具備所有的技能。35歲算什么,做到70歲都不晚。當(dāng)然,你需要真正的熱愛它,并且不斷得學(xué)習(xí)和進(jìn)修。所以說,軟件開發(fā)人員,要作的事情太多了,軟件實(shí)在是一項(xiàng)浩大的腦力工程,甚至?xí)屓擞X得這是一個(gè)投入/產(chǎn)出比最低的行業(yè),因?yàn)橐獙W(xué)習(xí)的知識(shí)實(shí)在太多了,每時(shí)每刻都要處于不斷的學(xué)習(xí)和更新當(dāng)中。既然選擇了,既然喜歡了,就應(yīng)該投入進(jìn)去,享樂于此了。最重要的是,我們自己能并且愿意去認(rèn)識(shí)到這一點(diǎn),跳出低級(jí)開發(fā)的怪圈,走向更高的層次。

          同時(shí),要意識(shí)到,一個(gè)資深開發(fā)人員的作用絕不亞于一個(gè)管理人員,高明的企業(yè)應(yīng)該給予相同的待遇,要把培養(yǎng)和儲(chǔ)備高級(jí)技術(shù)人才作為高科技企業(yè)的重點(diǎn)發(fā)展方向,這樣才能讓企業(yè)在人才領(lǐng)域得到不斷積累,資深開發(fā)人員才會(huì)帶出高效的開發(fā)團(tuán)隊(duì),從而開發(fā)出高質(zhì)量,高效率的軟件,讓企業(yè)在不斷激烈的競(jìng)爭(zhēng)中取勝。要明白,不是每個(gè)人都適合或者樂于轉(zhuǎn)向管理的,很多人就是適合做開發(fā)工作,他們可以走得更深入,成為專家,應(yīng)該充分發(fā)揮出他們的能力,讓整個(gè)團(tuán)隊(duì)高效運(yùn)作起來。

          所以說,開發(fā)人員,決不只是35歲,只要你愿意,可以作一生的開發(fā),從中獲得更多的快樂。????????????




          posted on 2009-10-19 18:51 luofeng225 閱讀(1368) 評(píng)論(3)  編輯  收藏 所屬分類: 軟件行業(yè)風(fēng)云

          評(píng)論

          # re: 35歲:我還能做程序員嗎? 2009-10-20 09:57 jeasonzhao

          我認(rèn)為最后一句是很重要的,但是樓主為啥打了一些問號(hào)呢?是不確定?
          我現(xiàn)在已經(jīng)慢慢的脫離程序員了,嚴(yán)格的說,工作上,我往高處走,但是在實(shí)際的生活中,我還是喜歡編碼,編碼已經(jīng)不是我謀生的主要手段,這樣,我覺得挺好,挺像一個(gè)程序員的  回復(fù)  更多評(píng)論   

          # re: 35歲:我還能做程序員嗎?[未登錄] 2009-10-28 20:08 hao

          @jeasonzhao
          個(gè)人認(rèn)為,國(guó)內(nèi)軟件大環(huán)境不好,決定不實(shí)際,  回復(fù)  更多評(píng)論   

          # re: 35歲:我還能做程序員嗎? 2010-10-07 21:54 lzx

          講的很好,現(xiàn)實(shí)環(huán)境不容樂觀,我也在苦悶?zāi)?nbsp; 回復(fù)  更多評(píng)論   

          <2009年10月>
          27282930123
          45678910
          11121314151617
          18192021222324
          25262728293031
          1234567

          導(dǎo)航

          統(tǒng)計(jì)

          公告

          我曾經(jīng)聽到這么一個(gè)故事: 一個(gè)年輕的程序員問一個(gè)老程序員(一個(gè)比較牛逼的公司的CTO) 年輕程序員: 你為什么這么牛X., 就好像沒有你不會(huì)的。老程序員: 積累的。年輕程序員: 怎么才能積累到您的程度呢。我每天都在積累。但是似乎都沒有感覺到進(jìn)步。老程序員: 我從20歲開始做到了一件事情,直到今天,而且盡可能地保證不間斷。年輕程序員: 到底是什么? 老程序員: 我每天保證自己有2個(gè)小時(shí)在學(xué)習(xí)新的東西。

          常用鏈接

          留言簿(3)

          隨筆分類

          隨筆檔案

          文章分類

          相冊(cè)

          收藏夾

          Java Website

          java技術(shù)博客

          搜索

          最新評(píng)論

          閱讀排行榜

          評(píng)論排行榜

          主站蜘蛛池模板: 香港| 都兰县| 宁强县| 巩义市| 通海县| 宜良县| 旅游| 房产| 延川县| 天祝| 宝兴县| 汪清县| 探索| 云浮市| 广丰县| 平遥县| 兰考县| 洛南县| 江都市| 江永县| 麻栗坡县| 泰顺县| 格尔木市| 大安市| 商城县| 特克斯县| 五峰| 南投市| 平顺县| 兴安盟| 扶余县| 扬州市| 广灵县| 馆陶县| 库车县| 锦屏县| 宜丰县| 伊川县| 霸州市| 高陵县| 肇源县|