程序員Y工作不到兩年,週末在朋友圈發了個喜報,準備入職美團。
之後,我就帶着祝福跟Y聊了許久,聊天的內容就是具體瞭解一下他面試的過程,心路歷程和未來的打算。
之所以今天才發文章,是因爲我一直在等他整理面試問的內容。今天正好就一併分享出來。
嚴格來講是三面,但是Y笑着說其實只有二面...
美團一面(80min)
(爲保證內容純正,下面的語言是由程序員Y自己整理的,霸哥沒有任何改動)
面試主要是從一個系統設計出發,考察基礎跟項目架構經驗。美團相當重視基礎問題(計算機網絡、操作系統)
主要是圍繞一個系統優化來的,下面就只寫中間問的幾個點:
1、項目介紹(聊一下自己做的項目,互相瞭解了一下)
2、redis相關問題
- redis主要能解決什麼問題,聊一下你所知道的?
- 聊一下redis高可用的相關。主要說一下哨兵集羣的流程,包括選舉、以及宕機之後的處理方案。cluster集羣的工作流程
- 聊一下redis哈希槽,爲什麼不用一致性哈希的方案
- redis爲什麼這麼快
- redis跟mq的技術選型
3、mysql相關問題
- mysql的事務隔離級別
- 面試官描述了一個場景.....這種情況下你怎麼優化mysql,說說你優化的流程步驟
- 你能想到什麼優化mysql吞吐量的方案
- mysql的底層數據結構?索引怎麼存儲的?
4、rabbitmq
- rabbitmq的優勢,能解決什麼問題
- 說一下rabbitmq怎麼保證高可用的?
- 聊聊鏡像隊列,怎麼運作的?口述下代碼??
5、併發編程相關
- hashmap跟concurrentHashMap
6、接近一個小時的計算機網絡基礎、操作系統基礎
- 進程、線程
- http1與http2
- 網絡五層架構,分別是做什麼的?
- TCP、UDP區別,UDP怎麼實現可靠性的,在哪一層實現的?
- TCP的流量控制、擁塞控制
- 進程調度算法
- 等等....記不清了,美團賊喜歡問基礎,接近一小時
7、JVM相關
- 類加載、雙親委派
- 垃圾回收相關?怎麼判斷?算法?收集器?
- 內存區域
8、手擼算法題兩道
美團二面(70min)
正兒八經的面試了.....
1、再來一個場景,優化mysql,具體步驟,什麼命令,怎麼操作,比較詳細
2、redis分佈式鎖的作用?什麼場景用過?會有什麼問題?(原子性的問題、誤刪鎖、誤得鎖等等)怎麼解決這些問題?(面試官提了幾個場景,這塊聊了半個多小時)
3、詳細聊了rabbitmq的工作流程。介紹下rabbitmq的組建,分別有什麼類型,具體是怎麼用的?口述代碼
4、redis高可用
5、聊聊你瞭解的RPC,dubbo與springcloud?我因爲沒做過微服務項目,因此,問我,你覺得應該有什麼功能,我從springcloud的角度回答的
6、RPC與mq技術選型,說下原因
7、Spring源碼,我講了事務的源碼(擼了好幾次了,比較熟悉)
8、手擼算法題兩道
9、聊實習時間、地點,未來發展
美團三面(5min)
這個5min很關鍵了↑
HR直接給錄用函
談笑風生....聊薪資,工作地點,還有一些要錄入系統的基本信息,留了電話
淦!太特麼優秀了!
我問他,爲何如此的胸有成竹?
他給我發來了一份文件,說你可以從裏面隨便挑一個問我!更別說這次美團問得這麼基礎...基礎...基礎...
我打開文件一看...
且不說內含阿里雲、螞蟻金服、騰訊、百度、攜程等一線互聯網大廠的真題,後面還有涵蓋微服務、併發編程、數據庫、消息中間件、JVM、MySQL、Redis、Spring、SpringBoot、SpringCloud、SpringMVC、MyBatis等java主流技術的面試題及解析,原來如此了~
需要免費領取的程序員朋友關注公衆號獲取