作者:Skye_kh;
來源:牛客網
鏈接:https://www.nowcoder.com/discuss/144976


秋招總結分享,數據研發方向,阿里,網易,華爲等


秋招總結

秋招結束了,從六七月份開始到十一月,從艱難的準備階段,到忙碌的面試奔波,感慨良多。我面的基本上都是杭州的公司,目前拿到的offer有,網易互娛、雷火、華爲、海康、拼多多、滴滴、51,大部分是數據研發崗位。寫個經驗總結,回饋牛客。

崗位選擇

在準備複習之前首先應該確定的是自己的崗位方向,然後再針對性地去尋找面經和資料複習。我當時可選的是數據挖掘算法和數據研發兩個方向,因爲不同的公司對崗位的具體要求有一些差別,導致我有些迷惑。我自身因爲工程和算法比賽都接觸過,但是在算法原理方面瞭解的還是比較少的,所以當時有一些退縮了,選擇了數據研發方向。其實機器學習的薪資在今年來看更誘人,從我的經歷來看我覺得也能找到不錯的工作。當然這都是後話,確定崗位之後就是怎麼準備了。

複習準備

我大概是從六月開始準備,剛開始最大的困難就是不知道該如何準備效果好。看到其它實驗室的同學年後就開始準備了,並且秋招的提前批七月左右就開始,很着急,其實現在想來,踏實複習纔是關鍵,不能因爲着急而導致知識點一知半解。大廠對基礎的要求相對來說更高,其次是自身的亮點。

面試中第一關一般都是手撕代碼,其實代碼題把劍指Offer過兩遍就能應付大多數面試算法了,因爲面試的時候不可能讓你寫很長的代碼。學有餘力去刷 leetcode。

其它知識點可以先把相應崗位的面經都保存下來,再去總結重要的知識點。知識點形成體系比較重要,可以畫個體系圖不斷回顧。比如,Java 的JVM部分,集合類部分,併發部分,分開整理形成知識體系。把自己保存的面經上的問題都準備一遍,其實面試就不虛了。

秋招總結分享,數據研發方向,阿里,網易,華爲等

其它

暑期實習的經歷挺重要的,

但是我們實驗室不給實習比較可惜。

提前批的機會要把握好,也就是多一次機會。

大廠其實十一月份可能還有補招。

早點準備,將自身的亮點表現給面試官。


面經

分享自己面的幾個比較典型的面經。

秋招總結分享,數據研發方向,阿里,網易,華爲等

螞蟻金服 數據研發 五面

螞蟻是我第一個面的,也是最可惜的一個,很後悔當時自己沒有準備好。大概面了五面,但是因爲當時複習不夠好,面試表現不夠好,沒能拿到 offer。 阿里都是電面,前後時間拉得也比較長。

一面

●自我介紹

●項目

●設計支付寶 APP 滑動條的推薦系統,算法,架構實現

●用戶軌跡如何獲取特徵,點擊條目 7-5-2-4 這種, word2vec 怎麼構建句子特徵

●GC

●Linux 10個進程10個線程,系統如何調度

●線程池,poolsize 5 , 進來第六個線程,會發生什麼

●Java 鎖機制,悲觀鎖、樂觀鎖

●數據結構題,青蛙跳臺階,二叉樹層序遍歷

二面

●天池比賽項目及思路,爲什麼選擇 XGBoost

●推薦系統是什麼,給完全不懂的人講一講 (按分類講各種算法)

●協同過濾的缺點,現在流行怎麼做 (協同過濾目前更多用於召回)

●講一講邏輯迴歸,原理及推導

●Synchronized。 鎖在操作系統級別的實現

●Java 中的併發包

●Linux 進程調度

●網絡相關協議

●Zookeeper 選舉算法,Paxos

●用命令行敲命令存儲一個文件到 HDFS 上,源碼級別是怎麼樣一個流程

●Linux 的基本命令,如何查看內存使用等

●動態規劃和分治法的區別

三面

●項目自己發揮,追問細節

●覺得自己是個怎樣的人,別人覺得自己怎樣

●有過比較大的挫折嗎

●自己做過最有成就感的事情

四面

●講一個項目

●項目中的細節追問(線上 A/BTest 怎麼做,對結果怎麼優化)

●項目中自己做的亮點

●一個環形鏈表裏面存數字,如何最快速度找到指定數字

●一個文件,裏面是英文小說,統計詞頻最高的兩個詞

●notify() 和 sleep() 的區別(應該問錯了,wait() 和 sleep() ),

●在源碼中哪裏看到過 (阻塞隊列)

●線程池,corePoolsize 5 ,max 200 ,什麼時候線程池中有10個線程

●阻塞隊列滿了,線程也超過 200 了 ,會發生什麼

●線程池實際怎麼用

●你有什麼要問我的嗎

●爲什麼沒去實習,是不是從現在到畢業都不能出去

五面

●自我介紹

●Github 庫做了什麼

●各個項目做了什麼

●Mapreduce Join

●Mapreduce shuffle

●遠程代碼題, 輸入一個 n , 求 1~n 中每個數字二進制位中 1 的個數

秋招總結分享,數據研發方向,阿里,網易,華爲等

網易杭研 大數據開發

一面

●自我介紹

●Mapreduce 原理

●數據傾斜怎麼辦

●比如統計廣東省的記錄數據傾斜,怎麼自定義 partition ,代碼?(我覺得我說得挺清楚了,一定要代碼寫出來)

●推薦系統項目細節,角色,做了什麼

●華爲軟件精英挑戰賽,如何調參

●代碼,兩個集合取交集,怎麼最快

●字符串反向輸出,用遞歸實現

●知道什麼ETL工具

●dataX架構

二面

●自我介紹

●項目細節

●Mapreduce 原理

●splitsize 如何確定,算法

●數據傾斜怎麼辦

●無 shuffle 的 過程叫什麼

●大數據組件都知道哪些

●數據倉庫和數據庫的區別

●數據庫原理懂嗎

●數據庫範式知道嗎

●sql 題,按某列排序,並增加排序編號(說了 mysql 怎麼做,hive 有點忘了row_number沒說明白,可惜了)

●sql 題,一列從1到n順序編號,一列是各種類別,輸出某一類別編號是連續四個以上的數據行

●代碼題,兩個集合取交集....,有哪些做法

●平時有什麼愛好

網易雷火 數據挖掘

一面

●a += 4 和 a =a+4的區別,a是byte類型

●Integer 數據比較

●python 兩個列表合併去重排序(python 很久不敲,基本語法忘記很多了)說了下怎麼做。

●Linux 兩個文本不同的統計,刪除目錄文件,刪除重複行

●代碼 java 字符串反轉

二面

●推薦項目

●一條sql 外表是 gz格式壓縮,查詢會有幾個 map 幾個 reduce

●什麼壓縮格式解決gz不可分片問題

●集羣 mr任務分配到某個節點一直 timeout 什麼問題。 (網絡,防火牆問題)

●Github

三面

●推薦項目

●代碼 輸出連續數字和等於某個值的所有情況

●知道的算法

●LR 原理,爲什麼用極大似然

●隨機森林原理

●Bagging原理

●GBDT和XGBOOST區別

●比賽爲什麼選用XGBOOST

●Boosting

四面

●介紹自己,別說技術

●自己會給雷火帶來什麼收益

●自己最不能接受的狀態,會考慮離職的

●推薦系統的應用一堆扯

51 大數據開發

●項目細節,爲什麼用kylin,知道其他etl工具嗎

●sqoop和datax區別

●推薦項目數據量多大,日增多大

●搭建集羣碰到過什麼問題

●mapreduce 二次排序怎麼做

●mapreduce原理,調優做了什麼

●mapreduce比較慢,你認爲哪些地方可以優化

●hadoop 和spark的區別

●Hbase 知道什麼,和mysql的區別

●Hbase 支持事務嗎

●mysql事務隔離級別

●java常用集合

●hashmap 原理,resize過程

●hashmap 爲什麼會出現併發問題

●AQS

●java 的線程是用戶態還是內核態

●棧裏保存了什麼

●什麼情況棧溢出

●thread 棧多大

●jvm其他組成部分

●gc瞭解嗎 自己調優過嗎

●直接看代碼的?有沒有dump出來看日誌

●cms什麼時候發生stop the word

●垃圾收集算法

●Hadoop 生態還瞭解哪些組件

●two sum 問題,說怎麼做,不寫代碼

二面

●項目各種細節

●mapreduce 原理

●推薦系統算法瞭解哪些,商品推薦如何做

●協同過濾和聚類的區別

●基礎機器學習算法

●線上場景如何評估算法優劣

●個人優勢,遇到的挫折等等

相關文章