秋招小結:感受+面經(CV演算法崗)

  • 2019 年 10 月 4 日
  • 筆記

作者:Anarchy_In_The https://www.nowcoder.com/discuss/248664 本文已授權,未經允許,不得二次轉載

背景

上交機械渣本碩,本科學了點電腦基礎知識,寫過點介面和機器人控制程式碼,碩士開始決定進軍影像,實驗室做了點相關項目,出去找過兩個視覺演算法實習,一個自動駕駛,另一個華為暑期。秋招一直往影像這方面投,沒有高峰會,也沒SCI,算是比較弱。

投遞情況

先總結下情況,零零散散投遞差不多二十家,Base在上海和深圳的,做CV叫得上名的都起碼遞過簡歷,出了結果的大概一半吧。有簡歷就掛了的,也有筆試掛的,還有面試掛的,目前拿到了依圖、海康提前批的演算法工程師意向書,再加上華為實習轉正以及之前實習的公司願意提供offer,最後大概也是在這裡面選了。

阿里、騰訊已經在面試過程中但感覺機會並不大,其他幾個還沒開始面試的公司感覺過了也不大會去,所以算是心態穩定了,後面面試還是會參加感受一下,萬一有offer還能有個對照。把之前總結的面經發上來給各位參考。一些簡歷、筆試就掛了的或者面試沒什麼價值的就不寫了,把一些可以參考的放上來,之後如果還有面經的話會繼續更新。

總體感受

題刷的不算多,筆試成績也不太好,加上暑期實習面試也面了不少,談談面試感受(科班、高峰會大佬關了吧別看了)。

  • 實習:非科班、沒高峰會難是真的難,暑期實習已經感受過一波了,還好華為暑期面試比較水把我招了,不然暑期實習就沒了。但暑期實習加上之前的實習確實在秋招面試過程中幫了不少忙,而且每個實習我實際工作量也挺大。面試基本從實習項目展開,所以如果沒論文還想投演算法的一定得有實習,並且不能是特別水那種,面試時需要能從實習項目展開然後一點點深入,如果平時會在GitHub上傳東西也可以把GitHub放上去給面試官做參考,會有一點加分。
  • 基礎知識:這點很重要,不然人家基本認為你只是隨便看了點東西,調了調參就來面試,暑期實習已經吃了機器學習基礎知識不紮實的虧,於是秋招前花時間把機器學習補了補,手推公式也練了練,研一和本科的數學知識也不時拿出來複習一下。深度學習每個模組或者方法都要了解特定的用途,而且一些基本操作也要能從本質理解為什麼那麼做,一些經典的演算法或者方法需要了解,不一定要能把程式碼寫出來,起碼要能說這是個什麼東西,方法論得有。如果能深入框架源碼細節那就非常好了(說得像我會一樣)。
  • 工作深度:具體工作內容需要自己梳理的比較詳細,簡歷上寫的東西得搞得明明白白,得設想面試官會問什麼,其中工作的細節也需要自己提前想好,整個項目應該是完整的,哪怕是編,也得把故事講完整。

面經

依圖科技——意向書

08/07面試,2點到公司,直接4輪,全程手撕程式碼,我還因為買奶茶稍微遲到了幾分鐘。。。08/28前後收到電話說通過了,09/07收到的意向書,郵件寫9月中以後談offer,中間過程些許複雜,這裡不贅述。

  • 一面:面試官是和我同專業的師兄,畢業一年,先簡單了解了下背景,做了幾個題:1. 輸入一個二維矩陣,尋找一條從左上角到右下角的路徑使得經過的路徑值加起來最大(只能向右和向下走);2. 有一個字元串數組,如['A', 'B', 'C'],1)輸入兩個元素,如'A', 'Z',求這兩個元素在列表裡的距離,如果不存在則返回-1;2)如果希望在O(1)時間內查找,如何建立哈希表;3. 求圓上任意三個點組成一個三角形是銳角三角形的概率。整個一面一個多小時,面試官一邊提示時間有點超一邊喊我做新的題目……
  • 二面:一個稍微Senior一點的面試官,主要問項目,扣了一些細節,問了下對目標檢測網路的理解以及簡述Yolo3個版本,然後掏出白紙開始做題……1. 接一面第一題,如果到達右下角之後再返回左上角,這個時候求值和最大路徑(每個點只能用一次,即經過一個點之後該點的值變為0);2. 第二題我忘了是啥……;3. 有一個長度為n的數組,元素都是[1, n]且無重複,這時隨機刪除一個元素,1)求刪除元素,2)要求時間複雜度O(n),空間O(1),3)不能改變數組,4)如果刪除兩個元素,如何求?整個二面40多分鐘,最後面試官問有沒有什麼想問的,就問了他對公司看法。
  • 三面:技術大佬來了,上來不用自我介紹的,直接對著我簡歷開懟,問的問題拳拳到肉……也問了一些深度學習的基礎知識,然後也掏出白紙開始做題……1. 輸入一個列表,刪除相鄰的相同元素,比如輸入[1,2,2,3],返回[1,3],輸入[1,2,2,2,3],返回[1,2,3],輸入[1,2,4,4,2],返回[1];2. 公司舉辦Party,每個人參加party都會帶有一個開心度,HR希望Party總體開心度高,但每個人的直屬領導參加這個人開心度就為0,跨級領導不影響,多個人可能有同一個領導,HR要確定參加party的人。輸入兩個列表,第一個為每個人的開心度,比如[2,3,4,1,1,8,5],第二個為對應人的領導序號,如[-1,3,0,1,1,2,3]表示第一個人沒有領導(-1),第二個人的領導是第4位,第三個人的領導是第1位,以此類推。求這個party最大的開心度為多少?三面半個多小時,大佬懟的很厲害,然後問有沒有什麼想問的,我就問了他對我的看法,他說沒覺得有什麼特別牛逼的地方……
  • 四面:HR面,當時已經從2點多面到6點了,問了問我的感受,談了談公司發展,問了點薪資期待什麼的,十多分鐘,聊完就撤了

海康威視——面試通過

08/20電話面了一輪,08/28到上海研究院現場面試,進門先簽到填表,然後去房間等HR喊,門口黑板有個表格寫著:筆試50-60分鐘,一輪技術面20-30分鐘,HR面20-30分鐘,二輪技術面20-30分鐘,綜合面試20-30分鐘。但實際沒面到綜合面試,09/05收到簡訊和郵件通知通過面試,9月底到十月中旬會談具體offer。

  • 筆試:比較無語,9點到的海康,填完表格等了一會已經快9點40,讓我去筆試,開機查看操作說明又過去幾分鐘,打開有兩個題目,1. 一個公司的員工X人,平均年齡Y歲,每年離職率N,新員工都是21歲,每年都會補到X人,求P年後公司的平均年齡;2. 記不太清了,就是一堆矩形求面積還是什麼的。我以為能做滿一個小時,結果第一題還沒A到10點就停止答題了……一共寫了不到20分鐘吧……然後出去面試
  • 技術一面:面試官加入海康3年,主要是問項目,演算法細節,然後擴展到深度學習的基礎知識,影像處理的基礎知識,還讓我說了2-stage的檢測和1-stage的區別,Faster-RCNN中的RPN網路,面試半個小時,最後提問也就常規問答。
  • HR面試:HR根據進來時填寫的表格提問,會涉及到家庭什麼的。剛好曠視剛上市,聊了下對業界的一些看法,他還比較滿意。然後問了對個人發展的看法,最期待加入什麼公司,原因。半個小時不到結束。
  • 技術二面:這是我經歷過最專業的面試官,講話邏輯清晰,而且沒有一句廢話,從項目開始,一點點深挖,比如項目中用到這個方法,是誰提出來的,如果讓你用別的方法你會怎麼做,如果沒有這些數據你會怎麼搞,如果這個方法不行了你會怎麼處理,都是很抽象的考察。但是細節的地方也會追問,講完了還會幫你一起用一兩句話總結。是真的很厲害的面試官。最後是問還有沒有什麼可以展示你自己的地方之前我們沒有談到的,你現在可以說一下,回答的他還比較滿意,然後開心的結束。面試過程40分鐘,我還以為會有第四輪,沒想到HR進來說結束了,可以先走了……

商湯科技——二面掛

朋友內推,杭州崗,主要做AR相關的,08/02一面二面連續面完,不知道哪裡不太對最後給我掛了……Anyway後來聽說我電院大佬朋友也面掛了,目前演算法崗只聽說我們院超大大佬過了,稍微平衡了點……

  • 一面:還是項目開場,演算法細節,問了PnP定位如何實現,SSD和YOLO的區別,Yolov3講一下,數據增強做了哪些,幾種解決過擬合的方法。
  • 二面:主要問C++,問了幾個排序演算法,時間複雜度,排序穩定性,然後SVM講一講,C++11特性講一講,詳細講講右值引用,最後問了個多執行緒,在訓練網路過程中怎麼共享反向梯度,我說看過點CUDA程式碼,可以加鎖然後多執行緒共享吧,面試官也沒說對不對,直接說那先這樣吧,然後就沒了……再之後就是兩天後接待HR通知,再見了寶貝兒!

大疆——二面掛

投遞的感知演算法崗,後來經朋友勾搭和內部員工聊了一下說我簡歷和他們工作不太Match,建議我去投學習崗,但大疆只要投了怎麼樣都不能改了……硬著頭皮上了筆試,結果接到了面試通知,08/18一面,08/22二面,反正抱著基本不能過的心態去面試,也算淡定

  • 一面:兩個面試官,自我介紹,然後所有項目輪著介紹,一邊說那邊就一邊打斷提問,還問了同樣的場景如果讓你用傳統CV去做你會怎麼考慮,就說了下特徵提取和影像增強這些,幾個運算元簡單聊了聊,還好沒深究。然後問了實驗室的方向,定位懂不懂(不太懂),雙目懂不懂(懂一點),隨便聊了下,有一個面試官問了點C++,記憶體儲存方式,堆區怎麼釋放,純虛函數講講。最後問了下他們的業務,發現也有做深度學習相關的,不過還是以SLAM為主。
  • 二面:一個面試官,而且當時是實習中途接到電話,去了休息區還被面試官說太吵,訊號不好……然後開始聊SLAM了……強行講了會四元數、最小二乘、旋轉平均什麼的,但有些問題確實不太懂,沒辦法,聊完就知道沒了,最後提問也不想問了,再見了寶貝兒!

頭條——一面掛

撿來的面試,音頻演算法崗,雖然知道機會不大,不過挺有意思,面試這種和自己不太匹配的崗位確實會提升一點抗壓能力吧,分享一下。因為搞過不少音樂的東西也試過音頻演算法,被撈了一手,過程還是圍繞深度學習的基礎問的,還問了RNN、LSTM,以及他們為啥訓練難,音頻的PSOLA演算法問了一點,這個答得一塌糊塗了……最後問了兩個題,一個TopK,一個是數組中的重複數字,都比較基本,聊了聊思路,然後需要一直優化演算法,直到他滿意。最後確實發現崗位和經歷不太match,兩個人都真誠的聊了聊……然後就,再見了寶貝兒!

後記

實力不夠只能如此了,目前結果比預期好一點,之後有新內容會再更新,祝各位一起早點上岸

Tags: