工作2年還是隻會增刪改查,Java程序員如何進階?

吳偉亞


我遇到很多包括工作3-4年的同事,還是隻會增刪改查,這其實跟很多程序員的工作環境有關,有的公司可能像服務器、併發這塊的公司完全不用你來處理,而正好很多程序員也比較安於現狀,就是所謂的舒適區,他們習慣了。其實這主要還是在個人。工作兩年左右的程序員應該會多多少少聽到到除了業務層面的其他東西,比如分佈式,高併發之類的。

本人工作3年,可以說工作兩年時候也是和作者一樣的,只接觸到增刪改查,那麼後來我是堅持學習工作用到的技能之外的東西才遇到一份不錯的工作。

redis

redis可以說現在任何一個項目都離不開它,那麼redis我建議你看下他是如何持久化的,rdb和aof持久化的觸發策略,rdb和aof持久化的區別,redis支持的數據類型,redis對於過期鍵的處理方式,redis集群、分片

docker

當下最火的容器技術,最基本的要理解下鏡像和容器的區別,如何用docker搭建一個定製化的鏡像,如何用docker搭建一個自己的開發環境

mysql

可以說數據庫方面mysql是最主流的,增刪改查一般說的就是對它的操作,確實太基礎了,你應該學習下:mysql最左原則,mysql創建索引的標準,垂直分割和水平分割的使用場景,主從模式,mysql索引用到的數據結構b+樹,b+樹和b樹的區別

數據結構與算法

高級程序員進階的必經之路,之前看到有篇帖子說面試程序員時要造飛機大炮的,結果進來就是擰螺絲的,這裡的飛機大炮有一部分就是數據結構與算法,紮實的基本功對於一個高級程序員來說必不可少



修煉內功的程序員


做JAVA開發的三年一個坎,你應該慶幸你還有一年的時間可以用來提升,讓自己不要後悔!

不過話說回來,在平時的工作中其實90%的工作量都是增刪改查,或者是對增刪改查的改進,那些所謂的高併發,多線程,高可用系統,分佈式系統,負載均衡,緩存,數據庫讀寫分離,分庫分表等等全部都是圍繞增刪改查來做改進的!



比如說緩存是因為數據庫的讀寫壓力大的時候,為增加讀寫效率而引進的,使用緩存的內存讀寫代替了數據庫的硬盤讀寫!

比如說數據庫的讀寫分離或者分庫分表都是在單點數據庫的壓力過大,性能低的時候引入的無論架構怎麼設計都是為了得到更好的讀寫效率!

再比如說,高可用,分佈式都為了避免單點服務出現異常,導致讀寫服務不可用,從而引入的集群部署或者分佈式部署!



由此可見,增刪改查是我們最核心的功能,只不過我們引入了其他的架構,完善我們的功能,讓我們的增刪改查更加的快速!

在實際的開發過程中,要多思考系統的瓶頸在哪?增刪改查的壓力在哪?怎麼改進?不要網上搜一堆亂七八糟的,覺得很屌的東西,學完之後發現他根本不知道是做什麼的,一切的開發圍繞我們的業務來展開,然後才是增強體驗性,搭建快速穩定的架構!


那我們應該怎麼來進階呢?

1,大局觀:不要只是盯著自己開發的功能,要知道整個系統的整個架構是什麼?使用什麼技術?服務之間怎麼通信?整個服務的性能怎麼優化?全面的來考慮,不然晉升的肯定不會是你!

2,不要一心撲在公司的工作上,要有自己的時間去學習最新的技術,去拓寬自己的知識,明白別的公司用的是什麼?主流開發技術開發是什麼?

3,一定要多總結,不管是平時的工作中或者學習中都能學到很多有用的東西,要把它轉化成demo記錄在自己的技術文檔裡面,方便以後自己查閱和使用!不是做過就算了,一定要記錄下來!

我晚上加班的時候,除非有急事,不然都學習自己的!然後才能感覺自己有很大的提升!我自己記錄了很多做過的,學過的JAVA相關技術,以後會一直分享,需要的話請關注!


哎喲JAVA不錯哦


這是Java程序員中大部分初級程序員很容易走上的路,如果自己不主動學習,只靠公司完成的任務很難對自己技術水平提升。

我是Java開發者,看看身邊工作了一年到三年的同事,能力參差不齊。

之前聽一個工作了一年半的研究生同事分享自己的心得,當著部門總經理的面,說剛開始工作薪資不重要(也暗示了一些東西),主要應該花費精力和財力去提升自己。

工資不高是小事,把錢投資自己是大事

買技術書籍買技術課程,如果走正規渠道花費的都不是小數目,但是對於自己的能力提升,這點金錢和精力也是值得的。

很明顯他屬於工作之餘會找自己的技術棧去深挖。乃至於他僅僅工作兩年就可以擔任技術組長,可以負責某個核心模塊的開發任務。


這也說明一件事,增刪改查只是為了完成初級的工作,當你自己主動去學習去提升,才會不斷因為自己的能力充足而被賦予更多技術層面更高的任務。

關注“極客宇文氏”,一名有料的軟件工程師。

極客宇文氏


你才工作了兩年的時間,可以非常熟練的做增刪改查,就已經很不錯了。實際上在我們公司有一些程序員已經開發了好些年的時間了,甚至連一個遞歸都寫不好。

作為一個工程師,想要提升自己的能力的話,僅僅是依靠公司裡面的項目,絕對是沒有很大的發展的。你需要自己去拓展一些項目,比如說你可以去參與一些開源的項目。

又或者你可以自己從頭到尾的來設計一套系統,可以從簡單的系統開始設計,比如說設計一個新聞系統或者設計一個留言板之類的,然後不斷的去優化它,不斷的去提升它。

不要小看這樣一個小小的系統,當你逐漸的能夠把一個小系統給設計的越來越完美的時候,然後你就可以去嘗試做一些比較大的系統啊。因為當你全盤的去操作和開發一個系統的時候,你的整個思路就不是侷限於這個系統上的某一塊功能,而是整體的這個思想就貫徹到你的大腦當中了,這對於你的技術提升是非常有幫助的。

多想多做,而不要僅僅是完成工作,然後就去玩遊戲了。

以上文字只是我的個人觀點,如果各位看官有不同的觀點,歡迎在評論區中討論留言。



FungLeo


第一,要強大的自律能力。學習是人一生中最不可缺少的東西,活到老學到老。必須要很強的自律能力,堅持每天學習新的知識。

第二,要有合適的方式方法。比如你現在只會增刪改查,你可以整理一下你目前自己的知識點盲區所在。對你目前正在用的,並且還不熟悉的技術加以補充學習。

第三,要有合理的計劃。說的能力都不是一蹴而就的,班長高樓平地起。再厲害的程序員,他的知識儲備庫也是靠自己一點一點積累起來的。千萬不要貪多嚼不爛,合理安排自己的學習時間以及學習方向。給自己定一個半年計劃,等到半年之後你再去看看計劃實現了多少?如果你已經實現了一大半,那麼恭喜你已經提高了。


小紅櫻桃


中國軟件企業還需要你會別的?


分享到:


相關文章: