螞蟻三面被掛,幸獲內推,歷經5輪終于拿到口碑offer

推薦:我憑借這套Java面試核心知識點,成功拿下了騰訊、阿里、字節跳動等大廠的offer(java基礎+多線程+JVM+Redis+MySQL+Spring+微服務)

每一個互聯網人心中都有一個大廠夢,百度、阿里巴巴、騰訊是很多互聯網人夢寐以求的地方,而我也不例外。但是,BAT等一線互聯網大廠并不是想進就能夠進的,它對人才的技術能力和學歷都是有一定要求的,所以除了學歷以外,我們的技術和能力都要過硬才行。

今年前前后后我參加了阿里巴巴兩次面試,一次是社招,一次是內推,第一次社招3面過后就被掛了,內推歷經5面拿到的offer,進入的是阿里口碑部門,分享一下這次的面經,希望能幫助到大家。

社招阿里巴巴(新零售部門),三面被掛

阿里巴巴一面(55分鐘)

  • 先介紹一下自己吧
  • 說一下自己的優缺點
  • 具體講一下之前做過的項目
  • 你覺得項目里給里最大的挑戰是什么?
  • Hashmap為什么不用平衡樹?
  • AQS知道嗎?知道哪一些呢?講一講。
  • CLH同步隊列是怎么實現非公平和公平的?
  • ReetrantLock和synchronized的區別
  • 講一下JVM的內存結構
  • JVM 里 new 對象時,堆會發生搶占嗎?你是怎么去設計JVM的堆的線程安全的?
  • 講一下redis的數據結構
  • redis緩存同步問題
  • 講一講MySQL的索引結構
  • 你有什么問題要問我嗎?
  • 直接口頭通知我:答得不錯,準備二面吧

阿里巴巴二面(45分鐘)

  • 根據項目問了一些細節問題
  • 說一下HashMap的數據結構
  • 紅黑樹和AVL樹有什么區別?
  • 如何才能得到一個線程安全的HashMap?
  • 講一下JVM常用垃圾回收期
  • redis分布式鎖
  • 再描述一下你之前的項目吧
  • 你覺得這個項目的亮點在哪里呢?
  • 你設計的數據庫遵循的范式?
  • 你有沒有問題?

阿里巴巴三面(50分鐘)

  • 又聊項目
  • 在項目中,并發量大的情況下,如何才能夠保證數據的一致性?
  • elasticsearch為什么檢索快,它的底層數據結構是怎么樣的?
  • JVM內存模型
  • netty應用在哪些中間件和框架中呢?
  • 線程池的參數
  • 講一下B樹和B+樹的區別
  • 為什么要用redis做緩存?
  • 了解Springboot嗎?那講一下Springboot的啟動流程吧
  • 如何解決bean的循環依賴問題?
  • Java有哪些隊列?
  • 講一講Spring和Springboot的區別
  • 最近看了什么書?為什么?
  • 你平時是怎么學習Java的呢?
  • 內推阿里巴巴(阿里口碑)

5面拿offer(3輪技術面+總監面+HR面)

阿里巴巴一面(38分鐘)- 自我介紹

  • 介紹項目, 具體一點
  • 講一下Redis分布式鎖的實現
  • HashMap了解么嗎?說一下put方法過程
  • HashMap是不是線程安全?
  • ConcurrentHashMap如何保證線程安全?
  • 數據庫索引了解嗎?講一下
  • 常見排序算法
  • TCP三次握手,四次揮手。
  • 深入問了樂觀鎖,悲觀鎖及其實現。

阿里巴巴二面(45分鐘)

  • 自我介紹+項目介紹
  • 你在項目中擔任什么樣的角色?
  • 那你覺得你比別人的優勢在哪里?你用了哪些別人沒有的東西嗎?
  • Java怎么加載類?
  • linux常用命令有哪些?
  • Spring的IOC, AOP。
  • 講一下ORM框架Hibernate
  • 設計模式了解嗎?講一下
  • 自己實現一個二階段提交,如何設計?
  • 你還有什么想問的?

阿里巴巴三面(30分鐘)

  • 說一下自己做的項目
  • 問了一些項目相關的問題
  • wait()和sleep()的區別
  • 原子變量的實現原理
  • CAS的問題,講一下解決方案。
  • 有沒有更好的計數器解決策略
  • 講一講NIO和BIO的區別
  • Nginx負載均衡時是如何判斷某個節點掛掉了?
  • 講一下redis的數據類型和使用場景
  • k8s的儲存方式是怎樣的?
  • Spring AOP原理是什么?怎么使用?什么是切點,什么是切面?最好是舉個例子
  • 算法題:給一堆硬幣的array,返回所有的組合

阿里巴巴總監面(34分鐘)

  • 算法:給一個set打印出所有子集;多線程從多個文件中讀入數據,寫到同一個文件中;判斷ip是否在給定范圍內;打亂一副撲克牌,不能用額外空間,證明為什么是隨機的。
  • Tcp和udp區別
  • 線程池的原理以及各種線程池的應用場景
  • 線程池中使用有限的阻塞隊列和無限的阻塞隊列的區別
  • 如果你發現你的sql語句始終走另一個索引,但是你希望它走你想要的索引,怎么辦?
  • mysql執行計劃
  • 數據庫索引為什么用b+樹?
  • 你在做sql優化主要從哪幾個方面做,用到哪些方法工具?
  • 有沒有想問的?

阿里巴巴HR面(23分鐘)

  • 自我介紹
  • 平時怎么學習的?
  • 有什么興趣愛好嗎?
  • 怎么看待996?
  • 怎么平衡工作和學習?
  • 有沒有什么想問的

總結

社招時面試新零售部門,主要因為準備不充分,面試又比較緊張,所以發揮不是很好,三面之后沒有了后續。之后意識到學習的重要性,平時多拿出時間來學習,后來幸運地拿到內推資格,為了把握住這次機會,做了很多準備,好在已經拿到offer。

面試答案

讀者福利

關注我私信回復 “面試” 領取附送學習進階架構資料、PDF書籍文檔、面試資料

?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容