上週剛面試回來,獻給程序員們一份“熱騰騰”的面經分享(寫於拿到offer的24小時內)!

首先介紹一下我的面試經歷,上週花了一週的時間,面試了5家公司,拿到兩個offer,這篇面試分享是在拿到第二個offer的當天晚上寫的。

由於時間相隔較短,所以面試大部分內容都記得,我就單刀直入直接寫一下我的面試內容,寫作水平一般,有點像記流水賬,大家將就着看看。。。

面試過程還原:

一、360金融

360一上來就是做幾頁紙的題其中包括選擇題20題和簡述題9題,加上填表時間,一共給了我45分鐘。

其中簡述題主要有以下幾個

  1. 寫出最近項目中代碼工程目錄結構,簡述各部份作用

  2. 如何避免對外開放接口被攻擊,有哪些常用的防護手段可以用上?

  3. 描述線程池的作用,並寫幾個常用的線程池類

  4. 什麼是操作的互斥性,接口冪等性如何保證?

  5. 異步通知交互補償機制的目的和設計?實際工作當中有沒有做過,踩過什麼坑麼?

  6. 描述一下TCP三次握手和四次握手地過程,查看TCP連接各狀態用什麼命令?

  7. 談談Threadlocal是如何解決併發安全的?

  8. Equals()方法與==的區別?重寫equals方法的還需要重寫哪些方法?爲什麼?

  9. 列舉一個設計模式,用代碼或者僞代碼實現

45分鐘後,準時過來收題了。

過了一會之後、進來了一位面試官、進行了技術上的面試。

  1. 談談你在項目中的角色,做出哪些貢獻、項目的組織架構是怎麼樣的?公司有多少人?

  2. 給我畫一畫系統架構圖

  3. 談談併發,談談分佈式緩存

  4. 談談分佈式事務

  5. 你在實際的工作當中有沒有用到線程池?

  6. 談一下你平時是如何設計系統的?系統是如何拆分的?要考慮哪些問題?

  7. 如何將一些熱賣的商品推薦給用戶的?

  8. 談談做過哪些系統優化?以你的實際經驗和踩過的坑拿幾個真實的案例出來說說?

面試結果:沒有進入下一輪、直接回去等通知,掛掉。。。

二、行雲全球匯

1、這家公司就是HR一上來就談了一些問題,比如你的職業規化、技術上有哪些短板、爲什麼要離開上家公司、跟上級領導性格不合怎麼辦、遇到技術問題出現僵持不下怎麼辦、以及問了一些其它的一些問題。

2、然後技術人員過來交談了近一個半小時,談的技術主要圍繞簡歷上進行的。

  1. 談談分佈式事務?

  2. 分佈式緩存的一系列問題

  3. 你看過springboot源碼,說說springboot的啓動過程?

  4. beanfactory與factorybean的區別是什麼?

  5. 有用過線程池嗎?有哪些線程池?線程池裏面有哪些核心參數?

  6. Jdk7與jdk8的區別

  7. 談談HashMap

  8. 有用過volatile嗎

  9. springsecurity與shiro的區別、以及它們的使用場景?

  10. zuul網關Filter處理流程及異常處理

  11. eureka與zookeeper註冊中心的區別?不用eureka可以嗎?eureka已經停止維護了,有哪些替代方案?

  12. 現場手寫遍歷一棵樹

  13. 在系統中如何做sql優化的? b+樹和b-樹有什麼區別?

  14. mybatis中${}與#{}的區別?Statement與PreparedStatement的區別?

  15. mysql中的數據如何與es進行同步的?同步是否有延遲?

  16. 說下netty,你在實際的工作當中,哪裏用到了netty?

  17. 分佈式會話是如何實現的?

  18. Jvm中有哪些算法?

  19. 一個服務慢了你是怎麼定位的?

3、然後就是管理者來談了一些問題

主要問了就是你在項目中的角色、有沒有帶人、手下面有幾個兄弟、以及未來的規化等。

4、再就是換了一個HR來談了一些問題,過往的一些工作經歷、 確定入職時間,談薪等。

面試結果:拿到offer

三、某千萬級用戶量的水果新零售公司

這家公司也是另外一家樓主拿到offer並最終選擇去的公司

樓主選擇的原因是公司流量和用戶量都在千萬級別以上,有較大的發展空間

另外,薪資是25K * 13,也比較滿意,工作時間是雙休5天7小時制,整體來說性價比還是很高。

下面說下這家公司的面試過程:

1、一上來就是研發副總監進行面試

  1. 自我介紹一下

  2. 你們系統的用戶量有多大?日活多少?高峯時期qps有多大?

  3. 說說分佈式事務,給我手畫一下你們分佈式事務是如何實現的?用了這個事務框架有沒有遇到問題。

  4. Redis有哪些算法?給我描述一下。

  5. 給我畫一下你們的系統架構圖(然後進行了描述)

  6. 說說你們的系統爲什麼要用springcloud,不用dubbo?

  7. 說說dubbo?

  8. 說說zookeeper?

  9. 說下java的內存模型

  10. netty的線程模型是怎麼樣的?

  11. tomcat有哪幾種 Connector運行模式?

  12. Spring提供了哪幾種標準的事件、分別給我描述一下?

  13. mybatis 是否可以映射 Enum 枚舉類?

  14. 給我描述一下springmvc的請求流程

  15. 說說分庫分表有哪些方案,爲什麼選擇了sharding-jdbc而沒有選擇Mycat,說說你們是按照什麼規則進行分庫的?分庫分表之後是如何進行關聯查詢的?

  16. 說下jvm的運行時數據區?有哪些垃圾回收器?

  17. 有對mysql進行優化嗎?是怎麼優化的?

  18. 有用過流程引擎嗎?說說Activitiy底層原理。

2、然後是總監上來談了一會、主要談了一些個人傾向與職業發展等問題

3、HR面談、比較詳細的問了過往的一些經歷、談薪、以及什麼時候入職等。

四、其它2家小公司

此外,樓主還面試了其他兩家小公司,問的東西相對來說都比較簡單、最後都是因爲雙方不太匹配、最後沒有談成。

個人的一些面試體會

最後說一下我個人在面試中的一些體會,供大家參考。

第一個就是答題思路,這一塊的話,當面試官問到某個問題的時候,我腦海裏面就基本上呈現出一幅畫面,加上一些文字性的記憶,然後可以一步步的說出來。

所以建議大家平時準備的時候,儘量對某個技術點多畫圖,畫圖理解,輔助記憶,個人感覺效果挺好的

另外,找工作面試是一個重要的環節,面很多試是一個身累心累的工程,在尋找到下一個理想下家之前,每一次感覺就要勝利,又每次掉回空中,不想要被折磨。

我覺得要學會總結,總結自己,總結公司,要先認識到自己的優缺點,硬件和軟件,硬件專業技能,行業資源,從業經驗,軟件性格成長,情緒管理,精神狀態,未來規劃等。

關於offer選擇的話,應儘量選擇在自已期望範圍之內的,包括薪水、工作氛圍、技術、業務等、這樣進去之後你纔會做得開心。

這就是我的面經分享,希望可以幫到各位在準備面試或正在面試的朋友們。

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