滴滴CTO五輪面試真是太刺激了,已拿到offer

滴滴 CTO 五輪面試真是太刺激了,之前看到好多面經難度極大,感覺運氣還行,面試難度雖然挺大,但面試官人還都不錯。而且面試完馬上出結果,非常刺激!

本文分享給需要面試刷題的朋友,也祝願大家順利拿到自己想要的 offer。

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 實現分佈式鎖,可能遇到的問題和解決辦法

手撕一個二分查找

9 月 16 日下午 3:00 五面

自我介紹,項目提問

聊計網,TCP3 次握手過程,第三次是否可以攜帶數據,如何避免 SYN 攻擊(syncookies);

TCP 四次揮手說一下,爲什麼要等待 2MSL,第二次和第三次揮手是否可以合併(可以)。

操作系統,進程、線程和協程的區別;

如果創建很多個線程會有什麼問題;

進程間通信方式有哪些

MySQL 索引如何實現,爲什麼用 B+樹不用 B 樹二叉樹;

聚簇索引和非聚簇索引的區別;平時索引優化如何做,最左匹配原則;

你的優點,你的缺點(面試官說我們缺點一樣)

你最近看的技術書籍,我提到《Java 併發編程的藝術》看了三遍,面試官讓我詳細每一章講了什麼

你對互聯網行業怎麼看

如果你的績效被打了 C 你會怎麼辦 (這個是一個很大的坑~)

總結:

祝大家能收穫心儀的 offer。

看完三件事❤️

如果你覺得這篇內容對你還蠻有幫助,我想邀請你幫我三個小忙:

點贊,轉發,有你們的 『點贊和評論』,纔是我創造的動力。

關注簡書號『 JAVA永遠滴神 』,不定期分享原創知識。

同時可以期待後續文章ing

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