程序員五大層次,你屬于哪一層?
當(dāng)前位置:點晴教程→知識管理交流
→『 技術(shù)文檔交流 』
軟件界一個無可爭議的事實是,不同程序員的效率有差別,而且差別很大。許多專家將優(yōu)秀程序員和一般程序員區(qū)分地很清楚。
大多數(shù)研究得出結(jié)論認(rèn)為,一般程序員跟優(yōu)秀程序員之間在工作效率和質(zhì)量上存在10:1的關(guān)系:優(yōu)秀程序員和水平較差的程序員的編碼時間比例為1:20;debugging時間比為1:25;代碼數(shù)量比是5:1;程序執(zhí)行速度比例是10:1。而且發(fā)現(xiàn),程序員的代碼質(zhì)量和效率跟工作經(jīng)驗沒有關(guān)系。 讓我們看看一些軟件大腕們是如何看待優(yōu)秀程序員和一般程序員的: randall e. stross:無論是從軟件標(biāo)準(zhǔn)、創(chuàng)造性、開發(fā)速度、還是設(shè)計思路或者解決問題的能力上來說,優(yōu)秀程序員比差的程序員都何止好一點。 bill gates:一個優(yōu)秀的機床工值一個一般機床工的好幾倍,而一個優(yōu)秀程序員值一個一般程序員的10000倍。 robert c. martin:90%的代碼是由10%的程序員寫出來的。 就我個人從事編程行業(yè)25年、從事過六家軟件公司的經(jīng)歷來看,10:1這個定律千真萬確。基于這一定律以及程序員工作效率的差別,程序員因此被分為五大類: 1. 大師級程序員(visionary/artist programmer) 大師級程序員是軟件界絕對的稀有種族,他們可以創(chuàng)造出99.9%的程序員所創(chuàng)造不出來的東西。他們發(fā)明新的應(yīng)用和軟件模式來驅(qū)動軟件產(chǎn)業(yè)的發(fā)展。napster, netscape以及world wide web都是大師級程序員創(chuàng)造的。對他們而言,軟件更多的是藝術(shù)而非科學(xué)。在這個級別,速度和質(zhì)量不是最重要的,他們創(chuàng)造出的財富才是最重要的。許多開發(fā)團隊或者公司頂多也就一個大師級程序員,通常是這個公司的技術(shù)創(chuàng)始人或者cto。 2. 開拓者程序員(trailblazer programmer) 開拓者程序員通常帶來很好的主意和趨勢。他們通常是最終產(chǎn)品的原型創(chuàng)作者,他們一天做出的事情大部分程序員需要幾周甚至幾個月。開拓者程序員總是在嘗試新工具、新技術(shù),不斷地學(xué)習(xí)和搜尋方法來提高工作效率,并通常是其他程序員的導(dǎo)師和老師,而且你經(jīng)常會發(fā)現(xiàn)當(dāng)其他程序員早已離開的時候他們卻依然工作到深夜。盡管這樣級別的程序員工資很高,但是每個成功的公司或團隊還是應(yīng)該配備一兩個開拓者程序員。 3.骨干程序員( workhorse programmer) 骨干程序員是一個公司或者開發(fā)團隊的脊柱,這些人盡管不是很有創(chuàng)新性,但往往比較高效且值得信賴。給一位骨干程序員一套模板和合適的工具,他們總能以最短的時間交出錯誤最少的代碼。 4.機械程序員( drone programmer) 許多程序員就是朝九晚五地為了填塞下自己錢包的機械程序員。他們不愿意接觸新技術(shù)、避免學(xué)習(xí)新事物。許多公司或者開發(fā)團隊都有許多這樣的機械程序員,因為他們很便宜,但豈不知更貴的程序員才真正地更便宜。 5.白癡程序員( idiot programmer) 林子大了什么鳥都有,軟件領(lǐng)域也不例外。編程需要抽象和邏輯思維,然而一些尚不具備此能力者由于向往著不錯的薪水而加入了該領(lǐng)域。白癡程序員總是對最簡單的算法也搞不清楚,他們總是錯過軟件截止日期,終日無所獲。白癡程序員最好的出路就是換行。 該文章在 2010/7/25 2:00:48 編輯過
|
關(guān)鍵字查詢
相關(guān)文章
正在查詢... |