作者:墨眉無鋒墨家代碼
滴滴CTO五輪面試真是太刺激了,之前看到好多面經難度極大,感覺運氣還行,面試難度雖然挺大,但面試官人還都不錯。而且面試完馬上出結果,非常刺激!
9月9日下午1:00 一面
自我介紹+介紹項目
項目中難點及解決辦法
Java線程的狀态及轉換
Java建立線程的方式
建立線程池的方式有哪些
JUC包下的類,能說多少說多少
ReentranLock與sychronized的差別
volitile的記憶體語義,底層如何實作
解釋一下happens-before,有哪些規則
CurrentHashMap源碼
MySQL的索引及差別
算法題:順時針列印矩陣
9月10日下午1:00二面,深挖項目為主(45min)
介紹項目,項目中的難點(15min)
MySQL是如何優化的,資料量有多少
反向索引與正排索引的差別
ElasticSearch的原理(反向索引+TF/IDF)
Zookeeper用過嗎,介紹一下
Zookeeper一般用在什麼場景
除了ZAB協定,在介紹幾個分布式一緻性協定(Paxos、Raft)
線程池的幾種拒絕政策及其應用場景
大資料架構有哪些
LSM-tree應用在那些場景、優缺點
意向工作的方向?大資料or開發
寫SQL:查詢每個班級成績排名前五的學生及成績
9月12日下午3:00三面,全程沒問技術,聊人生(40min)
你對滴滴有什麼了解,知道我們的技術棧嗎
你心中的top3公司(送命題)
你意向的工作方向?大資料or開發
還有幾個問題不記得了~
9月14日下午3:00四面
自我介紹,項目提問Java集合類常用哪些,ArrayList與LinkedList差別;HashMap底層實作,為什麼擴容是2的幂次;如果想要線程安全該怎麼用JUC包下對哪些類了解,synchronized和JDK提供的鎖差別;CAS原理,ABA問題;鎖更新過程講一下;volatile講一下,為什麼不能保證原子性JVM記憶體模型,新生代有哪些區,作用是什麼;如何判斷對象是否可以被回收(1引用計數2可達性分析)JVM常用垃圾回收算法,講一下CMS原理Redis常用資料結構;有序集合底層實作;查找排名在底層如何實作;如何用Redis實作分布式鎖,可能遇到的問題和解決辦法手撕一個二分查找