攜程Java三面面經,已拿 offer!!

分享一位讀者投稿的攜程校招 Java 崗位的面經。

下面是正文。

個人背景:雙非本,機械專業轉碼。

攜程在正式面試之前,會有一個性格測試(40分鐘)。性格測試之後,大概過一週進行筆試。筆試之後,會郵件通知是否通過並預約第一輪面試時間。

普通 offer 一般只有兩面,如果是 sp 或者 ssp 的話,技術面貌似是三面。

攜程的面試難度一般,效率比較高,面試體驗還是不錯的。

一面(45min)

主要是問八股,難度較低。

  1. 自我介紹;
  2. 進程和線程的區別;
  3. 並行和併發的區別;
  4. synchronized 的作用;
  5. synchronizedReentrantLock 的區別,如何選擇;
  6. ThreadLocal 使用過程中可能存在的問題(內存泄露);
  7. ThreadLocal 內存泄露問題是怎麼導致的;
  8. 項目中是如何創建線程池的,什麼不用Executors 去創建線程池;
  9. 知道的本地緩存,選擇 Caffeine 的原因;
  10. Redis 這類緩存和 Caffeine 的區別;
  11. Redis 中常見的數據結構,應用場景;
  12. 緩存穿透和緩存雪崩的區別,解決辦法;
  13. MySQL 和 Redis 怎麼保持數據一致;
  14. 一個 SQL 筆試題,join 多表查詢(共享屏幕)。

答案:

二面(50min)

二面主要還是八股。

  1. 自我介紹;
  2. 使用多線程可能存在的問題;
  3. 線程池原理;
  4. 聊聊ThreadLocal (概念+一些應用舉例+常見的內存泄漏問題);
  5. JVM 內存模型和垃圾回收;
  6. 用到過內存分析工具嗎;
  7. 使用索引能帶來什麼好處,你項目中是怎麼使用的;
  8. 索引底層常見的數據結構,MyISAM 引擎和 InnoDB 引擎用的是哪種;
  9. 聚簇索引和非聚簇索引;
  10. 最左前綴匹配原則;
  11. 造成索引失效的常見原因你知道那些,項目中遇到過索引失效問題嗎;
  12. 如果有一條 SQL 語句執行的很慢,如何進行優化;
  13. 項目中是如何使用 ES的;
  14. ES 檢索比較快的原因,爲什麼 MySQL 不行;
  15. 講一下倒排索引;
  16. 手寫一個生產者消費者隊列;
  17. 反問。

答案:

HR面

  • 個人的基本信息;
  • 對攜程的瞭解;
  • 三個詞形容自己;
  • 手裏還有哪些 offer;
  • 平時的興趣愛好;
  • 選擇工作的理由排序(薪資、加班情況之類的)。

英語測評

HR 面之後,還會有一個英語測評,題目比較多,對英語不好的同學不太友好。題型大概是閱讀、演講、聽力這些。

不過,也不用擔心,應該不太會因爲英語測評的表現刷掉你,但英語測評還是可能會對你的面試評價造成影響,能做好還是要儘量做到最好。

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