色尼玛亚洲综合影院,亚洲3atv精品一区二区三区,麻豆freexxxx性91精品,欧美在线91

尋找成為開發(fā)高手的密匙

  編者按:每個(gè)程序員都希望自己在技術(shù)方面更進(jìn)一步,成為程序達(dá)人,開發(fā)高手,技術(shù)大師……;這不僅能獲得更好的職位和更高的報(bào)酬,更重要的是,開發(fā)高手還代表著一個(gè)開發(fā)者對自己的肯定以及對技術(shù)夢想的忠誠與追求。但如何成為一個(gè)開發(fā)高手呢?也許我們能從下面這篇博文中獲得一些啟發(fā)。作者Rick Wagner是一位Java企業(yè)級架構(gòu)師,具有二十多年的開發(fā)經(jīng)驗(yàn)的資深程序員和COBOLE語言的愛好者。他在文章中指出初級程序員與頂級程序員的根本區(qū)別在于所掌握技術(shù)的“廣度”和“深度”,Rick認(rèn)為這是程序入門者向程序高手進(jìn)階的關(guān)鍵

     20年前,當(dāng)我剛開始從事數(shù)據(jù)處理方面的開發(fā)工作時(shí),我在一家為銀行承擔(dān)外包工作的公司工作。開始我只是一個(gè)實(shí)習(xí)生,畢業(yè)后進(jìn)階為程序員的第一級——“初級程序員”。其實(shí),在我們公司內(nèi)部,對這些Title都做了一些神秘的標(biāo)識,比如我的初級程序員的標(biāo)識是“E07”。

  不久,我發(fā)現(xiàn)了我們公司是如何對程序員的級別進(jìn)行標(biāo)識的:
  ◆ 初級程序員 = E07
  ◆ 程序員 = E08
  ◆ 高級程序員 = E09
  ◆ 超級英雄 = E10 (一種非常罕見的品種)

  這些級別不單代表技術(shù)能力,還有薪水,當(dāng)然,薪水是與這些級別排名緊密相關(guān)的,這是不會變的,不管是20年前還是現(xiàn)在。

  像所有初級程序員一樣,我希望自己用一到兩年的時(shí)間在E07級別工作,然后逐漸向上爬。但有件事一直令我困惑:那些進(jìn)階最高級別的程序員與一直停留在初級的程序員之間到底有什么不同?

  一天,我與一個(gè)非常棒的E10程序員一起開發(fā)一個(gè)項(xiàng)目,他叫James。在這個(gè)項(xiàng)目的過程中,我們進(jìn)行了愉快的交談,他的話令我印象深刻:“工作都一樣,無論你是E07還是E10”。

  我當(dāng)時(shí)目瞪口呆。在那一刻,我意識到,在這個(gè)項(xiàng)目中我所做的工作與James所做的一樣重要。我當(dāng)時(shí)在做數(shù)據(jù)分析和編碼,James也在做數(shù)據(jù)分析和編碼。雖然他以最高級別的E10在工作,但他所用的編譯器我也在用;他所用的數(shù)據(jù)我也在用;他所用的開發(fā)環(huán)境也跟我一樣。如果他所做的部分遇到困境,我所做的部分也將遇到阻礙。在這個(gè)項(xiàng)目中,我們同行。

  別誤會我的意思,雖然所做的工作一樣,但初級程序員肯定不如那些程序大牛值錢。今天,我不得不承認(rèn)這個(gè)被廣泛接受的事實(shí)。但那時(shí),我的這個(gè)想法給我?guī)聿豢晒懒康暮锰帲钡浇裉臁?/p>

  我試圖尋找我與E10的朋友們到底有哪些區(qū)別。我和他之間到底有哪些不同?我得到的結(jié)論是,至少在兩個(gè)方面他比我更優(yōu)秀:廣度和深度

  廣度意味著在技術(shù)方面可支配的工具、技能和方法廣泛的多。當(dāng)時(shí),我只具備一些COBOL編程經(jīng)驗(yàn);而E10的朋友不單會COBOL,還精通于匯編、JCL(一種工作控制語言)、操作系統(tǒng)等等多項(xiàng)技能。在今天,這等于一個(gè)只會Java的程序員站在另一個(gè)Java程序員身邊,他身邊的這位同時(shí)還知道C++、C#、Ruby、Python、Erlang以及每一種語言的流行框架。如果一個(gè)項(xiàng)目只是需要使用Java,那這兩個(gè)Java程序員是平等的。但如果下一個(gè)項(xiàng)目需要更多的技術(shù),這種平等的情況就會發(fā)生改變。

  另一個(gè)方面是深度,是指在其工作領(lǐng)域內(nèi)的知識含量和功底。在過去,我所編寫的COBOL代碼也許跟我的E10朋友一樣好。但如果我的程序有一個(gè)Bug,我的辦法只是看著診斷報(bào)告不斷進(jìn)行調(diào)試。我的朋友不單會做這些,他還會閱讀一些核心轉(zhuǎn)儲的數(shù)據(jù),將一些重要數(shù)據(jù)轉(zhuǎn)變成匯編程序(他可以從中獲得一些啟發(fā))等等。在另一個(gè)我們一起進(jìn)行界面編程的項(xiàng)目中,他可以更好的理解我們所操作的平臺并知道如何完美的利用這個(gè)平臺所提供的功能。同樣,我的源碼可能跟他的沒什么太大區(qū)別,但如果我們需要向下一個(gè)級別進(jìn)階……是的,我們之間有一個(gè)明顯的分界線。

  在今天的世界里,這可能意味著程序牛人可以知道如何調(diào)整JVM,選取有用的數(shù)據(jù)分析工具;程序牛人知道如何安裝、配置、調(diào)試和配置平臺。牛人知道如何建立編譯環(huán)境,而初級程序員也許只知道按照已經(jīng)確定的方案(平臺)進(jìn)行開發(fā)。

  技術(shù)的廣度和深度,我想,我找到了成為高手的密匙。我需要學(xué)習(xí)更多并努力提到自己的廣度和深度(直到今天,我還在努力!)。20多年前與James的一席談使我知道自己哪里需要提高,這對我在事業(yè)方面的促進(jìn)比我想象的大得多。如果你是這個(gè)行業(yè)的新手,希望上面所提到的這些能夠幫到你。

  Happy Coding!

  原文:A secret key to 'Senior' level programming

  鏈接:http://rickwagner.blogspot.com/2010/02/secret-key-to-senior-level-programming.html

it知識庫尋找成為開發(fā)高手的密匙,轉(zhuǎn)載需保留來源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請第一時(shí)間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 宜章县| 会泽县| 克什克腾旗| 宜兴市| 塘沽区| 莲花县| 海安县| 新干县| 阳新县| 门头沟区| 霍邱县| 合阳县| 大荔县| 民权县| 淮安市| 定边县| 中超| 临安市| 滁州市| 葵青区| 中阳县| 沈丘县| 思茅市| 南丰县| 封丘县| 准格尔旗| 宕昌县| 喀喇沁旗| 塔城市| 健康| 上饶市| 涞源县| 博乐市| 洛南县| 铅山县| 潮安县| 青铜峡市| 靖西县| 双鸭山市| 巴塘县| 托克逊县|