面試4輪字節Java研發崗,最終拿下Offer(技術覆盤)

‍‍‍‍‍‍這次面試字節跳動也是做了很多的準備,還好順利拿到了offer,特分享一下這次的4面技術面真題,以及一份字節2-2師兄整理的面試手冊,希望能夠給一些正在面試字節或計劃面試大廠的朋友提供幫助。‍‍‍‍‍‍


字節跳動技術一面


  • 講一下線程參數的含義
  • Innodb的索引實現
  • 爲什麼是B+樹?
  • Redis的使用,分佈式鎖的實現
  • 操作系統虛擬內存換頁的過程
  • TCP三次握手
  • volatile關鍵字的作用
  • 樂觀鎖、悲觀鎖
  • 之前用過哪些設計模式?
  • 算法題:滑動窗口


字節跳動技術二面


  • 說一下B樹和B+樹的區別
  • 說一下HashMap的實現,擴容機制,擴容時如何保證可操作?
  • Redis擴容機制(漸進式單線程擴容)
  • Spring IoC的原理,如何實現,如何解決循環依賴?
  • 兩線程對變量i進行加1操作,結果如何?爲什麼?怎麼解決?
  • CAS概念、原子類實現原理
  • synchronize底層實現,如何實現Lock?
  • AQS有什麼特點?
  • 手寫項目中某個模塊代碼。
  • 介紹各種網絡協議。
  • DNS在網絡層用哪個協議,爲什麼。
  • 介紹HTTPS協議,詳述SSL建立連接過程。
  • 代碼題:反轉單鏈表。
  • 代碼題:複雜鏈表複製。


字節跳動技術三面


  • 算法題多到爆炸,感覺是算法專場,宇宙條果真名不虛傳
  • 說一下Java垃圾回收機制
  • 64匹馬,8個賽道,找最快的4匹馬
  • 給出兩個升序數組A、B和長度m、n,求第k個大的
  • 給出數組A,長度爲n,數組中元素的值位於[0, n - 1]之間,求是否有重複元素
  • 講一下多線程與多進程區別
  • JVM中什麼時候會進行垃圾回收?什麼樣的對象是可以回收的?
  • Spring主要思想是什麼?


字節跳動技術四面


  • 場景題目:設計一個短域名服務:短信存不了太長網站,需要弄成短域名,你該如何設計一個服務,可以爲全國的網址服務。
  • TCP爲什麼是三次握手四次揮手?
  • 數據庫的隔離級別
  • sql題,寫了個連表查詢外加模糊查詢
  • 算法:鏡像二叉樹 ......


4月11號郵件收到信息,HR直接給了意向書,查收然後確認好了,確定了入職時間。


總的來說,自己如果有想要去的大公司,一定要提升好自己,讓自己的能力和素質與公司匹配的上,我也一直相信,機會永遠是留給有準備的人。下面這套字節2-2師兄整理的面試手冊,分享給大家~



資 料 截 圖:


附贈一份架構師必備資料包

篇幅有限,乾貨內容較長,完整版面試題可以掃碼添加下方微信獲取



點個 在看 ,領取入職字節簡歷模板

本文分享自微信公衆號 - Java專欄(finishbug)。
如有侵權,請聯繫 [email protected] 刪除。
本文參與“OSC源創計劃”,歡迎正在閱讀的你也加入,一起分享。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章