一面(一個小時左右)
- 算法:寫冒泡排序,問如何優化,簡單講了快排和堆排序的原理
- 數據庫:解釋左連接
- 數據庫第一第二第三范式,數據庫死鎖
- linux:怎么查看內存;怎么查看進程,ps命令一般在什么情況下使用。
- 什么是冪等操作?怎么解決冪等操作
- 樂觀鎖和分布式鎖是什么,分別對應的場景是什么?
- 了解Web層開發?數據庫索引了解么?聚簇索引,非聚簇索引?索引分類?
- 了解分布式?高可用?如何保證節點集群的同步?了解過么?
- redis的復制,持久化,分布式鎖,隊列支持
- 設計模式里面,單例模式?實現單例模式的雙重校驗。
二面(70分鐘左右)
- 算法:實現一致性hash
- 如何保證數據庫并發時沒有問題?如先查詢,后更改,或者同一時間用戶查詢用戶分期單記逾期,同時用戶執行還款,到底用戶逾期成功嗎,換的錢是多少?
- redis的數據量,如何做的備份恢復?
- 你們的股票行情數據怎么做正確性校驗,加入db以及redis都出錯了呢?
- mysql數據庫的分庫分表,有什么中間件?,主鍵策略是什么
- 大規模的數據量的分庫分表,動態數據源怎么做查詢(一個業務需要查詢多個數據源的信息,怎么做到找到對應的數據源)?
- epoll函數怎么理解?epoll函數在別的哪些地方有用到?
- 如何解決redis的緩存穿透問題?怎么解決redis的緩存雪崩問題?
- Git用的多嗎?git和SVN有什么區別?為什么要進行add、commit、push三步?
- linux怎么對CPU分配?
三面(一個小時)
- 一致性hash底層用的什么數據結構
- 手撕:有時間區間,判斷昨天送外賣的峰值。(這個題做了快三十分鐘,主要是外賣訂單可能是前天的,昨天的或者今天的)
- web方面的應用多么,問了問HTTP?
- 智力題:一天24小時,時針和分針會重合幾次?
- 介紹一下自己的項目。(瘋狂懟項目了,連實驗室的都問了,樓主搞通信的,面試官讓我用白話給面試官講了一些技術點。)
- 類似于百度地圖,如何求A地到B地的路徑,剛開始被面試官套路了,用各種分類討論了半天,最后才發覺面試官想問的是有向圖求最短路徑?說了一下方法是什么?迪杰斯特拉算法作用,復雜度?
- 參加過社團嗎?怎樣能讓合作更順暢,遇到矛盾怎么處理?在溝通過程中出現過什么問題?怎么解決的?舉一個具體的例子。
- 對未來職業發展方向的規劃和想法 矛盾
- 有什么問題嗎?
總結:心得體會
既然選擇這個行業,選擇了做一個程序員,也就明白只有不斷學習,積累實戰經驗才有資格往上走,拿高薪,為自己,為父母,為以后的家能有一定的經濟保障。
學習時間都是自己擠出來的,短時間或許很難看到效果,一旦堅持下來了,必然會有所改變。不如好好想想自己為什么想進入這個行業,給自己內心一個答案。
面試大廠,最基本的就是夯實的基礎,不然面試官隨便一問你就涼了;其次會問一些技術原理,還會看你對知識掌握的廣度,最重要的還是你的思路,這是面試官比較看重的。
最后,上面這些大廠面試真題都是非常好的學習資料,通過這些面試真題能夠看看自己對技術知識掌握的大概情況,從而能夠給自己定一個學習方向。包括上面分享到的學習指南,你都可以從學習指南里理順學習路線,避免低效學習。
領取上述資料,只需點擊這里即可免費下載
大廠Java架構核心筆記(適合中高級程序員閱讀):
mxTbFJ1cmN1R2dB)**
大廠Java架構核心筆記(適合中高級程序員閱讀):