作為一名java程序員,我認(rèn)為我們都會從低級走向高級的。一般java程序員的職業(yè)路徑為java工程師-高級工程師-項目經(jīng)理-架構(gòu)師-技術(shù)總監(jiān),也會有一些程序員選擇創(chuàng)業(yè)的。可不管發(fā)展到哪一個階段,隨著工作時間久了,我們可能都會漸漸迷失自己,遇到bug直接找度娘,直接復(fù)制粘貼代碼。
其實,無論做到哪一個階段,都沒有捷徑,只有不斷積累項目經(jīng)驗以及提高自己的技術(shù),如果一直沒有明確自己的職業(yè)規(guī)劃,請捫心自問:1、我到底適不適合當(dāng)一名程序員?2、我到底應(yīng)不應(yīng)該一輩子以程序員為職業(yè)?3、我對編程到底持有的是一種什么樣的態(tài)度,是夠用就好呢?還是不斷研究?,我相信與自己對話之后,你就會明確自己的學(xué)習(xí)方向以及職業(yè)發(fā)展路徑了。
今天,小編將以自己的職業(yè)經(jīng)驗來幫助大家找到自己的人生方向!
一、Java基礎(chǔ)要扎實-職業(yè)素養(yǎng)
無論做了3年、5年還是10年,要想做的好,核心在于java基礎(chǔ)知識掌握好,然后在深入進階學(xué)習(xí)。如果基礎(chǔ)知識掌握不好,即使做到高級工程師,對底層的邏輯或者忘記或者不知,解決一個簡單的bug都不會,你覺得會有多大的發(fā)展呢?
我試問web前端工程師,你們整天和瀏覽器打交道,你們了解瀏覽器的發(fā)展歷史嗎?俗話說“男人關(guān)心女人的過去,女人關(guān)心男人的未來”,瀏覽器和你相處的時間比你和你漂友相處的時間還長,請問你了解它的歷史嗎?這是愛與不愛的問題,即是職業(yè)不職業(yè)的問題!所以動手也要動腦去愛它,不愛就換吧!
二、深入學(xué)習(xí)Java-提升技能
1、研究源代碼
有時間就多研究Tomcat/Resin/Jetty的源代碼;
2、學(xué)習(xí)相關(guān)知識
譬如,高性能/高并發(fā),并在項目中應(yīng)用實踐,提升技術(shù)廣度:
Socket編程
多線程的知識
I/O庫和異步I/O庫
TCP/IP 協(xié)議
3、多向身邊的大牛學(xué)習(xí)
通過學(xué)習(xí)別人多年沉淀的知識與經(jīng)驗,能夠讓自己少走彎路,更快達成目標(biāo)。
4、多爭取項目實踐機會
知識需要經(jīng)過項目演練,最終才能沉淀。
每個人的情況不同,學(xué)習(xí)方法也有差異,希望程序員們都能因時因地制宜,找到一條適合自己的進階學(xué)習(xí)路徑,希望程序員們都能找到一條適合自己的學(xué)習(xí)路徑!
-三、在項目中成長
其實IT相關(guān)技術(shù),我一直相信一個問題,誰的業(yè)務(wù)量大誰的技術(shù)就牛逼。一個系統(tǒng)整天對面對一個用戶時,我作為一個技術(shù)人員我怎么寫代碼都行,我采用什么樣的策略都可以。可是當(dāng)一個平臺每秒鐘訪問量在10w的時候我就脫變了。我就會想到用緩存數(shù)據(jù)庫、用cdn、用mq、用負(fù)載等等。當(dāng)這些都解決不了問題我有升華了,我就是不是技術(shù)了,而是上升到一個策略分析師了,比如雙十一各大平臺的網(wǎng)頁必須靜態(tài)(其他時間可能是動態(tài)化),這就是策略。12306當(dāng)面對訂票高峰時為什么需要排隊,這是策略,不采用策略,他從技術(shù)上也解決不了!
最后,小編想說,作為一名java程序員,每一個人都應(yīng)該有每一個人不一樣的人生,而每個人生的精彩與否是取決于自己,程序員的人生也不一定盡是代碼和bug,需要自己去追求目標(biāo),明確自己的職業(yè)規(guī)劃,對自己的規(guī)劃負(fù)責(zé)并為之努力。