抖音、騰訊、阿里、美團春招服務端開發崗位硬核面試(上)


抖音、騰訊、阿里、美團春招服務端開發崗位硬核面試(上)

先報一下身份,筆者的師弟小民同學。小民同學應屆校招從事服務端開發,參加校招面試以來,共面四個公司的服務端開發崗位:

  • 抖音,IES互娛
  • 騰訊,PCG 應用寶數據中臺
  • 阿里,新零售供應鏈
  • 美團,到店事業部

目前為止,除了阿里還在等交叉,其他均已收到 offer,硬核技術實力。小民說自己是個技術渣,這是個要求很高(有點裝 X)的同學。

本篇文章與大家分享一下面試經歷,希望能對參與一線互聯網大廠面試的同學有些幫助。

由於內容較多,想要獲取面試題的答案,記得關注公眾號,下篇文章將會詳解面試題的答案。有需要的同學,建議收藏本文

騰訊 PCG 應用寶數據中臺

PCG 感覺瘋狂招人,面試難度忽高忽低,面試形式也很多樣,騰訊視頻zoom牛客網都有,比較隨意。

騰訊三面 20min 算法題+一個基礎問題面試就結束了……一度以為自己直接掛了,體驗很差。

準備的話操作系統計算機網絡多看看。如果會 C++ 多準備下,面試騰訊問題不大。

騰訊一面

  • 項目講了20分鐘,問你做了什麼,項目細節、你的成長之類的
  • Java鎖 synchronized volatile
  • 快排如何變為穩定的
  • 排行榜如何實現
  • 如何查排行榜第2000個人的信息
  • java遊戲服務器 如何通信
  • 算法coding,反轉鏈表

騰訊二面

  • 工廠模式 場景
  • hashmap treemap
  • 數據庫索引 不用二叉樹原因是因為 二叉樹可能會變為O(n)
  • 數據庫如何加快 查詢 :cache 索引 ,分表分庫,
  • 網絡粘包
  • 網絡兩次握手不可以?
  • Kafka水位(high watermark)
  • ArrayList 和 LinkedList 遍歷操作效率比較?ArrayList更快 操作系統預讀

騰訊三面

算法:帶父節點的二叉樹 中序遍歷查找的上一個節點?zookeeper如何體現AP

抖音,IES互娛

字節面試效率是最高的,一下午一面二面連著面試,之後隔兩天就三面。每次面試HR都可以當天晚上給出面試結果,效率極高,給HR小姐姐送愛心~

面試準備,基礎點到為止,只要不答得很差就沒事。主要還是算法,基本上每輪兩個算法題,白板寫代碼,要運行的那種,還是挺有壓力。

抖音後臺一面

50min

  • 線程池 堵塞隊列為什麼要用堵塞的
  • 一個線程在內存中如何存儲
  • volicate ->內存重排序到底怎麼避免的……
  • http 握手的 wait time
  • 訪問一個 url 發生了什麼
  • dns 是什麼 原理
  • 跳錶 和平衡樹區別
  • 平衡樹的種類
  • 計算題:撲克牌兩張王的概率
  • 手寫代碼:合併N個鏈表 -> 優化為 log(n) -> null 判斷 -> 不允許修改數據結構怎麼實現

抖音後臺二面

60min

  • 微服務註冊中心原理
  • 註冊服務怎麼判斷上線下線
  • 如果一個服務版本升級了 其他服務沒升級怎麼辦
  • 為什麼要使用spring cloud
  • jvm參數 為什麼要配置-> 8G內存的機器 java進程最大配置多少
  • 策略模式 如何解藕 -> 項目中如何使用的
  • redis 持久化
  • redis 主從複製

算法題一

判斷一個IP是否在國內。輸入:數據庫中有幾十萬的國內IP段 (start_ip, end_ip)一個待驗證的IP輸出:YES or NO

算法題二

用戶在線波峰計算。輸入: 用戶日誌(time, user_id, login | logout)輸出:同時在線人數的峰值, 峰段(峰值的90%) eg (19:50到22:10, 峰值3億,最低2.7億)

抖音後臺三面

沒啥技術問題,領導約談人生,職業規劃、打算之類的。

阿里,新零售供應鏈

阿里面試難度最高了,基礎每個知識點會問到你直到答不出來為止。時間也是最長的,基本上每次面試都 50min+,面試官問的問題很細節,發現你有含糊其辭的會詳細問,基礎一定要複習好,還要多看看源碼。

面試流程還很長,一週一面,整個流程下來很累,筆者至今還在等交叉面。

阿里一面

  • mysql B+ B區別
  • mysql 隔離級別 -> MVCC如何保證的 -> 間隙鎖怎麼使用的
  • mysql hash索引?
  • redis 為什麼快-> 系統設計的時候如何優化的
  • jenkins 如何用的
  • 策略模式 不同策略怎麼轉化的
  • Spring AOP如何實現的 -> 你項目中如何捕獲aop異常 以及記錄日誌的
    java 枚舉類型是否可以繼承 (final)? 註解是否可以繼承?
  • java內存結構
  • 對象創建過程
  • 類加載器 -> 雙親委派-> ClassLoad find load的區別(和麵向對象有關係)-> JDBC 加載機制 -> 面向對象的原則
  • 滑動窗口 -> 客戶端和服務器端分別有哪些區域(已確認 傳輸未確認 未傳輸)
  • volitale 怎麼搞

阿里二面

  • 實習的工作?有什麼感覺有難度的地方?和團隊其他人怎麼協調的?
  • 實習之後有哪些成長?
  • 業務可以改進的點?
  • 有沒有博客?開源項目?
  • 未來三面職業規劃?
  • 看了看我大三的面試記錄?問了一下當時面試掛掉的原因?我說算法當時不行,順便問了下我今年的筆試情況
  • 常用的語言?python和java比較
  • 最近在看什麼書?

技術:HTTPS 和HTTP區別是什麼? HTTPS 客戶端服務器怎麼交互的?

阿里三面

  • 項目:介紹 難點 實現細節 和二面差不多
  • 項目的平行對比……我們組的項目和平行項目(hadoop spark)相比 優勢?
  • eureka源碼 Hystrix源碼
  • 分佈式鎖實現方式?
  • zk的原理 源碼
  • Spring cloud/jdk設計模式 項目中的設計模式
  • 序列化方式
  • 最近在看什麼書? 平時怎麼學習的

美團-到店事業部

美團面試難度一般,基本上在問一些基礎知識,多準備基礎知識就可以。

美團一面

  • MVCC 在讀方面有什麼用途
  • Future的缺陷 CompletionService 在依賴任務之間是如何實現的
  • Tomcat框架的 selevet
  • 算法穩定性的實際作用
  • http 協議是什麼 POST請求字段
  • 算法:第 K大的元素
  • 略去一些基礎的問題,比較簡單…

美團二面

  • 算法1:第一個從n個數字的數組中等概率的取出m個數字
  • 算法2:後綴樹找最長重複的字符串
  • 算法3:反轉最後K個節點
  • http 請求 api 超時如何實現的(定時器有關)
  • mysql 索引 orderby 之後的字段要不要加進去 -> 以及 mysql orderby如何實現
  • 操作系統兩個進程寫共享內存中一個位置 會不會出現不一致(和分頁分段有關)
  • 略去一些基礎的問題,比較簡單…

未完待續…

分享了幾大互聯網公司面試的題目,筆者認為如果不提供答案以及小民同學的複習資料也是耍流氓的行為,下篇文章詳細分析面試題答案以及複習參考和整理的面試資料。有需要更詳細地瞭解面試,可以在文末留言。


分享到:


相關文章: