每一個互聯網人心中都有一個大廠夢,百度、阿里巴巴、騰訊是很多互聯網人夢寐以求的地方,而我也不例外。但是,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。
本次面經來源於我之前的一位同事的面試經歷
金三銀四跳槽季,小弟爲各位大哥準備了兩份面試寶典:
- 一份是技術乾貨《Java核心知識點整理》
- 一份是面試真題《1000道互聯網Java工程師面試題》
- 轉發+關注,私信回覆【面試】即可獲得免費領取方式。
Java核心知識點整理
1000道互聯網Java工程師面試題