985渣碩的春招總結(三次面試三個Offer)
背景
2020屆 軟體工程專業 本碩都是武大 又菜又慫,春招就沒投幾家公司,看著大佬們個個BAT,又悔又恨京東 商城平台中間件部門(offer)一面
- 自我介紹
- 項目介紹(我對於項目說的比較細,項目簡介、用到的技術、總體框架、個人貢獻,著重講了項目中遇到的問題,我這裡說的是並***形下的性能和數據精確性問題)
- 項目中用到了Redis,介紹一下Redis數據類型
- 你們怎麼保證Redis緩存和資料庫的數據一致性?緩存雪崩?擊穿?穿透?
- 演算法的時間複雜度和空間複雜度的含義,分析一下快排的?
- MySQL外鍵刪除策略?
- 如何做的MySQL優化?
- MySQL索引結構?介紹一下B樹和B+樹?MyISAM和InnoDB索引的區別?
- 什麼是事務?事務隔離級別和MVCC?(我對於這裡比較了解,在徵得面試官同意後,展開說了InnoDB底層對於各個隔離級別以及MVCC的實現,包括各種鎖、ReadView機制和版本鏈機制)
- 最短路徑演算法
- HashMap和ConcurrentHashMap
- Thread的join方法了解嗎?
(我說相當於if(isAlive())wait(0))
那為啥不直接用wait(0)?(不知道) - final關鍵字,final修飾的方法不能被重寫,能被重載嗎(在這裡額外提了Java內存模型對於final的底層實現)
- JVM了解嗎,說說所知道的(??我講了內存區域、垃圾回收、類載入,然後,面試官說可以了)
- 有什麼要問我的?
二面
- 自我介紹
- 項目介紹
- Redis線程安全嗎,事務支持一致性嗎
- 數組與鏈表的區別?
- 項目中數據安全性如何保證的?
(我答對於請求使用 session+token+時間戳 校驗,對於傳輸的數據進行非對稱加密,使用HTTPS,面試官不是很滿意)
- MySQL分庫分表的方案?(我介紹了我們使用的三種方式,hash法、range法以及當前正在使用的hash+range法)
- Zookeeper了解嗎?(。不了解)
- dubbo了解嗎?(。。不了解)
- 意向城市?意向部門?
- 有什麼要問我的?
HR面
- 自我介紹
- 自身的優點和最大的缺點
- 周圍人的評價
- 為什麼選擇北京
- 職業規劃
- 有什麼要問的
華為 武長地區(offer)
一面- 自我介紹
- 項目介紹
- 項目中遇到的最大的問題?
- 畫一下項目的後端架構圖
- 看你資料庫用的不錯,資料庫三範式+BCNF範式?
- 項目中如何處理終端之間的信息交互?
(Web網頁之間使用的WebSocket, 與手機的交互使用的自己用Netty實現的IM框架)
- 平時怎麼學習技術?
- 有沒有做Android的興趣?(????)
- 為什麼想去北京?武漢行嗎?
- 有沒有要問我的?
二面
- 自我介紹
- 項目介紹
- 學習成績相關情況
- 保研還是考研?(保研)
- 獎學金情況
- 最想去的三個公司
- 意向城市,意向部門
- 有沒有其他問題?
去哪兒 機票部門(offer)
吐槽一下去哪兒,四月十二號一面之後,隔了好幾個星期,Team Leader打了個電話二面,感覺涼透了,內推人那裡的狀態是簡歷篩選未通過(???),然後今天接到HR的HR面(???),然後給了口頭offer(???),讓我兩天內回復。。。一面- 自我介紹
- 項目介紹
- 項目中遇到的難題
- 項目中用到了線程池,用的什麼線程池,怎麼配置的參數?
- 項目中的並發臨界資源是怎麼處理的?
- AtomicInteger怎麼實現的?
- CAS三大問題及解決方式
- 事務隔離級別,MySQL默認級別,(可重複讀),為啥使用可重複讀?(可重複讀+MVCC達到了序列化要求)
- 一個類裡面有兩個方法A和B,方法A有@Transaction,B沒有,但B調用了A,外界調用B會不會觸發事務?
- OS進程間通信的方式?Java使用的哪種方式?
- 介紹一下Java中的鎖?可重入鎖如何實現的可重入?
- 瀏覽器從輸入URL到返回結果中間經歷了什麼?
- 分析一下快速排序的時間複雜度和演算法複雜度?
- 你有什麼要問的?
二面
- 自我介紹
- 研究方向
- 學習的課程
- 說一下資料庫範式
- 進程與線程的區別
- 演算法題:計算一個有環鏈表的節點數
這個二面讓我一臉懵逼,項目都沒讓介紹。。。
HR面- 自我介紹
- 項目介紹
- 學習方法、學習成績
- 現有的offer情況
- 興趣愛好
- 意向城市及原因
- 遇到的最大的問題及解決方式
- 有什麼要問的
- 直接介紹了這個部門和業務,然後說了待遇和要求,讓我兩天內回復(???這就offer了?)
總結
- 運氣好,三次面試都拿到offer
- 太慫了,沒敢投BAT之類的
- 太菜了,好多東西沒搞明白
- 秋招繼續加油
最後,歡迎做Java的工程師朋友們加入Java高級架構
群內有技術大咖指點難題,還提供免費的Java架構學習資料(裡面有高可用、高並發、高性能及分散式、Jvm性能調優、Spring源碼,MyBatis,Netty,Redis,Kafka,Mysql,Zookeeper,Tomcat,Docker,Dubbo,Nginx等多個知識點的架構資料)寶劍鋒從磨礪出,梅花香自苦寒來趁年輕,使勁拼,給未來的自己一個交代!歡迎關注專欄:Java高級架構
裡面有大量batj面試題集錦,還有各種技術分享,如有好文章也歡迎投稿哦。