2017騰訊基礎研究崗位面試經歷
時隔兩年又一次面試騰訊。大三的時候面試的是微信後臺的崗位,如今面試的是基礎研究的崗位。崗位不太一樣,不過初面的時候考的內容還是有點類似的。
online 筆試
線上筆試考的基本都是數學題,選擇題都是跟一些跟統計相關的數學,簡單的如求平均數之類的,這些個人感覺基本不用複習,純粹提前準備好計算器就好了。比較困難的是一些線性代數相關的題目,大概本人學習線性代數的年代太久遠了。。。主要是行列式,特徵向量,特徵值,正交之類的東西吧。。。 基本靠蒙。。。
後面的大題就是很開放式的題目,比如評價神經網路的優勢與劣勢之類的問題。初面
初面很考驗知識面的廣度。
機器學習方面,經典的機器學習十大演算法基本都問得差不多。比如svm的原理,lr的推導,gbdt和random forest的區別,em演算法的原理,knn的原理,k-means的原理,神經網路的推導和原理,Apriori演算法(這個我沒有答出來,因為基本沒用過。。。)總而言之,搞機器學習研究的,這些都是必須要過一遍的。
非機器學習方面。
1,有Hadoop的原理(一開始聽到被嚇死了,以為要我去思考怎麼實現一個Hadoop。。。其實就是考一下Hadoop的hdfs和mapreduce機制。。。如果你是大資料崗位的話,我建議還是要把Hadoop的基本設計模式過一遍吧。。。)
2,還有spark的原理,也是主要考一下基本的知識而已,比如rdd,rdd的轉換之類的。
3,c++也問了一堆(樓主其實已經放棄c++很久了。。。然而騰訊偏愛c++),比如虛擬函式的虛指標表,虛擬函式和純虛擬函式的區別,面向對面語言的三要素。。。
4,演算法,基本就是排序,那些排序是穩定,空間時間複雜度是多少。。。這些東西基本面什麼崗位都是需要背下的,特別是後臺相關的崗位,其實後臺架構每個公司都不一樣,不會要求你會用什麼框架,能面的一般都只有基礎資料結構和演算法了。
5,網路協議(我也不理解我一個面機器學習崗位的人為什麼會被問到這個,不過以前面後臺的時候也是被問的),萬年不變的問法,網路協議有多少層,tcp的三次握手四次揮手之類的。
6,java(本人直接說不會,然後面試官就沒問了。。。)
7,概率統計,問了一些簡單的概率分佈吧,比如貝塔分佈,伽馬分佈,T分佈,珀鬆分佈,正態分佈。。。
8,線性代數,特徵值和特徵向量。。。樓主也忘了,沒有答上。。。
9,作業系統,檔案系統的知識(樓主忘記問了什麼了,反正樓主也不會。。。),執行緒和進場的區別
總而言之,前面問機器學習的時候簡直對答如流,到了後面問的樓主都是差點要被問傻了,沒想到面試一個基礎研究崗位竟然被問了那麼多其他的東西。。。不過好在問的都是沒有什麼深度,面試官好像也是主要想考驗你知道不知道這些東西而已。總監面試
總監面試遇到之前在百度工作過的面試官,先聊了一下他自己的情況,然後拉了一下和我的關係(主要就是扯一些我們在百度認識的一些共同的人和他們的近況)。。。。
然後面試官要總結前面面試的小夥伴的面試結果,直接扔了我兩道簡單的演算法題讓我去做一下先,面試官的要求是儘快,其實潛臺詞大概是他總結完之後就要聽我講答案了吧。。。
第一題是問在一個方格圖內,可以向右走和向上走,問從左下角走到右上角有多少種走法。 答案:c(m,n)
第二題就是用O(n)的時間複雜度,求出一個整數陣列的和最大的子區間。 答案也不難,小夥伴們可以自己思考一下。
然後兩道演算法題做完。面試官看了一下我的簡歷,覺得我好想做過挺多工程類的機器學習專案(其實好像我的都不是。。。),就說不問基礎知識了,直接拿他們部門正在做的專案,比如網路直播的個性化推薦要怎麼做,從構造特徵到模型建造,還有手Q的興趣部落的帖子要怎麼個性化歸類,怎麼個性化推薦。。。這裡面其實被問得挺懵的。。。 不過答案是開放式的。面試官大概是在考樓主解決一個實際問題的思路吧,中間曾跟我說過我講的方案他們都試過,效果不好,問我原因。。。(其實就是熱門的主播就那幾個,怎麼個性化推薦,大家還是看那幾個。。。哈哈哈哈哈)
然後又問了下我如何實現輸入法的補全。。。(答案也是開放式的,小夥伴們可以自己思考一下,簡單的可以是樸素貝葉斯,n-gram,有意思一下可以是基於rnn,lstm之類的模型)- hr面
聊人生
總的來說,這次面試已經淡定了很多,基本沒有怎麼複習就去面試,因為無論專案還是機器學習的基礎知識,個人還是比較放心的。最後也沒有什麼意外地拿到了offer,準備6月初入職,深圳的小夥伴們一起來合租呀!