1. 程式人生 > 實用技巧 >五面Alibaba技術專家崗,已拿offer,看看這些面試題你能答出多少

五面Alibaba技術專家崗,已拿offer,看看這些面試題你能答出多少

面試職位:Java後端開發工程師。

五面阿里技術專家崗,已拿offer,這些面試題你能答出多少

在面試前三面真的有點急促,一週內就面完了三次面試,接著就開始無盡的等待,整整等了三週左右,終於完成了四面和HR面。整個過程還是比較曲折的,技術面試還是挺考察技術深度的。現在已拿到offer。

面試問題如下:

一面(主要看基礎):

  1. 先自我介紹,講講自己基礎掌握情況,以及專案經歷
  2. 平時會用到哪些資料結構?
  3. 連結串列和陣列的優缺點?
  4. 解決hash衝突的方法有哪些?
  5. 講講自己對HashMap的理解,以及和Weakhashmap的區別?
  6. 你剛才講的是JDK1.7版本的實現,知道JDK1.8做了哪些改動麼?
  7. 你們在微服務中用RPC通訊還是REST?
  8. RPC和HTTP的關係是什麼?
  9. 談談什麼是HTTP的長連線和短連線?
  10. TCP的三次握手和四次揮手,以及為什麼要三次握手,而不是二次?
  11. TCP 有哪些狀態,相應狀態的含義?
  12. 併發包中鎖的實現底層(對AQS的理解)?
  13. 樂觀鎖和悲觀鎖的理解及如何實現,有哪些實現方式?
  14. SynchronizedMap和ConcurrentHashMap有什麼區別?
  15. 如何使用阻塞佇列實現一個生產者和消費者模型?
  16. 簡述一下Java 垃圾回收機制?
  17. 如何判斷一個物件是否存活?
  18. 什麼是tomcat類載入機制?
  19. 類載入器雙親委派模型機制?
  20. 讓你評價一下你自己?

二面(主要問了底層和演算法):

  1. 扯了下專案、講一下專案經歷
  2. redis的底層資料結構瞭解多少?
  3. 知道動態字串sds的優缺點麼(redis底層資料結構之一)?
  4. redis的單執行緒特性有什麼優缺點?
  5. 用過 Redis 的哪些資料結構, 分別用在什麼場景?
  6. 怎麼解決快取擊穿問題的?
  7. Hytrix的隔離機制有哪些?Hytrix常見配置是哪些?
  8. 做過哪些調優?JVM調優、資料庫調優都行!
  9. 給了個場景,問你怎麼調?

三面(資料庫):

  1. 依然是介紹自己
  2. 資料庫的高可用架構是怎麼樣的?
  3. 如何保證資料庫主從一致性?
  4. 知道mysql的索引演算法嗎?
  5. 為什麼mongodb的索引用了B樹,而mysql用B+樹?
  6. 用mysql過程中,有遇到什麼問題麼?
  7. 生產用的是哪種事務隔離級別,為什麼?
  8. 談一談你對微服務架構的理解?
  9. 用過哪些RPC框架,講講他們優缺點?
  10. 用過docker嗎,對容器瞭解多少?

四面(偏架構方面):

  1. 介紹一下自己,講講專案經歷
  2. 專案中微服務是怎麼劃分的,劃分粒度怎麼確定?
  3. 在實踐微服務架構中,有遇到什麼問題?
  4. 在關於微服務間資料一致性問題,是如何解決的?
  5. 為什麼不用其他的MQ,最終選擇了RokcetMQ?
  6. 為什麼RocketMQ沒有選擇ZooKeeper,而是自己實現了一個NameServer叢集?
  7. Zookeeper在選舉的過程中,還能對外提供服務麼?
  8. 對Paxos演算法瞭解多少?
  9. 如果讓你來設計一個春晚搶紅包架構,你會怎麼設計?
  10. 有什麼想問我的?

五面(HR面):

聊人生談理想,HR很ncie,主要交流為什麼選擇來阿里,未來的打算職業規劃以及待遇等,交流挺愉快。

面試小結:

技術基礎必須紮實:演算法、資料結構、作業系統等,螞蟻金服面試對技術的基礎非常重視,基礎紮實的同學有利於在前兩輪突出重圍。

技術寬度:主要集中在高併發、多執行緒、分散式架構,大以及常用中介軟體(快取等)的選型和比較。

技術原理深入:重點還是提前準備好JVM、多執行緒高併發這塊。

參與的專案總結:你需要清楚你所做專案的關鍵細節、優化、特點、原理。

很多所用第三方庫&中介軟體等的原理,即使你不知道,也要有自己的想法能夠說出如何代替實現,比如單點登入的替代方案。

最後,千萬不要倒在HR面試環節,避重就輕是重點,特別是優點和缺點,如果問到你的規劃是什麼,請記得一定告訴HR你想成為一名優秀的技術專家!

分享一些我個人的學習文件,有需要的朋友自行選擇獲取:

一本Java核心面試知識寶典把每個知識點解析的很深,對大家應該很有幫助,它把大部分的Java知識集結在一起深入的解析出來(非常建議大夥看一看)

  1. JVM
  2. JAVA集合
  3. JAVA多執行緒併發
  4. JAVA基礎
  5. Spring原理
  6. 微服務
  7. Hetty與PC
  8. 網路
  9. 日誌
  10. Zookeeper
  11. Kafks
  12. Rabbi tMQ
  13. Hbase
  14. MongoDB
  15. Cassandra
  16. 設計模式
  17. 負載均衡
  18. 資料庫
  19. 一致性演算法
  20. JAVA演算法
  21. 資料結構
  22. 加密演算法
  23. 分散式快取
  24. Hadoop
  25. Spark
  26. Storm
  27. YARIN
  28. 機器學習
  29. 雲端計算

五面阿里技術專家崗,已拿offer,這些面試題你能答出多少

2020年一線網際網路企業350道面試答案整理

  1. 效能優化面試專欄
  2. 微服務架構面試專欄
  3. 併發程式設計高階面試專欄
  4. 開源框架面試題專欄
  5. 分散式面試專欄

五面阿里技術專家崗,已拿offer,這些面試題你能答出多少

1、面試文件專題整理

既然是要面試,那麼就少不了刷題,實際上春節回家後,哪兒也去不了,我自己是刷了不少面試題的,所以在面試過程中才能夠做到心中有數,基本上會清楚面試過程中會問到哪些知識點,高頻題又有哪些,所以刷題是面試前期準備過程中非常重要的一點。

根據自身面試經歷整理以及不斷收集的(珍藏版)

五面阿里技術專家崗,已拿offer,這些面試題你能答出多少

相關的電子書、底層原始碼

五面阿里技術專家崗,已拿offer,這些面試題你能答出多少

阿里巴巴必備學習知識點

五面阿里技術專家崗,已拿offer,這些面試題你能答出多少

最後

很多人感嘆“學而無用”,實際上之所以產生無用論,是因為自己想要的與自己所學的匹配不上,這也就意味著自己學得遠遠不夠。無論是學習還是工作,都應該有主動性,所以如果擁有大廠夢,那麼就要自己努力去實現它。

以上學習資料均免費放送,最後祝願各位身體健康,順利拿到心儀的offer!

資料獲取方式:點贊+關注,加助理VX:mxx2020666,即可免費領取