畢業快 5 年了,每當和人聊起自己的職場飛升之路,都不由得感激當初果斷逃離舒適圈的自己。出身一所非 211、985 院校,畢業后入職了一家小型互聯網公司,當著普普通通的入門工程師,工作期間雖然也時常遇到挑戰,但手頭的技術始終局限于表面,遇到稍微難點的實際問題就無從下手,也接觸不到什么大型項目。
這樣的生活持續了 3 年,公司平臺的局限性和自身能力的不足讓一直懷抱著進大廠夢的我在這家公司逐漸失去了斗志,過著高不成低不就的日子,同時因不確定的未來感到非常不安。
都說三年是程序員的一個坎,能否晉升或者提高自己的核心競爭力,這幾年就十分關鍵。有一天無意間看到了一篇Spring大佬的經驗分享貼,講述了他初入圈子走過的彎路以及最后如何進入快手實現了逆襲。
順著大佬的思路,我分析了自己的實際水平和狀況:
1、技術不精不成體系:技術能力浮于表面,對底層邏輯和架構不了解,也不知道如何系統化進行學習;
2、遇到職場瓶頸期:站在3年職場的分水嶺上,沒有足夠的綜合能力,想要漲工資可技術實力不足,只能被淘汰;
3、面試沒有競爭力:非名校非科班出身,想進入一線大廠,但每次面試之后杳無音訊,跳槽計劃總是落空;
然后,我結合大廠的招人需求和帖子中大佬分享的經驗,列出 9 個需要提升的能力,如果你和曾經的我一樣迷茫,建議你也看看:
當然,想要深入學習并掌握這些能力,我深知并不簡單。需要高度的自律和不少的學習時間,平時工作已經很飽和,自己去盲目自學,大概率會走彎路,消耗大量的時間和精力,學習沒有體系,再用功也白費。
按照上面這個提升思路,我找到了一個學習路線,這個學習路線也是我實現進入大廠 40w+ 小目標的一大功臣。
框架源碼:
一門技術只是會用沒什么用,只有熟練了才有用,用了一門技術遇到問題怎么去快速解決,一般解決問題的能力能直接體現你的綜合能力。要成為一名合格的架構師,學習造輪子是很重要的一部分,那么如何去學習造這個輪子呢,下面是我給大家整理出來的學習方法。
學習源碼的基礎最好是對這個框架有基本的了解,如果已經熟練使用那是最好的。
并發編程:
并發編程并沒有我們想的那么難,很多的時候我們在思考的時候是因為沒有get到并發編程的點,很多時候我們都是稀里糊涂的去學習并發編程的,根本很難弄明白并發編程要注意什么,在這個期間我覺得自己走了很多的彎路。
性能調優:
對于很多研發人員來說,Java 性能調優都是很頭疼的問題,為什么這么說?如今,一個簡單的系統就囊括了應用程序、數據庫、容器、操作系統、網絡等技術,線上一旦出現性能問題,就可能要你協調多方面組件去進行優化。如何輕松搞定 Java 性能調優呢,需要一個清晰的學習路線。
分布式框架:
分布式框架就是同一個服務,把數據庫的不同部分分開建立到不同的服務器上。以緩解數據庫大量數據訪問的壓力。很多大公司的業務量比較大,每天的訪問量都達到幾百萬上千萬,甚至上億的訪問量,在訪問量不是很大的情況下,是可以通過提高單臺服務器的配置來滿足需求的。但是當單臺服務器已經滿足不了需求的時候就需要做分布式處理了。畢竟一臺服務器的處理能力是有限的。所以現在很多大廠對于分布式的要求是很高的。
微服務:
微服務架構是一種以一些微服務來替代開發單個大而全應用的方法, 每一個小服務運行在自己的進程里,并以輕量級的機制來通信, 通常是 HTTP RESTful API. 微服務強調小快靈, 任何一個相對獨立的功能服務不再是一個模塊, 而是一個獨立的服務.
舉個例子, 就是將以前的大兵團全功能的部隊, 拆分成一個一個專業化小分隊, 各司其職, 各自為戰, 彼此之間用清晰的接口通訊.
項目實戰:
作為一個合格的架構師,你除了要掌握資深雄厚的框架基礎,你還需要的就是大型項目實戰的經歷,能夠自己帶領團隊,完成這個項目實戰,下面給大家列舉兩個一線互聯網大廠的項目實戰。(雙十一電商平臺和分布式調用鏈平臺)
總結:
上面的學習路線是根據多年的架構經驗總結出來的,希望對大家的學習有一定的幫助,僅供參考
最后為了備戰金三銀四給大家也準備了一份大廠面試真題(包含解析)希望大家能夠在這段時間里拿到自己心怡的offer。
大廠各個專題的面試真題:
1000道一線互聯網面試真題:
2022最新一線互聯網真題(最全解析):
由于篇幅限制小編,pdf 文檔的詳解資料太全面,細節內容實在太多啦,所以只把部分知識點截圖出來粗略的介紹,每個小節點里面都有更細化的內容!如需參考原件 pdf 學習+刷題可以幫忙三連支持一下