我去的的位於深圳地鐵后海站的Oppo,H口出去往左邊看就是了,面試約的是7點半,時間沒把握好,6點半就到了,在樓下轉了轉,感覺那邊大廈燈光秀還是不錯的,等到大概七點左右上去的,公司前台位於8樓,登記的時候還要求拿膠帶封住手機前后攝像頭,這個操作確實是第一次遇到。不過大樓環境確實挺好的,淡黃色燈光給人感覺很舒服。待客區等待的人還是挺多的,有的甚至直接是在待客區進行的面試,我找地方坐下后便聯系了hr,hr說面試官正在進行上一場面試,讓我稍等。大概等了半個小時,待客區的人差不多都被帶去面試了,終於有一個小哥哥叫到我的名字。
小哥哥帶我到了9樓食堂,嗯,你沒看錯,就是食堂,而且還彌漫着一股飯菜香,我們來到食堂等了一會,后面又來了一個面試官,是技術部門部長,是2v1的面試形式,當時有點懵,心里也是更加緊張。
首先是兩個面試官進行自我介紹,然后是我做一個簡單的自我介紹,接着部門技術人員開始提問,都是android基礎。
Android基礎
- Service的兩種啟動方式?
- 什么方法的重載和重寫?
- 靜態廣播和動態廣播的區別?
- Android消息機制
- 用過哪些網絡框架?Retrofit的原理?
- 如何開啟多進程?
- 如何進行進程間通信?
- 開發中的常用的布局控件?
- 什么情況下線性布局,什么情況下用相對布局?
- 如何減少布局層級?
- 用過哪些事件總線?EventBus的優缺點是啥?
- 如何進行數據庫遷移?
- WebView交互原理?
- RecyclerView和ListView的區別?
- 如何加載大圖而不導致內存溢出?在保證圖片清晰度的前提下要怎么做?(BitmapRegionDecoder)
- Activity啟動模式及應用場景?
基礎的大概就這些,都不是很難,但是很難把每個點都說的很清楚,比如ListView和RecyclerView的區別,當時就只是提到ViewHolder和item動畫,連布局樣式和局部刷新這兩個點都忘記了,確實不應該。
比如第一個問題,大家都知道啟動Service包括startService和bindService兩種,但我覺得這種簡單的問題應該稍微說明一下,比如兩者的使用場景和區別,都可以陳述一下。
后面就是部長面試,主要是考察項目相關的知識點,因為我做過IM應用,面試官就主要抓住這一點提問
項目相關
-
即時通信原理?
-
心跳機制需要考慮哪些因素?
-
TCP和http的主要區別?
-
Listview條目有很多圖片,如果讓可見條目的圖片快速加載?(面試官提示:定義任務的優先級)
-
有沒有優化在弱網時候的通信?
后面還問到一些生活方面的問題,職業規划相關的問題
整個面試過程相對來說還是比較愉快的,面試官問問題的時候也是全程面帶微笑,能夠讓人在一種相對輕松的環境下進行面試,這一點很nice,之前也面試過一個一些小公司,那個面試體驗簡直了,無力吐槽。
最后希望大家都拿到理想的offer。