最近一段時間考慮到換工作,打算整理一下網絡上曾經面試者分享的的面試經歷並結合自己以往的面試經歷和經驗,幫助大家獲取到互聯網大廠的入職通知書,也就是入職offer。

本文整理網絡面試者和本人的面試經歷和面試經驗分享給大家,主要出於個人層面上做個自我總結、沉淀一下面試經歷以及讓一些有能力的面試者了解一些互聯網大廠企業面試過程,如果有人向往這些大廠企業,告知面試者需要做哪些准備從而能夠如願以償的獲取到互聯網大廠企業的入職通知書。
面試做好提前准備
一談到面試這個問題,很多人都會心里一緊,尤其是一些生性內向的人更是害怕在很多人或是領導面前述職,匯報工作。如何能夠做到不怯場,在很多人面前侃侃而談呢?
首先是要有充分的准備,任何時候做的准備越充分,心里就能夠越淡定因為內心有譜。其次就是是要多加練習,盡量讓朋友幫助你完成模擬面試,然后把面試的表現錄下視頻,反復觀看自己的儀表舉止和談吐有沒有不妥之處,最重要的是,把自己的敘述邏輯以及答題思路總結下,看看有沒有改進的方式從而可以更進一步。最后,讓專業面試官或經驗豐富的人員指導自己的面試,全方位的培養自己的臨場應變能力。
提前面試的表達及表現能力是可以鍛煉出來的,所以要勤於鍛煉,一切成功的都是由背后的積累一點一滴得來的。所以要打好基本功,平時多做知識的積累。
換工作期間是否裸辭?
如果面試者有意願面試一些互聯網大廠企業一定要注意不要裸辭!不要裸辭!因為一些互聯網大廠企業的面向社會招聘的流程比較繁瑣而且時間周期比較長,比如騰訊至少要有四輪面試或以上。

甚至面試的崗位級別高的話,甚至六到八輪,這也根據不同的部門可能有所差異。從投遞簡歷到成功獲取offer,一般情況下要一個月左右,如果裸辭,相信大家都承受不住,而且在一些互聯網大廠企業還有背景調查,從獲取到offer到正式上班還要持續一周多的時間。
互聯網大廠面試最喜歡提問的就是基礎理論和深層次的理解性問題,基礎問題包括哪些呢?稍后舉例,建議面試者提前最好准備。深層次的問題包括哪些呢?其實就是面試者平時辦公時遇到的問題,個人建議不要停留在解決問題的層次,而是要搞清楚背后的原理。
騰訊面試題
下面分享一下騰訊面試者四面技術的面試題以及HR面試聊的那些內容?(面試題的答案會在后續公眾號中分享,關注微信公眾號“Java精選”。)
01第一輪面試題
—
1)有序數組排序,二分查找法,時間復雜度;
2)舉例常見排序算法並說下快速排序法的過程,時間復雜度;
3)怎樣推算出具有n個節點的完全二叉樹的高度為[LOGn]+1,推算過程;
4)朋友之間的點對點關系用圖維護,怎么判斷兩人是否是朋友,並查集,時間復雜度,過程。
5)單元點最短路的方法,時間復雜度;
6)如何實現關鍵詞輸入提示功能,使用字典樹實現,其復雜度程度,有沒有其他方案,回答哈希,如果是中文的話,分詞后建立字典樹?
7)HashMap的實現原理;紅黑樹的結構,查詢性能如何等。
8)Java垃圾回收機制如何實現?
9)什么是死鎖,產生死鎖的原因及必要條件。
10)線程和進程的區別?進程的通信方式。如果代碼執行過程中進程阻塞、內存泄漏等情況如何排查原因?
11)Linux系統中如何查看進程、CPU狀態、端口占用情況,CPU的執行方式。
12)Linux系統中大型文件比如10G以上文件如何查找文件中指定字符串的位置?
13)講述一下以前做過的項目;除正常工作編寫代碼以外,還學習過什么技術框架?
02第二輪面試題
—
1)快速排序法的時間復雜度,冒泡排序法的時間復雜度,快速排序法是否穩定,快速排序法的過程。
2)一百萬個數字,如何找到前1000個最大的數字,采用堆排序,那么怎么構造,怎么調整,時間復雜度。
3)一個矩陣,從左上角到右下角,每個位置有一個權值。可以上下左右走,到達右下角的路徑權值最小。
4)說了一下深度優先搜索算法遞歸實現,如何優化?
5)說了一下用迪傑斯特拉算法(Dijkstra)的思路。
6)四輛小車,如果每輛車加滿油可以走一公里,那么如何能讓一輛小車走的最遠?
7)hashmap的實現,hashtable,concurrenthashmap實現和區別。
8)為什么MySQL數據庫索引選擇使用B+樹?
9)Linux系統中CPU占用100%如何排查?
10)Linux系統中大型文件比如10G以上文件如何查找文件中某一行的內容位置?
11)Redis內存數據庫中內存指的是共享內存嗎?Redis的持久化方式
12)秒殺系統(同一時刻有大量的請求爭搶購買同一商品並完成交易的過程)的架構設計。
03第三輪面試題
—
1)十億個數字的集合和十萬個數字的集合而集合的數字不重復,如何求它們的交集。
2)十億個數字,如何找到前100個最大的數字,采用堆排序,怎么實現,怎么調整?
3)TCP和UDP的區別,具體使用場景。TCP四次揮手講一下過程,最后一次ack如果客戶端沒收到怎么解決?
4)對於socket編程,accept方法有什么用途,在三次握手中屬於第幾次?
5)對於單例模式,使用場景有哪些舉例。除了單例模式,適配器模式怎么實現?
6)講述一下全局ID生成器,分布式ID生成器怎么實現?
7)直播架構是如何設計的,有什么要點和注意事項?
8)Redis和MySQL有什么區別,用於什么場景。
9)最近看什么書,什么時候開始寫博客的?
04第四輪面試題
—
1)自我介紹
2)自述項目以及在項目中有哪些收獲?
3)Linux了解哪些基礎命令和知識。proc文件系統了解嗎?
4)TCP和UDP的核心區別。
5)TCP的四次揮手,time wait狀態有什么意義?
6)面試官“你有什么想問我的問題?”。
05HR面試
—
1)自我介紹
2)實習期間的收獲
3)外地交流期間個人體驗
4)之前實習公司的情況,目前拿到offer了嗎,你會如何選擇?
6)你的優缺點,缺點方面如何改進?
7)你認為你在學生時代最成功的是什么事。
8)你的預期薪資。
在職面試的話,建議約面試官休息時間或周末面試,甚至可以詢問聯系你的HR或面試官能否電話面試,實在沒辦法還比較珍惜這次機會的話建議想辦法請假出去面試。
互聯網大廠企業的流程比較長,有些可能是通過多人面試的過程擇優錄取,也有些可能是因為面試官臨時出差或者休假(舉例:騰訊面試環節中第四輪面試者休假)等不同情況吧!反正大廠企業流程都是這樣。

每輪面試結束后切記不要急着問結果,否則可能適得其反。可以等三至四天后如果還是沒有通知,這時候就可以主動詢問情況了。
每個面試官的處事方式和面試風格都不相同,有的可能會問一些理論知識,有的可能會問一些網上的經典面試題,面試者不能同時具備應付不同面試風格的面試官,因此堅持自己的辦事方式和風格,期望遇到和自己意氣相投的面試官,因為運氣的成分也是比較重要的。
