1. 程式人生 > >一位高階Java程式設計師教你如何輕鬆拿到阿里、京東、騰訊的offer

一位高階Java程式設計師教你如何輕鬆拿到阿里、京東、騰訊的offer

面試分級

我開始投遞簡歷(世界那麼大,我想去外面的世界看看)。這次看機會與往常不同,我決定好好準備一番,然後開始投遞簡歷,主要渠道是 “X鉤”,輔助渠道是獵頭。

這次面試我將所有公司分為三類:

  • A類: BAT公司,非常靠譜,各項待遇都是很優厚的

  • B類:一些知名的網際網路公司(基本都在C輪以上),基本很靠譜,該有的都少不了

  • C類:就是那些正在招聘的公司,沒啥名氣,雖然錢多但是事也多。靠不靠譜真還不知道,只能碰運氣

面試前的準備:

基礎知識不可少

以前我基本都是直接去面試,總以為Android工作好幾年了,出去面試基本沒啥問題,因此帶著那份傲嬌的自信 總是碰壁,尤其遇到很多基礎性的問題,一時真不知道怎麼回答?還有一些問題之前都記得很準確,但是在面試官問的時候,就一個大寫的懵逼表情。

在我出去面試之前,我已經把 《大話資料結構》 基本看完了(想想我之前的生活,每天早上七點多起床,然後看幾頁,洗漱完就去公司)。因為有了以前的教訓,而且這次我很認真的準備了好久,打算把Java基礎鞏固下,但是手頭沒啥合適的書籍和資料。

還好民間有很多厲害的開發者,他們不以盈利為目的,只為完成某種需求,開發一款 app,然後釋出到應用市場,給需要的人。於是我就找到一個 “Java面試訓練” 的App,下載量還可以,就安裝到手機上,開啟刷題模式,應該刷了10來天吧(都是在上班,下班時間看一點,雖然時間比較零散,但是這樣記得最深刻)。

在之後的面試中,基本很少遇見一些奇葩的java基礎。

剛踏入架構師之路的經歷

這次我給自己的規劃是做一個架構師,但是我深知架構師可不是鬧著玩的,必須要有很強的一面,因此我在簡歷裡面寫的只是“架構師方向”。我在K 公司 做得是架構師方向,因此我覺得有必要朝著這個方向發力,雖然現在不是很厲害,但是堅持一兩年後,即使不是非常厲害,但是也距離非常厲害很近(這裡使用了《孫子兵法》的一句:“求其上,得其中;求其中,得其下,求其下,必敗。” )。

這個想法來源於在K 公司我第一任leader曾經跟我說過的話:『對於新東西,如果你覺得掌握了,但是不應用到專案裡面來,是沒有什麼意義的,時間長了還是會忘記的。』我很慶幸我有一個好老大(我是屬於雙領導型的,K 公司 A專案的負責人是我的leader,但是我的直接彙報物件是 K 公司的副技術總監,下文就成為老大),用他的話來說就是經常踢著我的屁股走。當我在網上了解到很多實用的新技術時,跟他隨意吐露一句話,他就能非常用心的傾聽我的想法,並鼓勵我將這些東西帶入到專案中來。從那以後我就開始看很多新技術,感覺合適的會引進到我們的專案中。從之後的證明中來看,是非常有價值的。

曾經我的情況是這樣的:當我剛進入K 公司後,打雜一個多月,就被關到了 小黑屋(嗚嗚嗚,好可怕的小黑屋,996的制度)。然後才開始正常的架構師之路,第一步就是統一開發環境,在我來公司後,我發現公司的Android同事用的開發工具種類真是繁多啊,神馬 Eclipse、IntelliJ IDEA、Android Studio、Windows、Ubuntu、Mac。剛進公司的時候我曾經用鄙夷的眼神看過那些 Eclipse 的童鞋,真是無力吐槽了。於是我給 老大說:『咱們的開發環境最好統一起來,現在各式各樣的工具,弄個東西真費勁。』於是老大二話不說,就在群裡跟大家吼,都務必切換到 Android Studio(以下簡稱 AS),由我來監督並執行。於是我拿著雞毛當令箭,給大夥把地址什麼的都找好,發到群裡去,讓他們自己下載(後期我們就搭建了 ftp伺服器將這些常用的工具都放在裡面,省的再去下載了)。

下面是我收藏的一個系統化學習的課程體系,對原始碼分析、效能優化、微服務架構、工程化、分散式: