前言
大概2月中上旬的時候,因為個人原因,向公司提出離職,過程中雖然有一點波折,但是還是成功的而且好聚好散的在三月初離開了老東家。本來還想休息個十來天的樣子,結果每天一個人在家的時候,感覺像是被這個世界拋棄掉了一樣,無所事事,十分痛苦。最後還是忍受不了這種寂寞,開始投簡歷,找工作。
到目前為止,收到了5個面試邀請,拿到了3個offer,我已經接受了其中比較中意的一家,週一入職,這兩天在收拾東西,準備搬家,今天剛好閒下來了,因此想寫一寫這段時間的面試求職回顧,希望對大家有所幫助。
面試
公司A
團隊20-40人,直播,主要運營海外使用者
首先是一張筆試題的卷子,然後進來一個Android Leader開始面試。
Android相關的問題:
- 關於Android開發架構的相關問題(設計模式相關)、
- 相關優化的問題(如網路優化,記憶體優化等等)
- 如何高效的實現直播中,給主播送禮物的動畫
然後第二個人面(不知道是架構師還是什麼):
- 讓我寫了一個二分查詢,就結束了(黑人問號臉)
最後是HR:
- 上一家公司離職原因
- 期望薪資
- 最快入職時間
個人點評:感覺公司還不錯,但是面試的問題感覺還不夠深入。
公司B
50-100人,電視,直播相關的網際網路公司
沒有筆試題,第一個是Android的技術人員面試,主要的問題是:
- 當前做過的專案,用到的技術
- 聊聊react-native的專案,簡述RN的優勢在哪裡
- 是否使用RxJava重構過自己的專案,RxJava的優勢在哪裡。
- 手寫一個簡易的結合Retrofit+okhttp的網路請求的程式碼
- 手寫一個字串匹配的演算法(當時忘記了KMP演算法的實現,囧)
然後是CTO面試,問的十分廣泛,天馬行空
- 先聊起目前自己做過的專案,優化過那些。
- 在開發工作中,碰到那些頭疼的問題,怎麼解決的,使用什麼工具
- 是否接入過聊天的SDK,開發中碰到過什麼問題
- TCP和UDP的區別,造成這些區別背後的機理是怎樣的,開發時,是否使用過其中一種或兩種。
- 是否寫BLOG,從什麼時候開始寫,閱讀量如何
- .....
- 期望薪資
個人點評:感覺很不錯,但是對自己的表現還不是特別滿意,居然忘記了字串匹配演算法。而且手寫程式碼的時候,也沒有太注重物件導向的思維。
公司C
20-30人的創業團隊,為電信提供服務
由於公司好像並不是做網際網路服務的嗎,因此只有一輪面試
- JIN的使用步驟
- C/C++層如何把不同的資料型別傳遞到Java層
- recycleView與listView的區別
- Fragment的相關操作
- ....
- 期望薪資
個人點評:可能是創業團隊的緣故,工作環境不太好,而且貌似他們是做底層的,面試官對Android的瞭解還沒我多....
公司D
20人以內,智慧硬體相關的創業團隊
人比較少,也只有一輪面試,所幸面試的是個技術大牛,全棧,所以大概聊了將近兩個小時:
- 目前所做的專案
- 個人中短期目標,以及如何達成目標
- 對於RxJava的理解,以及它的優勢
- 編譯原理,資料結構,作業系統,計算機組成原理挨個問(所幸對前兩者還比較熟悉)
- 開發過程中碰到的比較困難的問題,以及如何解決
- 優化相關問題
- Android端如何設計一個可以通過WIFI/ble連線,支援多種裝置,多種操作,本地和遠端資料更新的控制模組,請畫出結構圖。
個人點評:和麵試官聊的還是很開心的,畢竟的全棧,視野開闊,而且問問題的同時也能給你提供不同的思路。
公司E
網路安全相關
收到面試邀請,但是我已經決定入職上面的一家公司,所以並沒有去面試。
騰訊電面
大概是週四晚上收到騰訊的電話面試,他們問得也比較寬泛,不過我猜自己的表現還欠佳(你可能不信,接到電話的時候,我正在上廁所):
- 開發過程中做過哪些優化
- 碰到過什麼問題,怎麼解決
- 看過那些framework層的程式碼
- 如何實現右滑finish activity
- touch事件在Android整個系統中的流動過程
- 如何在整個系統層面實現介面的圓角效果(即所有的APP開啟介面都會是圓角,我承認,當時我懵逼了)
- 是否讀過RxJava的原始碼,簡單解釋
- 給一堆資料排序,要求時間複雜度為O(n)(當時只想到了計數排序)
- 開發過那些比較複雜的專案,簡述
- 工作中同事對自己的評價如何,以及為何從上一家公司離職
個人點評:四十分鐘的通話,我的腿真的麻了。
後記
本來想多寫一點,聊聊寫簡歷,面試的問題,但是轉念一想,我並不是HR,也很少作為面試官面試過其他人,我其實並不知道什麼樣的簡歷是HR想看的,什麼樣的回答是面試官想聽的,如果冒昧的談這些,豈不是誤人子弟?所以只是羅列了面試的相關問題,各位自行參考。假如其中有你感興趣的問題,不妨深入挖掘或者展開研究一下。