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

十年程序員

  十年程序員(一)

  2012年,終于可以和人家說,我有十年工作經(jīng)驗了。幸運的是,十年后,我還在寫代碼。

  十年前,促使我選擇寫程序作為一生追求的是我對寫程序的好奇以及實現(xiàn)功能后的成就感,但那時,在對自己未來充滿信心的同時,內(nèi)心深處依然惴惴不安。縈繞心頭的烏云是所謂30歲程序員的說法。

  那時,很流行的一個論調(diào)是,程序員只能做到30歲。人到30歲之后,智力在下降,體力在下降,再加上家庭的瑣事,人很難再寫程序了。

  那時的自己尚年輕,沒有體會到30歲后的狀態(tài),很難知道這種說法的真?zhèn)危裕瑑?nèi)心里還是會有一絲絲恐懼。有時,我會假想,29歲的最后一天我還能寫程序,30歲生日一覺醒來,我的編程能力便煙消云散了。

  大概當我有5年工作經(jīng)驗時,那個擾人的論調(diào)依舊,只是年齡上,從30歲變成了35歲。我暗自慶幸,我又可以多寫五年程序了。也是那一年,我進入了ThoughtWorks,在這里,我遇到了一群瘋狂熱愛代碼的人,我所能做的就是暗自打磨自己的編程技藝。

  在ThoughtWorks幾乎五年了,這期間,我跨過了30歲的門檻。時至今日,我依然能寫程序,我最擔心的事情沒有發(fā)生,而且,我寫程序的能力似乎還在提升。相比于剛開始寫程序的小朋友,

  • 我在動手之前,就可以對自己要實現(xiàn)的內(nèi)容有個更好的理解。
  • 我的解決方案會更簡單,更容易理解。
  • 我分解出的任務(wù)步驟更小,更容易實現(xiàn)。
  • 我寫程序時考慮的方面會更多
  • 我會更多的考慮寫出的程序?qū)τ谌值挠绊?/li>

  在這期間,我也逐漸釋然。其實,不是30歲能不能編程,而是那個時候,30歲的程序員本來就沒有多少,這也是我5年的時候,論調(diào)成了35歲,是因為這一代人已經(jīng)長過了30。這不,今年就有人開始討論一些40歲程序員的問題了。

  十年程序員(二)

  隨著自己在ThoughtWorks經(jīng)歷的事越來越多,對這個曾暗自困擾我許久的問題,我也有了新的思考:真正可怕的不是X歲后能不能編程,而是X歲后只能編程。

  為數(shù)不少有工作經(jīng)驗的人進入到ThoughtWorks之后,會感覺很不適應(yīng),因為這里很多剛剛畢業(yè)工作一兩年的小朋友寫程序都很厲害,他們自身在寫程序的優(yōu)勢就不那么明顯了。結(jié)對的時候,他們不斷被這些小朋友們挑戰(zhàn),有些人就會很郁悶,因此離開ThoughtWorks的例子也是有的。

  單就純粹的代碼輸出能力而言,經(jīng)過一段時間的刻意練習,人和人之間往往不會相差很多,相比較而言,在編寫一段代碼時,可以考慮到的方面,不同人會因為經(jīng)驗和視野差異極大。比如,要一個新手實現(xiàn)一個需求,他就會奔著代碼直沖過去,而一個有經(jīng)驗的人,則會考慮許多方面,為什么要做這樣一個需求,實現(xiàn)這樣一個需求有哪些技術(shù)方案,實現(xiàn)這樣一個功能是不是會對現(xiàn)有架構(gòu)有什么影響,寫這樣一段代碼是不是需要對現(xiàn)有代碼進行某些重構(gòu),等等。

  如果一個人具備的所謂工作經(jīng)驗,僅僅是所謂代碼輸出的經(jīng)驗,那他的實際價值就會大打折扣。

  事實上,在ThoughtWorks的開發(fā)團隊里面,我們也是鼓勵一個人嘗試不同的東西,比如,有人可以幫助QA做測試,有人可以去嘗試去做業(yè)務(wù)分析,有人會在公司內(nèi)部做分享等等。做這些工作本身并不能讓我們的開發(fā)技能得到大幅度提升,但這些不同的嘗試會讓人不同的看問題的角度,如果我沒有了解過業(yè)務(wù)分析,我就不會考慮一個事情本身的價值,傾向于別人告訴我做什么,我就去做什么。如果沒有帶過團隊,我就不會考慮,怎么把一個設(shè)計做得簡單,讓別人更好理解和接受。

  道理說白了很簡單,一個人的價值取決于他有多大的不可替代性。如果一個人只能按照別人的要求寫代碼,他的技能就是很容易替代的。

  十年程序員(三)  

  經(jīng)驗是什么?有一段時間,我一直在問自己這個問題。

  許多所謂有著“相同工作經(jīng)驗”的人,表現(xiàn)的差異卻極大。即便在ThoughtWorks,一同起步的畢業(yè)生,幾年下來,個人的差距也是非常明顯的。有人已經(jīng)可以帶團隊了,有人成為了技術(shù)專家,有人卻只能在團隊里低著頭忙活著自己的一畝三分地。

  面對一個問題的時候,我所能想到的就是我的經(jīng)驗。

  我所能想到的,取決于我做過的事情。習慣于在舒適區(qū)練習的人,因為做著本質(zhì)上類似的東西,面對問題時,腦子里想到的東西只會局限在很窄的范圍內(nèi)。很多貌似工作了很多年的人,其實,只是在不斷重復最初一兩年的事情而已,唯一的差別或許只在熟練程度而已。所以,工作經(jīng)驗和工作年限是截然不同的兩個東西。

  只有跳出自己的舒適區(qū),嘗試一些不同的東西,才會打開一個人的思路,讓人得到真正意義上的提升。

  ThoughtWorks的經(jīng)歷讓我開始把目光投向代碼以外的許多東西,事實上,在ThoughtWorks里,凡是代碼寫得好的人,幾乎都是具有多方面技能的:能寫代碼,能設(shè)計架構(gòu),能分析業(yè)務(wù),能做測試,能帶團隊,能面試,能做咨詢,甚至能建設(shè)新辦公室。

  正是因為能做的事情很多,所以,再坐回到計算機面前寫代碼時,想到的就不僅僅是局部的一點點代碼,而擁有的是更好的大局觀:

  • 我要知道Story的價值所在,保證我寫的東西真正有意義。
  • 我要多從各個角度考慮一下這個問題,以免出現(xiàn)bug。
  • 我要寫出干凈的代碼,以便其他人更好維護。
  • 我做出的設(shè)計要讓團隊成員都能更容易的理解
  • 我要讓團隊成員更好的成長
  • 我要站在的客戶的角度思考這個問題
  • 我要在客戶面前更好的維護團隊利益
  • 我需要考慮整個辦公室人員的成長
  • ??

  記得有人對我說,你做了很多有意思的事:從最早的Ruby on Rails交付項目,到后來的咨詢,再到現(xiàn)在基于DevOps on Cloud的持續(xù)交付。在我看來,得到這些機會,恰恰是因為我具備了做很多事情的能力。

  能做的事情越來越多,路也就越來越寬,得到的機會也就越來越多,得到鍛煉也就越來越多,能力也就越來越強,能做的事情也就越來越多。不知不覺中,一個人就會進入到一個正向反饋循環(huán)中。

  幸運的是,十年來,我一直在成長,不管是主動還是被動


  版權(quán)聲明:轉(zhuǎn)載時請以超鏈接形式標明文章原始出處和作者信息及本聲明
  http://dreamhead.blogbus.com/logs/188002525.html

it知識庫十年程序員,轉(zhuǎn)載需保留來源!

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

主站蜘蛛池模板: 潜山县| 秦安县| 集贤县| 闽清县| 会宁县| 定西市| 泽普县| 凌云县| 和政县| 阜宁县| 武胜县| 乐昌市| 大埔县| 冷水江市| 自治县| 达孜县| 揭阳市| 来安县| 麦盖提县| 永定县| 昌黎县| 彝良县| 繁峙县| 和平县| 梁山县| 京山县| 始兴县| 平果县| 福泉市| 文水县| 翼城县| 康保县| 无极县| 旬阳县| 大厂| 杭锦后旗| 班戈县| 东港市| 秦皇岛市| 城口县| 邳州市|