程序員的德行

          Posted on 2006-07-27 15:01 無(wú)為 閱讀(468) 評(píng)論(0)  編輯  收藏 所屬分類: 禪語(yǔ)

          程序員的德行
          (文章來(lái)源:登龍門人力資源網(wǎng)絡(luò)?作者:趙月旺)?

            程序員一定要除了基本的道行修煉外。更重要的是德行修煉。德行=合作能力或溝通能力。對(duì)于規(guī)模大,生命周期長(zhǎng)(特別是衍生生命周期長(zhǎng))的軟件項(xiàng)目而言,德行更重要。
            德行的標(biāo)準(zhǔn)
            軟件開(kāi)發(fā)離不開(kāi)企業(yè),企業(yè)的文化決定著程序員的行為規(guī)范,比較理想的企業(yè)文化是:
            溝通方式開(kāi)放、自由、平等,個(gè)人長(zhǎng)期發(fā)展和企業(yè)發(fā)展的有限度統(tǒng)一。這樣的企業(yè)文化,必然會(huì)造就具有長(zhǎng)遠(yuǎn)眼光和冒險(xiǎn)精神的將帥之才。
            這方面的楷模是微軟公司,該公司全球員工平均年齡只有28歲,無(wú)論在全球的哪家公司,微軟評(píng)判人才的標(biāo)準(zhǔn)都是相同的。挑選員工的第一標(biāo)準(zhǔn)是應(yīng)聘者是否具有良好的品德。微軟認(rèn)為,良好的品質(zhì)是職業(yè)道德的基礎(chǔ)。其次,看應(yīng)聘者解決問(wèn)題的能力如何,在面對(duì)困難時(shí)是退縮,還是勇往直前,因?yàn)閷?shí)際工作中常有新問(wèn)題需要解決。第三,要測(cè)試應(yīng)聘者有沒(méi)有快速學(xué)習(xí)的能力,日新月異的技術(shù)發(fā)展要求有快速學(xué)習(xí)能力。另外,團(tuán)隊(duì)精神、責(zé)任心、工作熱情、創(chuàng)新精神和獨(dú)立工作能力都是必須的。
            好的企業(yè)文化熏陶出來(lái)的程序員,必然是關(guān)注個(gè)人長(zhǎng)遠(yuǎn)發(fā)展的職業(yè)精英,這樣的程序員必然會(huì)較早地設(shè)定自己的職業(yè)發(fā)展管道。比如:
            管理序列:程序員->項(xiàng)目管理人員->中級(jí)管理人員->高級(jí)管理人員;
            技術(shù)序列:程序員->高級(jí)程序員->需求分析師\\架構(gòu)工程師\\質(zhì)量管理;
            市場(chǎng)序列:程序員->售前支持->銷售;
            與這樣的個(gè)人職業(yè)發(fā)展管道相適應(yīng)的個(gè)人技能是:
            ——軟件基礎(chǔ)理論扎實(shí);
            ——系統(tǒng)分析與設(shè)計(jì)能力較強(qiáng);
            ——具有熟練的系統(tǒng)開(kāi)發(fā)、系統(tǒng)測(cè)試與系統(tǒng)維護(hù)技術(shù)和管理技能;
            ——較強(qiáng)的項(xiàng)目管理能力和交流與組織協(xié)調(diào)能力;
            ——在企業(yè)既能適應(yīng)軟件產(chǎn)品研發(fā),又能適應(yīng)項(xiàng)目管理崗位;
            ——具備獨(dú)立工作能力和創(chuàng)新意識(shí)。
            在項(xiàng)目開(kāi)發(fā)過(guò)程中,有效溝通非常重要,溝通的形式多種多樣,除了常見(jiàn)的幾種方式外,下面講幾種比較有特點(diǎn)的溝通方式:
            *?歷史和現(xiàn)在
            如何最大程度地挖掘過(guò)去成果的價(jià)值,需要講過(guò)去的成果(算法,code,設(shè)計(jì)思想等)進(jìn)行再組織,使之可以被快速檢索。
            *?標(biāo)準(zhǔn)化
            “最好的溝通是沒(méi)有溝通”,通過(guò)標(biāo)準(zhǔn)化的技術(shù)手段,使個(gè)人的輸出可以被他人非常容易地了解,這樣可以避免溝通帶來(lái)的效率低下。
            *?技術(shù)一致性
            軟件技術(shù)的發(fā)展,使得程序員這個(gè)職業(yè)需要不斷細(xì)分,這帶來(lái)的最大問(wèn)題是不同技術(shù)間的互通問(wèn)題。為此,在程序開(kāi)發(fā)過(guò)程中,需要不斷進(jìn)行的技術(shù)預(yù)研變得越來(lái)越重要。并且,只要滿足功能需求,就采用最簡(jiǎn)單的實(shí)現(xiàn)技術(shù)。
            *?簡(jiǎn)單性
            程序規(guī)模變得越來(lái)越龐大的同時(shí),修正Bug的代價(jià)程指數(shù)級(jí)增長(zhǎng)。因此,盡量少用比較容易犯錯(cuò)誤的編程技術(shù)(比如C語(yǔ)言的指針),盡量采用簡(jiǎn)單(犧牲效率)的算法,接口間盡量少一些“合并點(diǎn)”,將是非常有價(jià)值的。
            不良的德行
            盡管國(guó)內(nèi)程序員有一些普遍的優(yōu)點(diǎn):比如有雄心壯志,面對(duì)困難時(shí)比較堅(jiān)毅,理論基礎(chǔ)、尤其是數(shù)學(xué)功底扎實(shí),編程能力強(qiáng),吃苦耐勞、講紀(jì)律、講服從等。
            而缺點(diǎn)也是突出的:創(chuàng)新精神不足,做事缺乏主動(dòng),獨(dú)立從事研究的能力弱,對(duì)很多事沒(méi)有主見(jiàn),而且有想法不直接說(shuō),對(duì)新知識(shí)了解不夠,不善于與人交流,缺乏合作精神。
            還有一些缺點(diǎn):不誠(chéng)實(shí)——表現(xiàn)在答應(yīng)了的事不去做;貪小便宜——用公司設(shè)備辦私事;不夠踏實(shí)——急功近利,擅長(zhǎng)做表面文章。
            這些不良德行在實(shí)際的程序開(kāi)發(fā)中表現(xiàn)如下:
            *?濫用不變量,以自己模塊調(diào)試通過(guò)為最高目的
            大家知道,程序中到處存在著“瓶頸”,這些瓶頸是造成程序運(yùn)行時(shí)不穩(wěn)定的最重要的因素之一。比方說(shuō),在模塊接口間定義了一個(gè)用常數(shù)開(kāi)辟的內(nèi)存空間。消除這些瓶頸要從幾個(gè)方面入手:
            ——采用技術(shù)手段減少不變量的使用,不要給別人造成麻煩;
            ——集中使用不變量,方便自己的上司作出Bug修正決定;
            ——應(yīng)用各種異常捕獲機(jī)制,在不變量導(dǎo)致的異常出現(xiàn)點(diǎn)進(jìn)行精確定位;
            *?不尊重文檔,契約意識(shí)淡薄
            應(yīng)該把文檔看成法律合同,要認(rèn)真書(shū)寫(xiě),完全徹底地遵守。并且,一旦發(fā)現(xiàn)定義模糊的地方,應(yīng)該及時(shí)通報(bào)作者進(jìn)行適當(dāng)修正。
            *?不寫(xiě)或少寫(xiě)注釋,小農(nóng)思想嚴(yán)重
            程序是共有的,模塊是不能獨(dú)活的,注釋可以幫助測(cè)試人員和維護(hù)人員的工作,并且,特別利于軟件重用,最大限度地延長(zhǎng)模塊的生命周期;
            *?不關(guān)心他人的進(jìn)度,個(gè)人利益高于以前
            開(kāi)發(fā)進(jìn)度的平衡是一個(gè)項(xiàng)目成功的重要標(biāo)志。個(gè)人的能力是不平衡的,每個(gè)人的工作量也是不平衡的。關(guān)心他人的進(jìn)度,并在適當(dāng)時(shí)機(jī)施以援手,將最大程度地消除開(kāi)發(fā)進(jìn)度中“人的瓶頸”。要知道:團(tuán)隊(duì)成功是個(gè)人成功的前提;
            *?不借鑒他人的閃光點(diǎn),偏重技術(shù),忽視德行,難成大器
            創(chuàng)新分精神創(chuàng)新和內(nèi)容創(chuàng)新。有一個(gè)有趣的現(xiàn)象,大家大概都經(jīng)歷過(guò),比如:A在他負(fù)責(zé)的模塊內(nèi)用了一個(gè)算法,得到領(lǐng)導(dǎo)表?yè)P(yáng);B就另外寫(xiě)一個(gè)算法,可能B的算法要好,但,站在整個(gè)項(xiàng)目的角度看,B的行為是有害的,因?yàn)樗麚p害了溝通的效率(領(lǐng)導(dǎo)要分別看兩個(gè)算法,測(cè)試員要策兩種算法,維護(hù)人員就更苦了)。
            企業(yè)的德行
            IT界普遍認(rèn)為國(guó)內(nèi)IT教育在課程設(shè)置上存在不足,比如課程陳舊,學(xué)生的動(dòng)手能力差,缺乏實(shí)踐經(jīng)驗(yàn)。很多企業(yè)抱怨,學(xué)生到了企業(yè)后,不好用,企業(yè)不得不再培訓(xùn)一段時(shí)間才能用,所以,很多企業(yè)不愿選擇應(yīng)屆生,而喜歡從社會(huì)上招聘。實(shí)際上是這樣嗎?
            這實(shí)際上反映了國(guó)內(nèi)軟件企業(yè)的規(guī)模比較小,偏重只有較短生命周期的應(yīng)用軟件開(kāi)發(fā),所以,這些企業(yè)在自身資源有限和發(fā)展定位上的“鼠目寸光”決定了他們對(duì)人才需求的的急功近利。
            實(shí)際上,培養(yǎng)剛從學(xué)校出來(lái)的大學(xué)生是最合適的人才選拔方式。學(xué)生剛剛踏上社會(huì),對(duì)職業(yè)的理解可以從0開(kāi)始塑造,這樣建立起來(lái)的團(tuán)隊(duì)特別整齊。這可以從每年跨國(guó)公司的校園招聘會(huì)上得到證明。

          posts - 10, comments - 0, trackbacks - 0, articles - 3

          Copyright © 無(wú)為

          主站蜘蛛池模板: 荣昌县| 靖宇县| 方城县| 田阳县| 洛宁县| 东丰县| 公安县| 宝坻区| 寿阳县| 南陵县| 长沙市| 新化县| 湛江市| 新乡县| 合山市| 平远县| 从化市| 章丘市| 江源县| 洛浦县| 高清| 英超| 雷波县| 铅山县| 克拉玛依市| 漠河县| 三台县| 巴彦淖尔市| 阿荣旗| 伊川县| 托里县| 临邑县| 泸水县| 凤凰县| 色达县| 墨玉县| 收藏| 克拉玛依市| 响水县| 松江区| 鹤岗市|