阿里菜鳥+騰訊IEG面經(阿里5面,騰訊8面)無限穢土轉生

2020-09-19 12:04:25

寫在開頭

收到阿里實習生意向書也有十天了,也完整的經歷了網際網路春招的歷程。雖然已經收到offer了,但是每天還是不斷在刷牛客的討論帖,看看大家的狀態。一路走來也很感謝牛客這個平臺(雖然在平臺投的簡歷大都沒有回信-,-),也是從當初的看大家的面經一臉懵逼到現在一路走來收穫了阿里和騰訊的offer。所以還是打算寫一篇貼文回饋一下牛客哈哈~

回顧

從7月初開始,一共收了了三個offer,同城藝龍(最早面的),騰訊IEG運營開發,阿里巴巴菜鳥網路Java研發。因為騰訊過了,所以期間陸續放棄了快手、攜程的面試和網易、百度等大廠的筆試(比較懶,有點後悔,其實應該去面面漲漲經驗的)。頭條也投的比較早,當時還沒準備充分其實,連最基本的堆排序都沒有寫出來,硬撐到三面掛了。其他也投了一些公司,不過大都沒有下文了。

總的過程也比較曲折,騰訊一共面了四個部門(也就是被撈起來三次,無限穢土轉生。。),共面了八次,兩次一面掛,一次二面掛,最後IEG是三面技術面+一面HR通過面試。。阿里原本投的是天貓,但是在三面後流程被轉到了菜鳥網路,最後是在北京現場加面了一面技術面和一面HR面,順利通過面試。

騰訊給我的面試體驗是比較好的,每面之前都會電話或者郵件預約時間,很人性化。頭條是現場面,每面反饋也非常快,大概10-20min,中午還管了飯。阿里戰線拉的最長,每面之間都要隔1-2周吧。所以投阿里的小夥伴一定要穩住性子,畢竟有海量簡歷需要處理,也可以理解。

過程是曲折的,好在最後的結果是好的吧。也希望還沒有理想offer的小夥伴不要著急,穩紮穩打,還有很多機會。

經驗

經歷了這次春招,也有了一些自己的體會,和大家分享一下吧。

  1. 提早準備。金九銀十是真的,九月到十月份這個時間點機會是最多的,所以一定要提早準備,多刷題、多看面經。不要抱著我還沒準備好的態度,面試經驗是一點點積累出來的,面的越多越知道自己的薄弱點,越自信。
  2. 《劍指offer》簡直是本神書,刷五遍也不過分。再結合面經多刷一些面試經典演演算法題,把基本的資料結構,查詢,排序演演算法都搞清楚,能手寫,基本可以應對80%的面試。
  3. 簡歷很重要。多找找以前的學長學姐,對自己的簡歷多指導一下,一分簡潔大方,重點突出的簡歷是很有加分的。
  4. 態度真誠。對於面試中不會的或者有些遺忘的點,可以直接和麵試官說我這裡不是很清楚,不要不確定的情況下硬去回答,這樣反而效果不是很好。
  5. 基礎最重要。總的來說,越是大廠對基礎越為看重。甚至spring都沒用過,只要你的演演算法資料結構,作業系統,計算機網路,Java基礎,JVM,並行這些都能夠理解的比較好,通過面試也是完全沒有問題的。

附上騰訊和阿里面經

注:由於是後來回憶的,所有有一些問題記不大清楚了,只能記住個大概

騰訊

一面( 掛)

聊專案(20min左右,主要針對專案架構和一些感興趣的點深入的問)
TCP三次握手,四次揮手
知道哪些樹的結構,分別介紹一下
演演算法題,給一個陣列構造二叉排序樹,二元樹的層次遍歷,時間複雜度,空間複雜度。

一面 (被騰訊音樂撈起來)

開頭:能實習嗎?什麼時候能,
TCP三次握手
TIME_WAIT發生在什麼時候
select/epoll瞭解麼(不會,那跳過吧)
說一下程序間通訊吧
說一下程序排程
雜湊表瞭解嗎,說一下
說一下快排
說一下歸併排序
智力題:100個硬幣,有一個壞的,怎麼快速找到,時間複雜度
redis介紹一下,為什麼速度快? 單執行緒如何保證高並行?
rabbitmq介紹一下,瞭解哪些訊息佇列產品,為什麼用rabbitmq
平時課餘時間都做些什麼,怎麼提高自己的技能?

一面PCG無線運營

真的好基礎
常見的演演算法

二面 掛了

說一下Mysql結構。。???怎麼儲存的
Mysql引擎有了解麼,介紹一下
Mysql主從複製過程
事務特性
Mysql怎麼實現永續性,高可用
OSI三層模型
網路層協定
TCP和UDP的區別
HTTP說一下,HTTP請求頭請求行,有哪些狀態,請求頭有哪些,HTTP方法有哪些
linux,檢視系統狀態的命令,檢視磁碟的狀態?
redis介紹一下,redis常見資料結構,zset怎麼實現的
redis高可用怎麼實現的,高可用怎麼實現,叢集怎麼實現,主從複製怎麼實現
hadoop瞭解哪些,hdfs架構說一下,怎麼實現高可用
hadoop中的nameserver都儲存了哪些東西?檔案結構是怎麼樣的?(一臉懵逼)
啊,redis和hadoop還不如不寫我擦,被虐的好慘啊!!!

騰訊一面 

基礎知識,基本就是圍繞網路,資料庫,那些,都答膩了。。。
介紹一個最熟悉的專案
自己實現過哪些資料結構,快排和歸併排序的時間複雜度,空間複雜度
Java 的 volatile有什麼作用,怎麼實現的
垃圾回收,記憶體模型
題目一道,兩數之和,雙指標

騰訊二面 

自我介紹
專案情況,哪些是自己實現的,專案細節 10min左右
用過python和go麼(答用過py,主要是java技術棧),就沒繼續問了
家庭情況,自己以後的規劃
介紹了部門情況,問IaaS Paas知道嗎
知道SQL隱碼攻擊麼
專案對安全有什麼考量,怎麼增加專案的安全性
專案部署在哪裡,用過linux麼
說一下知道的linux命令吧,怎麼檢視系統負載? 埠佔用?
shell程式設計會嗎?
自己的優點有哪些

騰訊三面 

家庭情況
實習時間,自己未來的規劃
專案情況,專案整體架構,針對性的提問 10min左右
用過python和go麼,python用過哪些庫
Java記憶體模型
Java並行,怎麼實現多執行緒
Full GC
多執行緒並行問題,怎麼解決
Java並行控制,鎖機制,怎麼實現的
說一下樂觀鎖
Mybatis和Hibenate的區別,為什麼用Mybatis
Mysql的並行量?鎖是怎麼加的?
RabbitMQ怎麼用的

HR面 

家庭情況
未來的職業規劃
為什麼考研?
知道自己的部門嗎,有什麼看法?
什麼時候能入職?

阿里巴巴

一面 

自我介紹
專案劈里啪啦,主要針對專案裡使用的技術,問了大約二十多分鐘
知道哪些樹的結構,樹、二元樹、平衡二元樹的應用
知道哪些集合類,執行緒安全的呢,concurrentHashMap原理
看過哪些jdk原始碼,平時都怎麼學習?
springMVC原理,Spring AOP 實現原理
聊聊畢設 分散式儲存相關 優化策略
負載均衡策略有哪些
資料庫分表策略,分別都對應哪些場景
秒殺系統裡怎麼做的流量控制,QPS 3000,那麼 6000+的請求來了怎麼辦
設計一個分散式儲存系統考慮哪些
設計一個分散式架構怎麼設計(負載均衡,快取,一致性等等)
覺得自己有什麼缺點
覺得自己有什麼優點
有什麼要問我的嗎
總體來說主要問專案,和針對在校的情況進行一些有針對的提問,問的基礎並不多,可以定義為簡歷評估面試。

二面 

自我介紹,夾雜各種學校的事情
懟專案,設計,擔任的角色
hashmap,物件可以當key嗎,有什麼注意的地方,執行緒安全嗎,有什麼執行緒安全的map
equals和hashcode有什麼關係
gc瞭解嗎,垃圾回收演演算法,策略
一個執行緒等待四個執行緒,怎麼做
BloackingQueue有哪些,介紹一下
執行緒池策略,10個核心執行緒數,再來一個,怎麼辦
Synchronized的作用域,修飾實體方法和靜態方法有什麼區別
資料庫事務隔離級別,分別會產生哪些問題
IO模型有哪些,答阻塞和非阻塞,感覺好像被鄙視
在rocketmq社群都做哪些事情
平時怎麼學習
在技術上做的最自豪的一件事
有什麼想問我的嗎

線上程式設計測驗

二元樹的層次遍歷
5個執行緒分別計算一個陣列的和,主執行緒彙總結果。
兩道都A了,面試官說可以,今天先這樣

三面 

晚上9.30了都,剛做完筆試,腦袋懵呢還,接到電話。
專案介紹,分別介紹,怎麼優化,主要針對專案用的技術問,大概15min左右,基礎問的不多
select和epoll區別,自己用過麼
socket程式碼怎麼寫,你用的哪種,伺服器端和使用者端怎麼寫的
資料庫隔離級別,分別會出現什麼問題
垃圾回收知道嗎,虛擬機器器什麼時候會full gc
二分排序知道麼(二分排序???我一臉懵逼,後來發現好像意思是二路歸併排序。。)
演演算法:統計大寫字母出現順序,並且排序

之後就是漫長的等待,大概等了三個周。。。

四面 北京現場面 

自我介紹
問實驗室的專案(大概有20min左右,也是分別問了專案架構和一些細節)
socket怎麼寫的,用的什麼模式,NIO知道麼,是阻塞的還是非阻塞的,同步的還是非同步的,怎麼實現。
rabbitmq介紹一下,為什麼用。有哪些模式,你用了哪些?
設計模式知道嗎,介紹一下,有哪些應用?
資料庫熟悉嗎?熟悉哪個?介紹一下(說了Mysql InnoDB引擎的一些特點),有什麼好處
為什麼需要事務? 解決了哪些問題?
MVCC瞭解麼,說一下,解決了什麼問題。版本號改成時間戳可以嗎?
sql優化有了解麼,說說一些需要主要的地方。sql執行慢怎麼辦?
web專案中中文亂碼怎麼解決的
spring介紹一下,spring ioc有什麼好處,怎麼解耦的。spring aop原理
類載入機制介紹一下,有兩個同名的類怎麼載入(能編譯無法執行)
最後一個問題,瀏覽器輸入url到頁面顯示發生了什麼

五面 hr面 

自我介紹
我說了我的名字,然後開始聊關於改名起名的事23333
大學學生會活動,一些活動細節
家庭情況
為什麼考研
說說做過最極端的事
職業規劃,為什麼想來阿里
說說自己的優點
說說自己的缺點
問問題,什麼時候能出結果?答 最早五一之前
總體聊的挺開心的

我是如何拿到大廠offer的?

第一件事:分清階段,制定計劃

從我大學之後,我清晰到自己的現狀,也明白要想改變自己的人生,那就要懂得去規劃。所以,從我實習工作開始,就已經對自己的職業生涯開始進行了一個規劃,而我的規劃很清晰地分成了幾個階段,也把每個階段的目標和重心確立了下來。

  • 第一階段:0~3年;我給自己的第一個時間就是3年時間,3年完成第一次跳槽,而且需要跳到更大的平臺。
  • 第二階段:3~7年;確立自己的發展方向,技術專家、架構師、CTO或者產品均可,但我知道,無論是朝哪個方向發展,技術知識的儲備一定要系統完善。
  • 第三階段:7~未來;這個階段,我應該完成了自己的發展方向,這個時候需要思考人生,或者繼續自己的愛好,享受生活,也或者開始進行創業。

唯品會三年,我只做了5件事,如今跳槽天貓拿下offer(Java崗)

 

第二件事:梳理知識,重新學習

在唯品會的三年裡,我為跳槽做準備,也為第二階段的發展方向做準備,所以梳理自己的知識,讓自己重新開始學習。這三年裡,我從未落下過提升自己,自己的學習方向也是按照自己梳理出來的知識路線進行的,一步一步,有條不紊。

  • 架構師築基必備技能:並行程式設計,JVM,網路程式設計與高效,MySQL,Tomcat
  • 設計思想解讀開源框架:SSM框架(Spring+SpringMVC+Mybatis)
  • 效能直線提升架構技術:分散式,ZK,Nginx,RabbitMQ,RocketMQ,Kafka
  • 高效儲存讓專案效能起飛:Redis,MongoDB,MySQL高可用,Mycat,Sharding-Sphere
  • 分散式擴充套件到微服務架構:SpringBoot,SpringCloud,SpringCloud Alibaba,Docker,K8S

唯品會三年,我只做了5件事,如今跳槽天貓拿下offer(Java崗)

 

唯品會三年,我只做了5件事,如今跳槽天貓拿下offer(Java崗)

 

唯品會三年,我只做了5件事,如今跳槽天貓拿下offer(Java崗)

 

唯品會三年,我只做了5件事,如今跳槽天貓拿下offer(Java崗)

 

第三件事:勤寫部落格,多做筆記

合格的開發人員一定是要養成良好的學習習慣和工作習慣的,程式設計師為什麼要勤寫部落格,多做筆記?理由很簡單:

  1. 整理思維、加強理解。
  2. 方便未來、回顧複習。
  3. 記錄成長。
  4. 鍛鍊寫作文字組織能力。
  5. 跟其他人反饋、互動,別人會發現一些你發現不了的問題,提升你的思維。

關於這三年來,我也算是寫了不少部落格,製作了不少筆記類的PDF,可以免費分享給大家參考一下,包括Redis學習筆記,SpringBoot核心筆記,MySQL調優筆記等等。

唯品會三年,我只做了5件事,如今跳槽天貓拿下offer(Java崗)

Redis學習筆記

唯品會三年,我只做了5件事,如今跳槽天貓拿下offer(Java崗)

SpringMVC開發筆記

唯品會三年,我只做了5件事,如今跳槽天貓拿下offer(Java崗)

SpringBoot-核心技術筆記

第四件事:社群互動,拓寬圈子

人脈的重要性,相信每一個工作的社畜心裡都清楚,而我們開發者同樣也需要積累自己的人脈。所以,在唯品會的三年裡,我並未只是早出晚歸,整天對著電腦工作,我會利用自己的剩餘時間,去參與到一些社群裡,與同行交流,參加一下線下的會議或者活動是我比較直接的擴寬圈子的方式。

唯品會三年,我只做了5件事,如今跳槽天貓拿下offer(Java崗)

 

第五件事:懂得覆盤,準備面試

我學會了覆盤自己,每年給自己的一個總結,包括知識、工作、生活及情感等各個方面,是否把自己的豐富度進一步地提升了。今年是我第一階段的第三年收尾,也給自己這三年來做個一個總結,同時也要開始開展我的跳槽計劃,然後準備面試。

關於面試,我也做了一些系統且全面性的準備:

  • 整理面試知識點

唯品會三年,我只做了5件事,如今跳槽天貓拿下offer(Java崗)

 

唯品會三年,我只做了5件事,如今跳槽天貓拿下offer(Java崗)

 

  • 刷題刷題刷題

唯品會三年,我只做了5件事,如今跳槽天貓拿下offer(Java崗)

 

唯品會三年,我只做了5件事,如今跳槽天貓拿下offer(Java崗)

 

唯品會三年,我只做了5件事,如今跳槽天貓拿下offer(Java崗)

 

總結

外行對於程式設計師的認知很單一,也有很多刻板印象,但不管如何,作為開發人員的我們,自己一定要正視自己。如果我們連自嘲和自卑都分不清楚了,那發展也就僅限如此了。

所以,儘早規劃自己,朝目標發展,才是上策之道,而不是怨天尤人,等到30歲後再去焦慮。

希望大家能一起進步,文章以上所有的資料均可以免費分享給你們,需要的朋友可掃碼獲取