職位:后端研發,base杭州
目錄(話不多說,直接正文)
7月23日 18:00 一面 60min
7月29日 16:00 二面 55min
8月9月 16:00 三面 80min
8月18日 被北京撈
8月24日 找HR約了四面
8月28日 14:00 四面 55min
9月3日 被北京撈
職位:后端,Data部門,base北京
9月15日 16:00 一面 63min
9月17日 17:00 二面 50min
9月21日 17:10 三面 50min
9月23日 15:00 HR面 15min
面試總結
7月23日 18:00 一面 60min
-
自我介紹+科研專案介紹(約20min);
-
后端開發專案簡單介紹(我的開發專案是輔助上面的科研專案的,比較簡單,約3min);
-
你有做過計算文本相似度的任務嗎?(感覺可能是他們現在有這樣的需求,我專案和簡歷全程沒提這個)
-
能給我簡單介紹一下卷積神經網路嗎?(汗!開發崗問我這個,水過去了)
-
瀏覽器輸入一個網址,到頁面呈現出來的整個程序;(常見題)
-
HTTP是基于TCP還是UDP?(常見題)
-
HTTP和HTTPS的區別,對稱加密和非對稱加密等;(常見題)
-
資料庫建立索引的原則是什么?(我確認過,不是索引的匹配原則,而是判斷是否需要建索引的原則,就說了大資料量才有必要,然后說了索引的利用率,對重復資料多的列就沒必要建,感覺沒答好);
-
sql題:單表中查詢所有科目都大于80分的學生姓名;(比較常規,但是我竟然寫錯了!而且面試官沒提醒我就過了,我后來復盤才想起來);
# 解法一:先查有科目<80分的學生姓名,然后排除這些同學,最后去個重 SELECT DISTINCT name FROM student_score WHERE name NOT IN (SELECT name FROM student_score WHERE score < 80); # 解法二: SELECT name FROM student_score GROUP BY name HAVING MIN(score) >= 80;
-
演算法題:字串無重復的最長子序列(經典!演算法恒久遠,一道永流傳);
-
口述演算法題:兩個佇列實作一個堆疊(當時沒答好,想了個復雜度很高的);
-
你們專案之中有沒有遇到需求,需要往一個多主機的分布式系統上發送請求(我確實沒有相關經驗,因為科研壓力比較大,業務相關的內容了解地確實比較少,遂答沒有,)
-
Linux上如何查看日志?(我覺得他是想問搜索日志,就回答了 grep命令查找關鍵字,并且說我們通常科研專案日志少,通常是下載到本地看);
-
Linux怎樣查看埠占用?(記得有個netstat命令,但詳細的記不清楚了)
-
你的專案怎樣部署在服務器上?(常見題)
-
反問,告知假如通過的話HR會聯系我,一面結束,
下來之后感覺涼涼,因為看很多面經都是一二面連著,而且這個面試官有點嚴肅,語氣比較溫和但是臉上不茍言笑,第二天早上忍不住給HR發短信詢問,告知通過,
7.26約二面,約到7月29日下午四點,
7月29日 16:00 二面 55min
-
專案相關;
-
微博的資料庫存盤設計,建立索引,后續優化(后續優化不怎么會,就瞎扯的);

-
演算法題:二叉樹的左視圖(要求多層列印,比leetcode上的稍微復雜一點);
演算法題做完,自己寫用例運行通過,面試小哥簡單看了一下,然后就說先到這,今天三面的話可能來不及了,我反問“那意思是我二面通過了嗎”,小哥說嗯,然后就道謝say goodbye了,等待三面通知中,
7月31日 主動給HR發了短信,然后約了三面在8月9日,(我這個面試時間跨度有點大...我面了個假位元組?)
8月9月 16:00 三面 80min
-
平常興趣愛好?喜歡看推理小說、動漫、電影、玩游戲;
-
推理小說詳細說了一下;
-
喜歡的動漫詳細說了一下;
-
喜歡的游戲詳細說了一下;
-
考研和作業規劃;
-
演算法題:字串轉化為數字(atoi);(雖然是原題,但是我有邊界沒處理好,大概率因為這個掛掉了)
-
簡歷上的科研專案大拷問,非常詳細;
-
如何看待美國和位元組近期的事件?
-
反問,
三面大部分時間都在嘮嗑,不過主要是我在說,面試官就不停地拋一些問題,然后我就balabala,因為面試官沒開攝像頭,所以我是一直對著黑屏講話,看不到面試官表情,心里就有些沒底,
最后,許愿HR面,位元組救救孩子!
8月18日 被北京撈
從三面后就一直等待訊息,期間也問過HR,也回復說再等等,
直到8月18日中午,接到另一個位元組HR的電話,說杭州這邊不合適,有沒有考慮去北京,我問面試流程,說是流程會短一點(大概少一面)我同意了,(最后直接從終面開始了,但是我沒把握住機會)
希望這次會有一個好結果吧,
8月24日 找HR約了四面
上次HR給了撈人的電話以后,就再也沒有聯系,心里有點慌,于是24日中午給聯系的HR打了電話,HR說幫我聯系一下(感覺位元組的HR小姐姐都很好,感恩),
晚上HR加了微信,跟我約了28號的四面(直接技術終面),許愿通過!!!
8月28日 14:00 四面 55min
-
問深度學習問題折磨我;(專案里有一個用深度學習的,面試官看到了就一直問,甚至讓我手寫公式,我是走后端方向的啊,期間我一直說“不熟、不清楚”,面試官還要一直追問,總共問了7、8分鐘,直接給我干蒙了)
-
銀行家演算法;
-
虛擬記憶體;
-
手撕佇列;
-
手撕優先級佇列(堆);(這個沒寫出來)
面完第三天,問HR,告知不合適,
9月3日 被北京撈
9月3日晚上,北京另一個HR加我,問有沒有興趣再試試,位元組北京Data的后端崗位,我同意了,約了9月15日一面,留出一段時間再復習復習(樓主老拖延癥了),
職位:后端,Data部門,base北京
9月15日 16:00 一面 63min
-
一上來沒有自我介紹,面試官的原話:”我就不問專案了,你那些專案和我們后端也沒有關系,我們這次的面試會有一點難”,
-
有實習嗎?為什么不去實習?
-
HashMap為什么執行緒不安全?假如我的HashMap不會出現哈希沖突,那么會有并發問題嗎?
-
ConcurrentHashMap如何實作執行緒安全?
-
樂觀鎖、悲觀鎖?樂觀鎖ABA問題如何解決?
-
Synchronized的底層實作原理?(這個不會)它用的是業務層的指令還是作業系統的指令來實作的?Synchronized的性能如何?JDK1.8對其進行了哪些優化?
-
JVM的記憶體結構?String s = "hello world" 和 String s = new String("Hello world") 的區別?int a = 100 ,這里 100 存在哪里?為什么不存堆疊里?
-
Error 和 Exception 的區別?Error 能不能用 try catch 捕獲?Error應該如何捕獲?捕獲 Throwable 能否捕獲 Error?
-
StackOverFlowException是什么原因引起的?ClassNotFoundError是什么原因引起的?
-
堆疊的大小用什么引數來設定?默認有多大?堆默認有多大?方法區默認多大?
-
類元資訊存在哪里?類什么情況下會被卸載?被 synchronized關鍵字持有的類的Class物件會被卸載嗎?
-
GC如何判斷一個物件是否存活?可達性分析是用什么資料結構來存的?
-
資料庫 where a = xx and b = xx 和 where b = xx ,這兩條SQL如何建索引?
-
有一個復合索引 b_a ,假如我們查 where a = xx and b = xx ,能走索引嗎?你確定MySQL會幫你優化嗎?
-
資料庫 where a = xx or b = xx 和 where b = xx ,這兩條SQL如何建索引?
-
MySQL單表大概能存多少資料后會性能下降?單表能存一億嗎?假如受限,那主要限制是什么?假如不建索引,那還有什么因素會影響它?
-
MySQL的并發量能達到多大?(我說沒實習過,對并發量沒概念)
-
Redis熟不?(我說不熟)
至此,面試才過了25分鐘,
-
演算法題1:單例模式,我寫了典型的雙重檢查鎖+volatile的單例,問:第一個為null的判斷去掉行不行?第二個為null的判斷去掉行不行?中間都加了 synchronized ,那為什么內層還要判斷一下是否為null?volatile起什么作用?
-
演算法題2:雙執行緒列印1~10,一個執行緒列印奇數,一個執行緒列印偶數,
-
演算法題3:(沒做出來,說了個暴力的想法,還說錯了)
題目描述:
給定兩個鏈表,判斷他們是否有交叉,如果有交叉,輸出所有的交叉節點,節點的資料不會重復,節點資料相同則認為有交叉, 例如 1->2->3->4 和 5->1 ->2->8->9->3->4->0 有4個交叉點,分別是1,2,3, 4, 注意鏈表是有順序的,多個交叉點以第一個鏈表的第一個交叉點為起點,比如1->2->3->4 和 4->3->2->1 的交叉點只有1個,輸出 1,
說明:
和常見的判斷兩個鏈表相交的題目不同,本題中的 兩個鏈表并未真實地產生交叉(無共用節點),此處的交叉僅僅指值相同,
面試感受:壓力很大,面試官沒開攝像頭,并且問的問題非常快,沒有任何閑話,問題問的非常多,我回答一個之后,面試官要么說“ok”,要么說“不對“,我有好幾個都是回答完面試官直接說”不對,不是這樣的“,加上演算法題最后一個也沒有做出來,我一度感覺涼涼,
面試完不到半小時,HR告知通過,我約了二面17號,
9月17日 17:00 二面 50min
-
科研專案,10min,(面試官很厲害,提問的都是專案中很關鍵的問題)
-
演算法題:連續子陣列的最大和
-
上一題進階:如何拿到這個連續子陣列呢?
-
上一題再進階:一個矩陣,找和最大的子矩陣(這里的矩陣不一定是正方形,長方形也可以);陳述思路,面完下去找到了原題:面試題.最大子矩陣
至此,面試過去了40分鐘,因為我題目做的比較慢,面試官也一直在引導我,
-
作業系統會給行程分配一部分記憶體,說一下這個記憶體結構,有哪些部分,程式申請一些常量,或者一些臨時的變數,這些是放在哪一塊的呢?(作業系統層面,非JVM層面)
-
兩個行程的共享記憶體是如何實作的?行程通過什么方式申請共享記憶體?
-
Linux為什么要區分用戶態和內核態?
-
資料怎樣從用戶空間進入到內核空間?又怎么從內核空間到記憶體空間?或者說,應用行程如何從內核空間拿資料?
-
TCP四次揮手的程序,
面試感受:這一輪面試官很會引導,問的問題也都比較友善,交流的程序中也會有很多反饋,體驗很好,
面試完十分鐘,HR告知通過,我約了三面21號,
9月21日 17:10 三面 50min
-
自我介紹;
-
專案介紹;
-
專案登錄,Cookie和Session一些問題;
-
演算法題:

看到題時我是懵逼的,最后花了35min,寫了一個很菜很菜的實作,而且Date類的api也忘了,用自創的偽API實作的,面完感覺涼了,沒想到在第二天(9.22)下午竟然收到了HR面的邀請,算是意外之喜,
順便補充,三面面試官特別年輕,看著像剛作業的,最后我忍不住問他,他說他30出頭,果然是大佬,30出頭就能當三面官了,
-
反問,
9月23日 15:00 HR面 15min
-
自我介紹;
-
對位元組面試的整體感受;
-
未來發展規劃、意向地點;
-
目前面了哪些公司,手頭有什么offer,選擇offer的標準;
-
自我評價,自己的優缺點;
-
女朋友情況;
-
反問;
面試總結
總體來說,面試程序其實挺坎坷的,畢竟前前后后面了8次,持續了整整兩個月,但最后終于收到了offer,還是挺開心的,最后我也將這些面試題和答案也為大家整理好了,
面試寶典:戳這里免費領取,暗號:CSDN,還有更多大廠面試專題資料哦!




轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/125794.html
標籤:其他
