作爲一名程序員,沒有誰沒跳過槽,跳槽“6招”進大廠

 

作爲一名程序員,沒有誰沒跳過槽

撇開在跳槽時對所“空降”的企業所需要的行業知識知根知底而“得心應手”,從而“穩定”外,其他人可能或多或少都有過因“不適應”新單位環境而又被迫再離開的厄運,以至於在再“找工作”時因爲不能“騎馬選馬”而每況日下!

有32.98%的開發者在過去一年(2013)中曾換過工作,其中有72.5%的人實現了薪資上漲。而在未換工作的開發者中,約有59.3%的開發者同樣能夠漲薪。

下班前簡單做了一張圖:

 

對比兩張圖可以很直觀的看到,薪資漲幅超過30%的程序員比例中,跳槽的(25%)相比不跳槽的(7%)大得多。

所以說,公司願意花大價錢挖新人卻不選擇給老員工加薪--其實是幾乎所有公司都存在的博弈悖論:

當員工沒有跳槽機會時僱主便沒有動力提升其待遇,而當他一旦有更好機會準備跳槽時,公司想通過提升待遇也難以挽留。

跳槽“6招”交給你!最後一招必須掌握!

筆者經多年摸爬滾打、又經多名企業跳槽者、企業管理高手及多名國學研究者討論而總結出如下9招,相信你若把這幾點完全“喫透”,你就會在任何企業“落地生根”而開花結果!

第一招、做人低調(這一招最重要)!

無論是什麼“資”質的企業,只要是在中國的土地上,做事就永遠不是外國的那種“法、理、情”,而是需符合中國國情的“情、理、法”——“情”永遠擺在第一位!所以進入一個新企業,你要徹底地放低自己的身架(不是“身價”,“身價”只能靠結果來證明的)

第二招、多做自我反省。

無論你做的事、或說出來的話,當別人誤解時,你都不能說“你怎麼是個這樣的人”、“你是不是有病啊”、“你腦袋正常點好不好”?你應該說“哦!我是不是沒交待(或沒說)清楚?我再說清楚一下吧,我的意思是……”。他如又曲解,你就再如此說!總之你要多從自身找原因:一切都是你的錯——是自己水平“不夠”才導致了對方誤解、曲解、歪解,才導致了別人做錯!如此,就算對方想說你的“不是”,讓他也找不到“理由”!

第三招、尊重新企業的原管理模式(也可說是企業文化)。

你要知道:企業管理是沒有絕對正確與錯誤之分的,管理只存在“適不適用”的問題:能適用的就是“好”的,不適用的就是“錯”的!

第四招、改革必須是“自下而上”進行。

現在很多跳槽者到新單位發現“問題點”後,針對這些問題點的解決措施,他們就只想“自上而下”推行,即:首先,而且是隻與頂頭上司(含老闆)直接溝通,以爲只要上司點頭認可就可以推行,就可以實現自己的目標,如此就能體現自己的“價值”了!而根本就沒想到:就算上司認可了你的說法,但當你在推行時,一旦你底下有人不滿意而成爲你的“阻力”(這時你如果想靠你自己去排除這個阻力是有點不可能的了)時,你就會去請求你的上司協助(或出面協調)。

第五招、控制自己永遠“不生氣”,無論怎樣,都要控制好自己的脾氣!

工作上的問題,只能是一種同事間的相互影響!只能通過溝通、瞭解、商量及討論去解決!而不能夾進自己的個人喜好——你沒有理由去要求別人來依你的個性去工作,所以你有什麼理由生氣?

【有一句話可送給你:狗咬了你,你能再去咬狗嗎?以此來提醒與鞭策自己吧!】

掌握了基本做人的八招,最後一招就是你的“硬功夫”了

啥都不會,憑什麼跳槽?

大廠面試對技術的考覈基本分爲三個層次:對於基礎知識的考覈、對於項目經驗的考覈、對於項目深度的考覈。

a.基礎知識主要考覈你對 Java 語言本身原理的理解以及各種框架的原理理解。知識點包括但不限於:

  • 集合 HashMap 的原理,與 Hashtable、ConcurrentHashMap 的區別?
  • Java 線程池的核心屬性以及處理流程
  • Java 併發包原理、Synchronized關鍵字、鎖
  • 線程的生命週期
  • JVM類加載機制
  • JVM內存模型
  • JVM分代以及垃圾回收機制
  • Spring Bean 容器生命週期
  • Spring AOP 原理
  • Dubbo 請求流程以及原理
  • 數據庫 SQL 優化、數據庫索引、索引原理
  • ……

面試官一般都會針對簡歷中描寫的知識點刨根問底,不懂的技術千萬不要寫了解。前段時間參加技術沙龍,京東架構師張開濤、騰訊高級工程師劉澤峯都表示大廠招人現在更注重技術能力的細分板塊,你必須在某領域有自己獨到的理解。

b.項目理解一般會讓你畫個架構圖,然後從架構圖出發,你得清楚每個模塊的作用,每個框架的原理以及與其他框架的區別。是否有能拿得出手的項目,並對其原理了如指掌,很大程度關係到你能否通過這次面試。

c.項目思考深度在這一個層次上考覈的是你對開源框架的思考深度,這些框架到底好不好,好在哪裏,不好在哪裏,有什麼可以改進的地方。你不僅要對項目本身理解足夠深刻,還要跳出項目本身,去思考開源框架本身的問題。

那麼要想成功進入BATJ等一線大廠,應該掌握哪些技術能力呢?

1、要具備紮實的Java基礎

這裏所謂紮實的Java基礎不是我們通常所理解的Java語法、面向對象的概念,而是能深刻理解Java的多線程開發,熟練使用NIO技術優化網絡編程,瞭解JVM的底層機制,具備底層性能調優的能力,這些技能恰恰是Java開發人員往往忽略的基礎。

 

2、深入學習常用開源框架

爲什麼BATJ的面試官總是喜歡問源碼?其實我們常用的Spring、MyBaits這樣的框架可以說是JAVA裏面最經典的教科書,從中你能學習到很多寫代碼的經驗技巧,而去悟開源框架中蘊含的優雅架構設計之道這纔是最重要的。

 

3、高性能分佈式系統設計與應用

根據雙十一日誌統計,前端系統有效請求約60w以上的QPS ,而後端cache的集羣峯值近2000w/s、單機也近30w/s,互聯網大廠的架構師面對的就是這樣的生產環境,所以分佈式、緩存、消息這樣搭建高性能系統的技術必須掌握。

 

4、微服務(分佈式服務技術)

微服務架構是一種架構風格,整個應用被劃分並設計爲以業務域爲模型的鬆散耦合的獨立服務,方便橫向擴展能力、伸縮性強、便於開發和維護等等這些是微服務與生俱來的優勢。

5、溝通合作的能力

程序員的戰鬥,往往不是一個人的戰鬥,我們如何在一個平臺下高效的去重,進行代碼review,對功能進行調整、debug,做到在統一的規劃下步步爲營,混亂的堆代碼的過程中找到自己的記錄。這一切都依賴於有效的工具,Git、Maven和jenkins。

如何一起學習,有沒有免費資料?

  最近我也根據上述的技術體系圖蒐集了幾十套阿里、頭條、螞蟻金服等公司19年的面試題,把技術點整理成了視頻(實際上比預期多花了不少精力),包含知識脈絡 + 諸多細節,由於篇幅有限,這裏以圖片的形式給大家展示一部分。

  這份資料尤其適合:

  1. 最近要參加面試的Java程序員,查漏補缺,以便儘快彌補短板;

  2. 想了解“一線互聯網公司”最新招聘需求/技術要求,對比找出自身的長處和弱點所在,評估自己在現有市場上的競爭力如何;

  3. 做了幾年Java開發,但還沒形成系統的Java知識體系,缺乏清晰的提升方向和學習路徑的程序員。

  相信它會給大家帶來很多收穫。

  以上技術可以進JAVA高級架構:867581223 裙裏面有阿里,百度,點評,架構師直播指導,針對工作1--5的Java程序員提升自己,還有架構學習資料,jvm,手寫springmvc,分佈式,高可用,高性能,數據結構,springcloud,springboot 獲取。

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章