99精品伊人亚洲|最近国产中文炮友|九草在线视频支援|AV网站大全最新|美女黄片免费观看|国产精品资源视频|精彩无码视频一区|91大神在线后入|伊人终合在线播放|久草综合久久中文

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內(nèi)不再提示

一位6年工作經(jīng)驗的java程序員的感悟

工程師人生 ? 來源:工程師吳畏 ? 2019-02-11 15:56 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

前言

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

(幾乎)沒有人能夠看準技術(shù)的下一個方向,因為這個問題實在是太難了,能夠做到這一點的你就成為了技術(shù)界的巴菲特了。比如說11年加入Google,14年加入Facebook,16年加入阿里巴巴。做到這一點的人肯定有資本也有眼光去做風險投資,就算不做風險投資那么財務自由也是妥妥的。

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

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

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

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

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

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

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

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

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

c. 一個項目的前期需求,設計,后期部署維護,領導找到你,你說咱搞不定,行嗎?

程序員不是敲代碼的機器。第一年太多東西不懂,你可以一切聽從老大的安排,敲敲代碼,看看數(shù)據(jù)庫,測試自己和別人的代碼;但是第二年,你還是這樣嗎?不可能的,一年的經(jīng)驗你完全可以入行了,是時候該學習怎么進行需求分析,怎么設計數(shù)據(jù)庫,怎么寫各類文檔,怎么寫更好的代碼?這是高級程序員的要求!

三、什么是高級程序員?

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

所有,一個項目立項后,你要積極的參與到前期設計中,跟老同志們一道思考分析問題,學習經(jīng)驗!OK,你這就成長啦!

千萬不要認為程序員就是寫代碼的哦?。?!

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

四、不要覺得業(yè)務代碼一樣很牛逼

有人認為寫業(yè)務代碼一樣可以很牛逼,理由是業(yè)務代碼一樣可以有各種技巧,例如可以使用封裝和抽象使得業(yè)務代碼更具可擴展性,可以通過和產(chǎn)品多交流以便更好的理解和實現(xiàn)業(yè)務,日志記錄好了問題定位效率可以提升10倍等等。 想要獲取更多學習資源的,可以加群:454377428

業(yè)務代碼一樣有技術(shù)含量,這點是肯定的,業(yè)務代碼中的技術(shù)是每個程序員的基礎,但只是掌握了這些技巧,并不能成為技術(shù)大牛,就像游戲中升級打怪一樣,開始打小怪,經(jīng)驗值很高,越到后面經(jīng)驗值越少,打小怪已經(jīng)不能提升經(jīng)驗值了,這個時候就需要打一些更高級的怪,刷一些有挑戰(zhàn)的副本了,沒看到哪個游戲只要一直打小怪就能升到頂級的。成為技術(shù)大牛的路也是類似的,你要不斷的提升自己的水平,然后面臨更大的挑戰(zhàn),通過應對這些挑戰(zhàn)從而使自己水平更上一級,然后如此往復,最終達到技術(shù)大牛甚至業(yè)界大牛的境界,寫業(yè)務代碼只是這個打怪升級路上的一個挑戰(zhàn)而已,而且我認為是比較初級的一個挑戰(zhàn)。

所以我認為:業(yè)務代碼都寫不好的程序員肯定無法成為技術(shù)大牛,但只把業(yè)務代碼寫好的程序員也還不能成為技術(shù)大牛。

五、別以上班太忙沒時間學習為借口

很多人認為自己沒有成為技術(shù)大牛并不是自己不聰明,也不是自己不努力,而是中國的這個環(huán)境下,技術(shù)人員加班都太多了,導致自己沒有額外的時間進行學習。

這個理由有一定的客觀性,畢竟和歐美相比,我們的加班確實要多一些,但這個因素只是一個需要克服的問題,并不是不可逾越的鴻溝,畢竟我們身邊還是有那么多的大牛也是在中國這個環(huán)境成長起來的。

我認為有幾個誤區(qū)導致了這種看法的形成:

1)上班做的都是重復工作,要想提升必須自己額外去學習

形成這個誤區(qū)的主要原因還是在于認為“寫業(yè)務代碼是沒有技術(shù)含量的”,而我現(xiàn)在上班就是寫業(yè)務代碼,所以我在工作中不能提升。

2)學習需要大段的連續(xù)時間

很多人以為要學習就要像學校上課一樣,給你一整天時間來上課才算學習,而我們平時加班又比較多,周末累的只想睡懶覺,或者只想去看看電影打打游戲來放松,所以就沒有時間學習了。

實際上的做法正好相反:首先我們應該在工作中學習和提升,因為學以致用或者有實例參考,學習的效果是最好的;其次工作后學習不需要大段時間,而是要擠出時間,利用時間碎片來學習。

六、做的更多,做的比你主管安排給你的任務更多。

我在HW的時候,負責一個版本的開發(fā),這個版本的工作量大約是2000行左右,但是我除了做完這個功能,還將關(guān)聯(lián)的功能全部掌握清楚了,代碼(大約10000行)也全部看了一遍,做完這個版本后,我對這個版本相關(guān)的整套業(yè)務全部很熟悉了。經(jīng)過一兩次會議后,大家發(fā)現(xiàn)我對這塊掌握最熟了,接下來就有趣了:產(chǎn)品討論需求找我、測試有問題也找我、老大對外支撐也找我;后來,不是我負責的功能他們也找我,即使我當時不知道,我也會看代碼或者找文檔幫他們回答。最后我就成了我這個系統(tǒng)的“專家”了。雖然這個時候我還是做業(yè)務的,還是寫業(yè)務代碼,但是我已經(jīng)對整個業(yè)務都很熟悉了。

以上只是一個簡單的例子,其實就是想說:要想有機會,首先你得從人群中冒出來,要想冒出來,你就必須做到與眾不同,要做到與眾不同,你就要做得更多!想要獲取更多學習資源的,可以加群:650385180

怎么做得更多呢?可以從以下幾個方面著手:

1)熟悉更多業(yè)務,不管是不是你負責的;熟悉更多代碼,不管是不是你寫的

這樣做有很多好處,舉幾個簡單的例子:

需求分析的時候更加準確,能夠在需求階段就識別風險、影響、難點

問題處理的時候更加快速,因為相關(guān)的業(yè)務和代碼都熟悉,能夠快速的判斷問題可能的原因并進行排查處理

方案設計的時候考慮更加周全,由于有對全局業(yè)務的理解,能夠設計出更好的方案

2)熟悉端到端

比如說你負責web后臺開發(fā),但實際上用戶發(fā)起一個http請求,要經(jīng)過很多中間步驟才到你的服務器(例如瀏覽器緩存、DNS、nginx等),服務器一般又會經(jīng)過很多處理才到你寫的那部分代碼(路由、權(quán)限等)這整個流程中的很多系統(tǒng)或者步驟,絕大部分人是不可能去參與寫代碼的,但掌握了這些知識對你的綜合水平有很大作用,例如方案設計、線上故障處理這些更加有含金量的技術(shù)工作都需要綜合技術(shù)水平。

“系統(tǒng)性”、“全局性”、“綜合性”這些字眼看起來比較虛,但其實都是技術(shù)大牛的必備的素質(zhì),要達到這樣的境界,必須去熟悉更多系統(tǒng)、業(yè)務、代碼。

3)自學

一般在比較成熟的團隊,由于框架或者組件已經(jīng)進行了大量的封裝,寫業(yè)務代碼所用到的技術(shù)確實也比較少,但我們要明白“唯一不變的只有變化”,框架有可能要改進,組件可能要替換,或者你換了一家公司,新公司既沒有組件也沒有框架,要你從頭開始來做。這些都是機會,也是挑戰(zhàn),而機會和挑戰(zhàn)只會分配給有準備的人,所以這種情況下我們更加需要自學更多東西,因為真正等到要用的時候再來學已經(jīng)沒有時間了。

java為例,大部分業(yè)務代碼就是if-else加個數(shù)據(jù)庫操作,但我們完全可以自己學些更多java的知識,例如垃圾回收,調(diào)優(yōu),網(wǎng)絡編程等,這些可能暫時沒用,但真要用的時候,不是google一下就可以了,這個時候誰已經(jīng)掌握了相關(guān)知識和技能,機會就是誰的。

以垃圾回收為例,我自己平時就抽時間學習了這些知識,學了1年都沒用上,但后來用上了幾次,每次都解決了卡死的大問題,而有的同學,寫了幾年的java代碼,對于stop-the-world是什么概念都不知道,更不用說去優(yōu)化了。

據(jù)不完全統(tǒng)計,截至目前(2017.07)為止,中國Java程序員的數(shù)量已經(jīng)超過了100萬。而且,隨著IT培訓業(yè)的持續(xù)發(fā)展和大量的應屆畢業(yè)生進入社會,Java程序員面臨的競爭壓力越來越大。那么,作為一名Java程序員,怎樣努力才能快速成長為一名高級的程序員或者架構(gòu)師,或者說一名優(yōu)秀的高級工程師或架構(gòu)師應該有怎樣的技術(shù)知識體系,這不僅是一個剛剛踏入職場的初級程序員,也是工作三五年之后開始迷茫的老程序員,都必須要面對和想明白的問題。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • JAVA
    +關(guān)注

    關(guān)注

    20

    文章

    2989

    瀏覽量

    109913
  • 程序員
    +關(guān)注

    關(guān)注

    4

    文章

    954

    瀏覽量

    30423
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    Gemini Vision + Raspberry Pi 化身“數(shù)字導盲犬”?

    本文討論了一位程序員利用樹莓派、攝像頭、Gemini和Python構(gòu)建PeregrineEye設備,使其成為“數(shù)字導盲犬”為視障者服務的項目經(jīng)歷,包括項目靈感、功能、構(gòu)建過程、遇到的挑戰(zhàn)及未來計劃等
    的頭像 發(fā)表于 03-25 09:20 ?1322次閱讀
    Gemini Vision + Raspberry Pi 化身“數(shù)字導盲犬”?

    一位老電子工程師的十職場感悟

    心浮氣躁,拒絕進步,拒絕沉淀,害怕丟臉。記住每個讓你丟臉的人,他們是你的貴人。感激那些給他難堪的人;感激那些給你啟發(fā)的老師。電子研發(fā)工作上的時忙時閑,是很正常的事情
    的頭像 發(fā)表于 03-19 17:32 ?408次閱讀
    <b class='flag-5'>一位</b>老電子工程師的十<b class='flag-5'>年</b>職場<b class='flag-5'>感悟</b>

    阿里云升級通義靈碼AI程序員,全面上線

    近日,阿里云宣布其備受矚目的通義靈碼AI程序員已正式全面上線,為開發(fā)者帶來更為強大和便捷的編程輔助工具。 此次上線的通義靈碼AI程序員,在功能上實現(xiàn)了全面升級?,F(xiàn)在,它支持VS Code
    的頭像 發(fā)表于 01-09 11:16 ?724次閱讀

    TMS320C6000程序員指南

    電子發(fā)燒友網(wǎng)站提供《TMS320C6000程序員指南.pdf》資料免費下載
    發(fā)表于 12-24 17:19 ?0次下載
    TMS320C6000<b class='flag-5'>程序員</b>指南

    TMS320C55x DSP CPU程序員參考補充

    電子發(fā)燒友網(wǎng)站提供《TMS320C55x DSP CPU程序員參考補充.pdf》資料免費下載
    發(fā)表于 12-21 11:36 ?3次下載
    TMS320C55x DSP CPU<b class='flag-5'>程序員</b>參考補充

    UCD3138A64/UCD3138128程序員手冊

    電子發(fā)燒友網(wǎng)站提供《UCD3138A64/UCD3138128程序員手冊.pdf》資料免費下載
    發(fā)表于 12-09 14:42 ?0次下載
    UCD3138A64/UCD3138128<b class='flag-5'>程序員</b>手冊

    機械革命發(fā)布CODE AI程序員

    近日,英特爾新質(zhì)生產(chǎn)力技術(shù)生態(tài)大會在成都舉行,機械革命作為重要參展商帶來了多款明星產(chǎn)品引爆全場!其中更是在AI PC軟件生態(tài)產(chǎn)品發(fā)布分論壇上,Intel、智譜、機械革命三方聯(lián)合發(fā)布了專為程序員設計的CODE AI程序員本,成為本次大會的
    的頭像 發(fā)表于 11-30 10:34 ?1113次閱讀

    Java代碼之美,從遵循樣式規(guī)范開始

    作者:京東零售 劉仲偉 在軟件開發(fā)的世界里,代碼不僅是程序的基石,更是程序員交流的通用語言。而Java,作為門廣泛應用于企業(yè)級應用的編程語言,其代碼的可讀性和
    的頭像 發(fā)表于 11-27 11:42 ?587次閱讀
    <b class='flag-5'>Java</b>代碼之美,從遵循樣式規(guī)范開始

    Linux驅(qū)動程序程序員指南

    電子發(fā)燒友網(wǎng)站提供《Linux驅(qū)動程序程序員指南.pdf》資料免費下載
    發(fā)表于 11-22 15:53 ?0次下載
    Linux驅(qū)動<b class='flag-5'>程序</b><b class='flag-5'>程序員</b>指南

    AI編程工具會不會搶程序員飯碗

    AI編程工具可輔助編程,減少手動編碼,提升效率,對程序員有積極影響也有挑戰(zhàn)。程序員需深化技能、拓寬知識應對。長遠看,AI與人類程序員將共生共榮。
    的頭像 發(fā)表于 11-08 10:17 ?538次閱讀

    使用Arthas火焰圖工具的Java應用性能分析和優(yōu)化經(jīng)驗

    分享作者在使用Arthas火焰圖工具進行Java應用性能分析和優(yōu)化的經(jīng)驗
    的頭像 發(fā)表于 10-28 09:27 ?1302次閱讀
    使用Arthas火焰圖工具的<b class='flag-5'>Java</b>應用性能分析和優(yōu)化<b class='flag-5'>經(jīng)驗</b>

    第五屆長沙·中國1024程序員節(jié)開幕

    據(jù)官方媒體報道,10月24日;? 第五屆長沙·中國1024程序員節(jié)在湖南湘江新區(qū)開幕;本次中國1024程序員節(jié)以“智能應用新生態(tài)”為主題。設置有岳麓對話、技術(shù)英雄會、主題峰會及賽事、展覽等活動,
    的頭像 發(fā)表于 10-25 15:42 ?503次閱讀

    90后程序員的職業(yè)成長漫談

    作者:京東零售 盧楠 前言: 我在京東工作已經(jīng)來到第8個年頭,從2016的實習生到如今負責部門整體架構(gòu),這段職業(yè)旅程中充滿了感悟。 簡單回顧我的個人成長里程碑:2017正式加入京東
    的頭像 發(fā)表于 10-15 15:24 ?554次閱讀
    90后<b class='flag-5'>程序員</b>的職業(yè)成長漫談

    一位架構(gòu)師的自述:在尚未踏入的世界成為你自己

    這是我參與創(chuàng)作者計劃的第1篇文章 ? ? 我叫艾佳,工作經(jīng)驗14,編程經(jīng)驗30。 我來自智能平臺部,負責標簽平臺、標簽圈人、標簽選品、EasyData、算法數(shù)據(jù)流的架構(gòu)
    的頭像 發(fā)表于 09-23 15:25 ?581次閱讀
    <b class='flag-5'>一位</b>架構(gòu)師的自述:在尚未踏入的世界成為你自己

    【轉(zhuǎn)型必看】Java到AI,程序員的逆襲秘籍,轉(zhuǎn)行人工智能不再是夢!

    ?隨著技術(shù)的不斷進步,人工智能(AI)已經(jīng)成為當今科技領域最熱門的話題之。許多開發(fā)者開始考慮從傳統(tǒng)的軟件開發(fā)領域,如Java,轉(zhuǎn)向人工智能領域,今天小編和大家起來探討Java開發(fā)者
    的頭像 發(fā)表于 07-31 14:42 ?2406次閱讀
    【轉(zhuǎn)型必看】<b class='flag-5'>Java</b>到AI,<b class='flag-5'>程序員</b>的逆襲秘籍,轉(zhuǎn)行人工智能不再是夢!