一個(gè)6年Java程序員的工作感悟,寫(xiě)給還在迷茫中的朋友

前言

很多年前,剛剛從大學(xué)畢業(yè)的時(shí)候,很多公司來(lái)校招。其中最爛俗的一個(gè)面試問(wèn)題是:“你希望你之后三到五年的發(fā)展是什么?”。我當(dāng)時(shí)的標(biāo)準(zhǔn)回答是(原話):“成為在某一方面能夠獨(dú)當(dāng)一面的技術(shù)專家“。后來(lái)經(jīng)歷了幾家不同的公司,換了不同的方向,才知道這個(gè)真是一個(gè)很難的問(wèn)題。因?yàn)楸鵁o(wú)常勢(shì),什么東西都是在不斷的變化,一早的時(shí)候看好的東西可能會(huì)被淘汰。

(幾乎)沒(méi)有人能夠看準(zhǔn)技術(shù)的下一個(gè)方向,因?yàn)檫@個(gè)問(wèn)題實(shí)在是太難了,能夠做到這一點(diǎn)的你就成為了技術(shù)界的巴菲特了。比如說(shuō)11年加入Google,14年加入Facebook,16年加入阿里巴巴。做到這一點(diǎn)的人肯定有資本也有眼光去做風(fēng)險(xiǎn)投資,就算不做風(fēng)險(xiǎn)投資那么財(cái)務(wù)自由也是妥妥的。

現(xiàn)在畢業(yè)六年,從北京到上海到硅谷,從國(guó)內(nèi)互聯(lián)網(wǎng)公司外企,看到了公司好的地方和壞的地方,這里只是根據(jù)自己的經(jīng)歷寫(xiě)一些大方向選擇建議,僅供參考。

一、行業(yè)背景很重要

行業(yè)背景非常重要;工作3年后必須確定自己的行業(yè)背景,比如一直從事電信行業(yè),一直從事銀行項(xiàng)目,一直從事ERP行業(yè)等等。

一個(gè)程序員不可能是一直寫(xiě)代碼的,就是寫(xiě)代碼也要知道業(yè)務(wù)邏輯,滿足什么需求;俗話說(shuō)隔行如隔山,每個(gè)行業(yè)的業(yè)務(wù)都不一樣,甚至差別很大,比如你一直從事流媒體的研究,讓你跳槽到一家銀行項(xiàng)目,完了,一切從頭學(xué)吧,以前的行業(yè)經(jīng)驗(yàn)都用不上了;而且,一個(gè)公司公司招人,就是希望找到那些很容易上手,不需要培訓(xùn)業(yè)務(wù)很久的程序員;頻繁跳槽的朋友,一定要注意這點(diǎn);

一直在一個(gè)行業(yè)呆久了,就可以成為這個(gè)行業(yè)的專家;我們可以經(jīng)??吹剑粋€(gè)項(xiàng)目組的某個(gè)leader,代碼寫(xiě)的一般,但是卻可以跟客戶流暢的溝通,控制著新需求的提出,bug的修正等等;而客戶也很愿意跟他打交道,因?yàn)槟切├系捻?xiàng)目只有他能維護(hù),他甚至熟悉系統(tǒng)的每一張表結(jié)構(gòu)——-可想在這個(gè)行業(yè)呆的時(shí)間有多久啦。

第二、合理的職業(yè)規(guī)劃

什么是職業(yè)規(guī)劃—-就是你短期或者長(zhǎng)期的一個(gè)職業(yè)計(jì)劃!大道理不講,咱簡(jiǎn)單點(diǎn)。先問(wèn)你幾個(gè)問(wèn)題:

a.你工作幾年了,你愿意一直和新入行的新手一樣就是個(gè)簡(jiǎn)單的程序員嗎?

b. 你愿意一直寫(xiě)代碼,而不關(guān)心其他嗎?

c. 一個(gè)項(xiàng)目的前期需求,設(shè)計(jì),后期部署維護(hù),領(lǐng)導(dǎo)找到你,你說(shuō)咱搞不定,行嗎?

程序員不是敲代碼的機(jī)器。第一年太多東西不懂,你可以一切聽(tīng)從老大的安排,敲敲代碼,看看數(shù)據(jù)庫(kù),測(cè)試自己和別人的代碼;但是第二年,你還是這樣嗎?不可能的,一年的經(jīng)驗(yàn)?zāi)阃耆梢匀胄辛?,是時(shí)候該學(xué)習(xí)怎么進(jìn)行需求分析,怎么設(shè)計(jì)數(shù)據(jù)庫(kù),怎么寫(xiě)各類文檔,怎么寫(xiě)更好的代碼?這是高級(jí)程序員的要求!

三、什么是高級(jí)程序員?

具有分析設(shè)計(jì)能力,能進(jìn)行技術(shù)攻關(guān),而且具有某行業(yè)深厚背景的程序員!

所有,一個(gè)項(xiàng)目立項(xiàng)后,你要積極的參與到前期設(shè)計(jì)中,跟老同志們一道思考分析問(wèn)題,學(xué)習(xí)經(jīng)驗(yàn)!OK,你這就成長(zhǎng)啦!

千萬(wàn)不要認(rèn)為程序員就是寫(xiě)代碼的哦!??!

而且,通過(guò)一個(gè)項(xiàng)目的開(kāi)發(fā),你要能粗略的統(tǒng)計(jì)出一個(gè)功能的開(kāi)發(fā)時(shí)間;比如一個(gè)模塊有20個(gè)小功能點(diǎn),你開(kāi)發(fā)了80個(gè)小時(shí),每個(gè)小功能點(diǎn)平均2小時(shí)——這時(shí)在前期就能評(píng)估工作量啦。當(dāng)然每個(gè)人的效率和工作質(zhì)量是不同的,因人而異,但是大概的工作量應(yīng)該是可以統(tǒng)計(jì)出來(lái)的,用于統(tǒng)計(jì)一個(gè)項(xiàng)目的工作周期;

據(jù)不完全統(tǒng)計(jì),截至目前(2017.07)為止,中國(guó)Java程序員的數(shù)量已經(jīng)超過(guò)了100萬(wàn)。而且,隨著IT培訓(xùn)業(yè)的持續(xù)發(fā)展和大量的應(yīng)屆畢業(yè)生進(jìn)入社會(huì),Java程序員面臨的競(jìng)爭(zhēng)壓力越來(lái)越大。那么,作為一名Java程序員,怎樣努力才能快速成長(zhǎng)為一名高級(jí)的程序員或者架構(gòu)師,或者說(shuō)一名優(yōu)秀的高級(jí)工程師或架構(gòu)師應(yīng)該有怎樣的技術(shù)知識(shí)體系,這不僅是一個(gè)剛剛踏入職場(chǎng)的初級(jí)程序員,也是工作三五年之后開(kāi)始迷茫的老程序員,都必須要面對(duì)和想明白的問(wèn)題。為了幫助大家少走彎路,我總結(jié)出一個(gè)Java程序員的工作2-5年成長(zhǎng)路線圖。

針對(duì)上面的技術(shù)我特意整理了一下,有很多技術(shù)不是靠幾句話能講清楚,所以干脆找朋友錄制了一些視頻,很多問(wèn)題其實(shí)答案很簡(jiǎn)單,但是背后的思考和邏輯不簡(jiǎn)單,要做到知其然還要知其所以然。如果想學(xué)習(xí)Java工程化、高性能及分布式、深入淺出。性能調(diào)優(yōu)、Spring,MyBatis,Netty源碼分析的朋友可以加我的Java進(jìn)階群:675047716,群里有阿里大牛直播講解技術(shù),以及Java大型互聯(lián)網(wǎng)技術(shù)的視頻免費(fèi)分享給大家。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Android 自定義View的各種姿勢(shì)1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 179,027評(píng)論 25 709
  • 本文把程序員所需掌握的關(guān)鍵知識(shí)總結(jié)為三大類19個(gè)關(guān)鍵概念,然后給出了掌握每個(gè)關(guān)鍵概念所需的入門(mén)書(shū)籍,必讀書(shū)籍,以及...
    dle_oxio閱讀 11,384評(píng)論 6 244
  • 日念家人一好處,念力加持享幸福! 【念夫好】大早上是爸爸尿了褲子而收拾了半天,結(jié)果半上午有尿了床,各種忙亂!弟弟沒(méi)...
    風(fēng)瀟瀟blj閱讀 333評(píng)論 0 0
  • 精眾人群:范眾人群
    蘸醬蔥YOUDI閱讀 200評(píng)論 0 0
  • 葉凍閱讀 258評(píng)論 0 0

友情鏈接更多精彩內(nèi)容