一篇非常接地氣的面試心得,作者也通過自己的努力,找到了不錯的工作。
概述
筆者2016年畢業於一個普通二本學校,工作位置在深圳,第一家公司待的是人力外包公司(外派到TCL),主要做的是電商和智能穿戴的項目,一年半後跳槽到了一家做智能穿戴app的小公司,至今已工作三年。
大家都明白,對於一名沒有名校背景,大公司背書的程式設計師而言,唯一能夠加分的就是技術和影響力這兩個方面,因此,在去年的3月份,我開始在Github上變得活躍起來,同時,也慢慢養成了寫博客的習慣。下面是我的Github和博客地址,有興趣的可以關注一下~
Github地址
https://github.com/JsonChao
博客地址
https://jsonchao.github.io/
於是,在今年的三月份,我開始投遞簡歷,我投遞簡歷的順序是按小公司->大公司的套路來的,深圳的小公司比較多,中大型公司比較少,因此,在這一個月的面試歷程中,我估算了一下,大概面了6家小公司,2家中型公司和2家大公司。
下面我來結合我的面試經歷來談談不同公司級別的面試難度。
小公司(0-200人)
一般只要你收到這類型公司的面試邀請,只要你能把自己做過的項目架構,項目重難點說清楚,還有一些基本的Android基礎知識,然後你稍微準備一兩個深一點的技術點,比如GC機制、基本的熱修復原理說個10分鐘,offer妥妥的。
但是,個別公司可能會考一些簡單的算法題和智力題,比如冒泡、查找等等。
在深圳這類型的公司三年安卓的價位一般在12-15這個區間,個別有錢的可能上限可以到18,一般都是15左右。至於面試題太常規,這裡我就不多說了,想要看面試題和詳細答案的可以直接看總結部分。
中型公司(200-1000人)
這類公司我只面過兩個,但是我感覺都很有"逼格"。。
第一家(BL科技)
第一家是做外匯金融的,公司位置在科興科學園,好像整個一層都是他們的,剛到的時候,發現面試的人很多,估計正在擴招階段。
我一來,HR小姐姐就遞給了我一張入職登記表,果然,不虧是有"逼格"的公司,填完登記表,我就進到了一個只能容納兩個人的小型會議室里。
等了一會,然後來了一位女面試官,後面才知道是Android主管,問的問題比較廣泛,JAVA、Android、算法各個方面都涉及了,但是都是很基礎的知識,我除了答出基礎答案之後,基本上每個問題都往裡面深入了一兩個層級,就這樣聊了1個小時,感覺主管小姐姐都聽懵了,然後,她馬上叫來了公司的技術總監來面我,技術總監一來,就出了個海量Top k的面試題給我,這個當時我真沒做過。
所以想了一會,沒有想出來,後面又問了事件分發和繪製流程的相關細節。
最後,總監說,不想多跟我繞彎子了,直接說:"I want you",說實話,當時我有點懵,然後後面談到薪資這塊,他們3到5年的薪資範圍估計是15-20這個區間,我要了個最高的,說下周三回我,結果,你懂的。
第二家(SHJ)
在金蝶科技園這裡,好像有一棟樓都是他們的。說實話,本來我是不是很想來的,因為這個職位的薪資範圍比較低。
首先,筆試,很常規,最後一道題大概是要你手寫應用觀察者到一個具體的場景。
之後,便是兩輪技術面轟炸,面試的問題大多是JAVA並發、JVM等知識,還有資料庫、SQL語句、性能優化、海量Top k(又是這個)等問題,還把他們在項目中遇到的一些問題說出來,看看我的解決思路。
面完之後,我感覺他們沒有要招人的意思,只是想和我交流一下o(╯╰)o
中型公司(10000以上人)
第一家(TX)
本來我是準備內推這家公司的,結果,他們的技術在Boss上就邀約我了,然後,約了我進行電面和現場面試,大概的問題是這些:
- 內存抖動(代碼注意事項)
- 跨進程通信
- 動畫原理
- Https的連接過程,加解密算法的選擇,以及為什麼?
- TCP三次握手
- 組件化開發流程
- 如何繞過9.0限制?
- 堆內存,棧內存理解,棧如何轉換成堆?
- hashcode()和 equals()的作用、區別、聯繫?
- Handler、Looper、MessageQueue、Thread關係?
- Hashmap如何解決散列碰撞(必問)?
- Hashmap底層為什麼是線程不安全的?
- 硬體加速的實現原理?
- handler postDelay這個延遲是怎麼實現的?
- 斷點續傳實現?
- RxJava 變換操作符 map flatMap concatMap buffer?
- Android中ClassLoader的種類&特點
- 性能優化(要求比較細,有實踐經驗)
- 代碼、資源熱修復原理
- 有沒有研究的比較深的技術點?
詳細的答案有 1W 多字,下次我再單獨編輯吧,大家可以自行查看:
文字版本:
https://mubu.com/doc/uRmziI6te0
圖示版本:
第二家(PA)
這家我是直接內推的,總體給人的感覺是面試流程很繁瑣,而且比較慢,前前後後包括定薪大概將近一個月。
面試難度中等偏上。問的問題跟第一家差不多,但是要稍微淺一點,除此之後,因為是做金融安全方面相關的,還問到了安全方面的問題,部門領導那一面比較注重架構設計、熱修復、插件化等等技術點。
面試流程為:筆試、第一面兩人技術面(重要)、第二面大領導面、HR面、最後,交完一大批入職資料(這個我就搞了好幾天),HR就會跟你談薪,總體來說,這家公司的月薪Base比一般小公司的都要低一些,但是年終很高,不過也是要看你年度的績效考核的,如果績效不好,可能沒有年終獎,一般的大概也有5個月左右,績效很好的(前10%),可以拿到10個月以上的年終。
所以,對於敢拼的人還是不錯的,而且福利非常多;因此,最後,我就選擇入職了這家公司。
總結
面試這一個月來,真的感覺到現在深圳的市場行情非常慘澹,競爭壓力非常大。
所以,對於非名校,無大公司背景的我們來說,最好是選中一個比較感興趣的方向,把它做到極致,同時,我們可以把它記錄到自己的博客,再寫寫開源項目,提高自己的知名度。
這樣,我們的競爭力就可以儘可能地提升上來了。
最後,我把我之前和這一個月的面試題及答案按照規範整理在了這個開源項目中: