天天看點

大廠面經分享!

大家看到這篇文章的時候,應該是我在新公司的第一天,很不幸,周六去打羽毛球的時候腳崴了,得瘸着腿去公司了,周末在家給大家碼碼面經吧

先給大家看下我的面試記錄吧

大廠面經分享!

我的面試感受

先說一個字

是真的「累」。。。。。安排的太滿的後果可能就是經常一天隻吃一頓飯,一直奔波在路上

不扯這個了,給大家說說面試吧,Moon 工作大概兩年多的時間,大家可以參考下

在整個面試過程中,問的最多的幾個問題

  • 1.Java 本地鎖到分布式鎖,各種鎖的場景,為什麼要用,以及不同鎖實作方式的底層,優缺點,還有 volitale
  • 2.hashmap  ,這個就不用多說了,put 過程啊,為什麼線程不安全,1.7 和 1.8 的差別,為什麼要用紅黑樹等等,可問的很多
  • 3.多線程實作方式,線程池核心參數,運作過程,有什麼問題需要注意的
  • 4.jvm  方面,cms  問的比較多,和 g1 的差別,還有 rootsearching,類加載過程,jvm 記憶體模型以及各個子產品運用
  • 5.redis  哨兵同步,投票選舉,叢集模式,持久化方式,zset 實作方式
  • 6.dubbo 調用鍊路, 其 spi 和 java 的有什麼差別
  • 7.mysql  索引優化思路,事務 mvcc,日志系統,主從同步, buffer  pool ,分庫分表等
  • 8.zookeeper 腦裂問題,leader 選舉過程
  • 9.spring bean 生命周期,循環依賴,ioc 和 aop ,事務實作方式等
  • 10.kafka 高吞吐原因,丢失消息的場景,副本維護,leader 選舉,消息幂等性保證等

其實對于我這個履歷和工作經驗來講,在整個面試中問的很多的還是對于「基礎還有各個架構的了解」,這也是最基礎的内容,還會有一些「設計選型」,因為 moon 在後面項目經曆中都是以項目負責人去寫的,你需要知道為何要選某個架構,還有一些兜底,都是需要自己去做的

履歷怎麼寫

給大家看下專業技能欄,我在這裡寫的基本都是我記得很熟的,不熟悉的架構我一般不會寫上去,比如 rabbitmq 雖然自己有看過,但是不是很熟,對于不熟的我是寫在後面項目架構中,當然這裡就可能會設計到架構選型的問題

大廠面經分享!

大家會發現,其實面試官「基本都是按照你寫的技能」去問的,基本要求就是你履歷上寫的東西,你都需要熟悉,基本技能欄一定要「展現某些技術的深度」,能讓面試官看出來你平常會有自己去深度學習

在給大家看下項目欄

大廠面經分享!
大廠面經分享!

這裡我就挑了兩個項目去給大家看下

我要告訴大家的是,「一個好的履歷模闆絕對能讓你履歷通過的幾率大很多」

在項目經曆這塊兒一定要詳細的去寫

  • 「技術架構」:展現項目所用技術架構,後面面試官可能會根據項目内容結合技術架構去提問
  • 「工作職責」:展現了你在整個項目中的角色定位
  • 「方案設計」:可以展現出你的設計能力,為何要這麼設計?
  • 「痛點」:為什麼要做這個項目?是有什麼解決不了的問題嗎?
  • 「主要功能」:介紹你這個項目的内容,讓面試官能夠一眼了解你這個項目大緻内容
  • 「解決了什麼問題」:展現業績的時候到了

面試過程需要注意什麼

1.跟着面試官的節奏回答問題

在 Moon 面了這麼多場後發現,語速很重要,由于 Moon 平常說話都是很快的,是以在面試過程中一般「語速」都比較快,但是有些面試官會比較喜歡穩紮穩打的,語言這種東西在字裡行間中也會展現出一個人的性格,當一場面試進行了 10 多分鐘左右,你就可以「根據面試官的回報來調整」自己的語速,能力固然重要,但是面試結果還是掌握在面試官手裡的,對不?即使通過了後面的面試到了談 offer 的時候,之前面試官對你的評價也是很重要的

2.讓面試官跟着自己的節奏來問

這點也是非常重要的一點,盡管你面試可能會有 4~5 輪,但是還是沒有辦法完全的挖透你,在面試官問到某個問題時,如果你對某個問題了解的比較深入,那麼你就「可以抛出更多的知識點讓面試官去追問」

比如你在回答鎖更新的時候可以自己擴充到鎖标志位,通過鎖标志位還可以擴充的對象的記憶體布局,通過記憶體布局還可以擴充到不同作業系統對于記憶體布局的存儲大小

通過一個個深入知識點的抛出以及面試官的追問,既可以讓面試官發現你是一個平常都會去深入學習的人(每天一個小心機)

3.避重就輕,快速逃離

這點也很重要,如果遇到某個不會的問題時,立馬過,不要猶豫,因為整個面試時間是固定的,在某個你不會的問題上停留太久可不是一個明智的選擇,一定要放大自己的優點,讓面試官的問題能夠盡量精準命中你的知識體系内

4.學會猜

學會猜,這個要怎麼了解,我給大家再舉個例子

比如面試官問到你 zookeeper 的選舉機制是怎麼做的,如果你不會,該怎麼辦

這個時候就要學會猜了,你「可以給面試官說下其他的選舉機制」,以及有哪些問題,然後根據 zookeeper 的特性,去猜下它是大概怎麼去選舉的,這個地方「即使答錯了也沒關」系,因為「面試從來不是要考倒你,而是要看看你會什麼,你自身的特性是否滿足這個崗位」

5.别緊張,放輕松

雖然是技術崗位,但是溝通能力也是非常非常非常重要的一點,如果是一些深層的研究崗位,這點可能要求不是很高,如果是業務開發,那麼溝通也是會占有一定的比重的,畢竟你需要經常和其他業務方溝通

怎麼才能不緊張?「多練,多說」,沒有捷徑

6.先面小公司

把自己喜歡的公司放到後面,「先面小公司掃掃盲」,找下手感,「或者讓周圍技術比較好的朋友多幫自己模拟面試一下」,盡量擴寬或者加深一下自己的知識體系,好久沒面試也要鍛煉下自己的溝通,好在後續面試能夠正常或者超常發揮~

一些讀者的小問題

學曆重要嗎?

重要,說不重要的都是騙人的,之前我一個朋友專科學曆,技術很硬,但是連面試機會都很少,這個東西就相當于敲門磚,「大學和專科是一道分水嶺」,「重點大學和普通大學又是一道分水嶺」,對于校招的同學來說一個重點大學的學曆文憑很重要,如果是社招的同學要求會放松很多,畢竟 Moon 就是一個普普通通的二本

算法重要嗎?

刷就完事了,想進大廠的同學,算法必刷的,但是現在很多中廠也開始卷算法了,每天一道刷刷,也不會消耗太長時間,雖然工作中很少用到,但是這個東西關鍵在于可以「鍛煉并擴充自己的思路」

談薪不敢要怎麼辦?

薪資有很多考量因,比如「面試水準、上份工作薪資、你所面的這家公司的薪資範圍」等等等等,談薪可以多看看周圍人的薪資水準,可以做一個參考,如果你覺得你面試整個流程都很好或者手裡也「有比較不錯的offer」,那你就可以超出預期的去要下,當然不要太離譜,Moon 面的某廠在最後談薪的時候 hr 就很明确的說要的很高,給不了,對于喜歡的公司一定要去軟體上查查薪資水準

說下結果吧

最終大概有一半以上的面試都到了 hr 面,後面由于太多,我很多面試都推掉了,實在沒有精力了,大廠的 offer 也有幾家,但是最終還是選擇去阿裡了,希望大家都能進入自己心儀的公司~

最後面經奉上

記錄的可能不是很全,有些比較簡單的也沒有往上寫,大家參考下吧,有問題可以關注我的公衆号:moon聊技術,私聊我~