自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

如何成為一名專家級的程序員

開發(fā) 前端
很多人問我如何才能成為一名專家級別的程序員,現(xiàn)在我們對此還沒有一種統(tǒng)一的模式,但是我還是想把我總結的一些經(jīng)驗分享給大家。如何成為一名專家級別的程序員,在很大程度上取決于你開發(fā)的軟件和你所處的行業(yè),以及你所在公司使用的工具等等。對于本文講的一些方法,你可以選擇適合自己的情況。

 很多人問我如何才能成為一名專家級別的程序員,現(xiàn)在我們對此還沒有一種統(tǒng)一的模式,但是我還是想把我總結的一些經(jīng)驗分享給大家。如何成為一名專家級別的程序員,在很大程度上取決于你開發(fā)的軟件和你所處的行業(yè),以及你所在公司使用的工具等等。對于本文講的一些方法,你可以選擇適合自己的情況。

[[129901]]

本文僅為個人觀點,如果各位有任何補充或建議,歡迎不吝賜教。

還有一點要著重說明的是,成為專家與被認為是專家是不一樣的。很多人雖然榮譽是專家,但其實他們并不是。但是如果人們相信他是專家的話,他就能因此賺錢。此外,也有的專家雖然不被認可,但是如果你真的是專家的話,你完全可以通過自己的行動去證實這一點:是金子總會發(fā)光。不過關于這方面顯然超出了本文的主旨。這是另一個關于個人品牌的故事了。

何為“專家”,需要多長時間?

在我討論如何成為一名專家之前,給我 30 秒的時間,讓我解釋一下什么是專家,以及需要多長時間才能成為一個專家。

3 個月?3 年?都不是!根據(jù) Malcom Gladwell 寫的《Outliers》一書中所說,我們平均需要 10000 個小時才能成為一名真正的專家。下巴有沒有掉下來?沒錯,你沒看錯,就是 10000 小時!也就是說每天 10 小時的話,需要 3 年;每天 5 小時,一年算 200 天的話,則需要 10 年。哇哦,10 年哪!!!

按照此種說法,擁有 3 年經(jīng)驗的我或許就夠得上專家或者至少高級開發(fā)人員的稱號了。但是當我擁有了 10 年經(jīng)驗的時候,我卻不敢認為自己是專家了——因為我知道自己還有很多很多是需要知道而還不知道的東西。

此外,這個行業(yè)(Java 企業(yè)開發(fā))也在這 10 年間發(fā)生了很大的變化,我慣于使用的技能也漸漸落伍了。所以,即使你已經(jīng)是一個專家的話也是會過時的,從而需要重新開始學習。

還有一點:我們是不可能成為全面專家的,也就是說,可能你在某個技能上比人員B強,但是人員B可能再另一個技能上面比你厲害。即,我們不可能所有的技能都比別人好,也不可能全部技不如人。三人行,必有我?guī)熝?。你總是可以從其他人那兒學到你不具備或欠缺的東西。我碰到過不少開發(fā)人員說的好像他們所有事情都最了解一樣,但顯然事實并非如此。

這也是一種鑒別菜鳥的方法。只有菜鳥才會深信他們知道所有事情,會在網(wǎng)上或者辦公室里與人爭得聲嘶力竭。他們說的通常非常絕對化,例如“這始終比那個更好”、“這問題就應該這么解決”等等。專家很少會這樣說。因為他們明白,凡事不能絕對,很多事情往往取決于當前的形式、開發(fā)人員具備的技能、公司選擇的工具、公司政策、以及個人愛好等等。只有那些經(jīng)驗不足的開發(fā)人員才相信世界只有黑與白。專家們則明白除了黑白之外,還有灰色以及其他各種的顏色。

如何成為專家

對于你所需要學習的大部分技能,下面四個步驟(重復向上或向下),將有助于你成為一個專家:

  1. Learn it
  2. Do it
  3. Discuss it
  4. Teach it

Learn it

在你掌握某一門技術之前你必須先了解它的理論知識??梢酝ㄟ^書籍和教程,也可以課堂教育等方式學習。

Do it

一旦你學會了理論技能之后,那就可以將這些技術應用到現(xiàn)實中。這樣做可以讓你知道你學的理論哪些是正確的,哪些是錯誤的。大學中學到的理論很多并不能應用到現(xiàn)實中,或者并不適合你現(xiàn)在的情況。

Discuss it

技術使用了一段時間以后,你會發(fā)現(xiàn)你已經(jīng)能夠靈活運用它解決問題了,那么這時你需要和其他經(jīng)驗豐富的人討論該技術了??梢杂懻搼眠@些技術的最佳途徑,理論限制在哪里,以及還可以添加什么等等??偠灾阈枰懻撊绾胃M一步地開發(fā)該技術。

通過討論,你還可以從其他人身上學到很多東西,即使你先前以為你早就了如指掌。

Teach it

將自己的技能教給別人,也是查漏補缺的一個好方法。也許有很多事情你只是知道要這么做,但從沒考慮過你為什么要這么做。由于不得不解釋這些行為方法,迫使你去思考這些原因。

此外,也有可能某些技術要點由于你并不需要所以并沒有掌握的(例如,Web 服務規(guī)范的某一點)。同樣的,教學使得你不得不掌握這些邊邊角角的內容,越來越專業(yè)。

#p#

如何成為一個專家級別的程序員

上面講的是如何成為一名專家的方法,下面我將討論的是如何成為一個專家級別的開發(fā)人員。

作為一名開發(fā)人員,我們大多是就職于某一行業(yè),使用的是特定的平臺。如果你總是不斷地切換工具和行業(yè),那么你就永遠成不了真正的專家?;蛟S你會成為某種意義上的“萬金油”,當然這在有些情況下確實非常有用。但是如果你一直都沒有專業(yè)的平臺和行業(yè),那么要用點心了。

我的職業(yè)生涯始于 1998 年,那個時候做的是 web 應用,然后我發(fā)現(xiàn)我總是在不斷地換工具,這意味著我并沒有一個趁手的工具。我所有的時間都用在了學習新工具上,讓我有一種疲于奔命的感覺。然后,我決定將重點放在一種面向對象的語言上——Java。那時候 .NET 技術還沒有出來。自從 1999 年開始,我就只做 Java。

在你走向專業(yè)化的道路上,你必須先選擇一個平臺,也有可能是一個行業(yè)。行業(yè)不大重要點,但是擁有業(yè)務領域方面的知識可以增強你簡歷的賣點。

在學習平臺的時候,你需要先選擇編程語言,例如,Java。在 Java 中其平臺分為兩個:標準版和企業(yè)版。

一旦你掌握平臺之后,你就可以開始學習平臺的獨立技術,如設計模式、分布式系統(tǒng)設計、架構等等。你應該多花點時間去學習這些技能,因為它們更容易轉移到其他新的技術平臺上。

以后,你可能會離開軟件開發(fā),轉而從事其他的業(yè)務領域,如項目管理或者架構師等。但是你得知道的是,一旦你不再使用這一項技能,那么慢慢的你就不能再被稱為這方面的專家了。

下面是如何成為專家級開發(fā)人員的示意圖。從底部開始一步一步往上走。藍色層是平臺獨立層。其他顏色的是平臺特殊層。如果你沒有發(fā)現(xiàn)自己的平臺,也可以自己添加。

如何成為一名專家級的程序員

 

具體到個人的信息,請恕我無法一一準確描述。

那要是我不知道應該學習什么技術,怎么辦?也有辦法,可以去看招聘廣告??纯此麄冏畛L岬降墓ぞ吆图夹g是什么?也可以閱讀在線軟件雜志??纯此麄冋務撟疃嗟氖鞘裁醇夹g?別忘了論壇。什么技術大家提的問題最多?以及,大家對什么技術津津樂道,一窩蜂地在學習?換句話說,這就是明天將炙手可熱的技術!

英文原文:How to Become an Expert Developer

責任編輯:王雪燕 來源: 博客園
相關推薦

2011-11-09 13:52:04

程序員

2017-09-21 09:44:00

編程程序員軟件開發(fā)

2011-05-03 08:54:36

2012-12-12 09:52:18

程序員

2021-02-21 13:49:48

Java程序員開發(fā)

2009-07-10 11:27:00

專家級程序員

2015-05-15 10:39:44

Java 冠軍程序員?

2019-01-28 11:54:28

程序員技能溝通

2011-04-11 17:41:35

C++程序員

2014-04-14 16:50:15

Linux專家

2022-09-30 10:32:59

API文檔

2015-11-30 11:01:07

程序員閱讀源代碼

2015-11-30 08:57:07

源代碼閱讀程序員

2011-05-23 15:18:34

程序員

2011-03-07 13:51:01

搜索程序員

2021-02-05 14:56:39

YouTube編程程序員

2021-03-12 16:17:37

程序員 女性主義兩性 價值觀

2015-06-04 11:31:36

程序員12周內

2010-08-24 08:58:42

開發(fā)者

2019-07-29 08:59:14

主管阿里專家Leader
點贊
收藏

51CTO技術棧公眾號