【學長姊帶路】微軟 ML工程師 面試分享

原標《Microsoft 的闖關里程》

文/doobie杜

用放鬆的心情迎接神秘的面試旅途

幾年前實習的最後一天拍下的微軟牆

幾個月前很榮幸接到台灣微軟的面試邀請,當時想翻翻有沒有以往的面試心得來做準備,但發現心得分享不多,詢問以前實習主管的回覆也是要我自然應對就好,不過我想應該還是有些人很好奇整段過程會經歷哪些關卡,我就簡單整理一下給需要的人了解,我面試的職缺是Azure Edge Devices的Software Engineer,而我認為每個職缺會面臨到的關可能不大一樣,所以以下僅供參考囉!

【學長姊帶路】微軟 ML工程師 面試分享
微軟 ML 工程師面試分享

資深工程師來電-

第一通電話算是正式面試前的小測試,通話的工程師在電話開頭會先確認你有15~20分鐘方便的時間可以好好對談,接著他問我對於這份職缺的理解有哪些,然後根據我的履歷簡單確認我現在的工作,也因為我有微軟的實習經驗,所以他詢問了當時實習的工作內容,根據我的回答他會做一兩題的延伸題,但都是圍繞著你的經歷和工作做過哪些事情,所以據實回答就好

職缺的理解

前面有提到我不太曉得這趟面試如何準備,我唯一有下功夫的部分就是對職缺內容的調查,我覺得這也是面對每一份工作、每一場面試都需要認真做的作業,我個人的習慣是,我會做全面的“公司觀察”,大公司算是相對好準備的,因為能查到的資訊很多,公司的策略走向、產品規劃,接著就是往下一層去了解職缺的部門,交叉比對想想職缺內容上寫的條件在這個部門能發揮的地方在哪,在整個查詢的過程中遇到任何的疑惑都記錄起來,我將這些疑惑最後統整成我的提問,我的觀念是,若想向面試官問出好的問題,這些過程都不能避掉

三輪的1:1 –

這個關卡會耗掉大概三個小時的時間,和三位資深工程師分別進行一對一面談,沒有一個既定的模組,每位工程師的風格不一樣,取決於他們想了解你的哪一個面向,我想很多人想知道的是有沒有像google那樣的coding題,到這個階段,沒有出現這樣的題目。如同前面提及,面試內容決定於面試官本身,以我遇到的狀況,三位工程師的風格的確不盡相同:

第一位著重於技術討論,特別是針對Machine Learning/Deep Learning相關的問題,或是他提出一個想解決的大題目,而你提出可以解決的方法,為什麼這樣設計,和其他的不同在哪等等,這個部分的問答,會問到非常細節,千萬不要認為可以用粗略的想法帶過。我本身真正開始接觸ML的時間不長,我的回答都是依據我現有所知,不清楚或不知道的,我會如實說,但是我也會補充我知道的部分,在一個小時裡可以和一位資深工程師討論的如此極致是很難得的機會,我覺得自己的收穫也很多。第二位面試官問的問題圍繞在職場情境題,我想他想了解的就是你是不是個適合和他們工作的人,應對方式和前一篇我提到的googleyness有點雷同,就用你的人生經驗來回答,遇到問題怎麼解決的,我想每個人都會因為成長歷程的不同給出不同的答案。第三場面試回歸履歷內容和工作經驗,如第一通電話來電所提出的問題,不過這一個小時,會延伸更多的題目,這關給我的感覺是要好好確認你是認真對待工作的人,我的回答就也是誠實敘述,不誇大,資深的面試官一聽就知道你是真是假,我們就有多少實力說多少話吧!

Recruiter 簡單問答

在確定你通過了前面的關卡,會有一通來自Recruiter的電話,問的問題不多,也是幾題想理解你個性的情境題,有個有趣的小插曲就是這通電話是從中國打來的,所以通話的延遲很明顯,每題回答完大概會停頓兩秒的空白時間才會聽到對方的回應,一直讓我想到動物方程式電影裡面的情節

再過個幾天後有台灣微軟的確認電話通知下一關是和美國的面試,也因為我以前的實習主管一直以來給我的建議都是自然回應就好,我也就真的沒什麼準備,不過面試前一天晚上有想一下英文自我介紹

***美國主管面試***

會加上這麼多個星號,是因為覺得這個最後關卡,跟打怪一樣,壓軸登場,是Boss等級的,早上八點開始的整整一個小時面試,十分充實,面好面滿,每個向度都被測試到了。

首先,它是一場和native speaker進行的全英文面試,面試內容包山包海,我覺得英文溝通方面確實需要花點心思,我很幸運的是,剛好在前一陣子準備過英文考試,然後工作的環境有外國同事,所以溝通上並沒有太大的障礙。和上篇面試分享中提過的純coding英文關不一樣的是,溝通的內容不再只是程式本身,所以英文能力的比重增加了,對於平常有機會開口講英文的人絕對會佔優勢,若沒有的話花點時間在面試前一週多開口習慣講英文的思路。

簡單互相自我介紹後,以職缺內容和履歷詢問作為開場,內容大概是前半段提到的那些類似問題整套變成英文版,接著他讓我看一段約100行的程式碼,給我2~3分鐘的時間消化,之後解釋給他聽在寫些什麼,會根據你的回答繼續問下去,討論完後進入職場情境題,一樣和之前遇過的情境題大同小異但是全部換成英文版,最後的20分鐘,就是眾所矚目的coding題,同樣是開一份空白的文件在上面作答,面試官口述問題後,稍微理解一下他的問題,然後寫了幾個例子釐清我的解題步驟,之後開始coding,不過他並沒有讓我答完,大概打到一半的時候他覺得沒什麼問題就換下一題,這樣一來一往作答了三題,最後一題延伸了幾個資料結構的問答,整體來說並不會很刁難,題目都算leetcode中階等級的題目。也剛好因為經歷過之前面試的洗禮,這個部分很有既視感,所以我並沒有太慌張,也得證了熟悉中階題目其實非常夠用。

我對於最後Boss關的小小心得就是,非常好玩!光是結束這一小時的面試就讓人很有成就感,在面試開始前的五分鐘是緊張的,但可能因為對即將到來的面試流程真的一無所知,能做的只有讓腦袋淨空,安定心情,意外地每個小關卡的表現都超出我自己的預期。當然也像我提到的,我幸運地因為前陣子做的一些練習,剛好都在這個時間點用上

Everything you need will come to you at the PERFECT TIME

其實這趟面試給我最大的感觸是,不要小看了平時的任何練習,或是過去被自己認為不怎麼加分的經驗,他們真的,都累積在你的潛力裡,等待時機發揮。(還有原來真正放輕鬆的自己可以出乎意料的應對難題) 我甚至會想起那種上台前的緊張心情,會在音樂一放或是一開口的瞬間,全數消失,因為所有動作都在下意識完成。

國高中時期,我爸常跟我說不要畏懼任何上台的經驗(各種成發比賽或口頭發表),那是為了讓你以後面對壓力最好的練習,我在這場面試結束後特別在日記裡寫下這段記憶,因為覺得那些經驗的確賦予我很好的基底

後來接到微軟主管的電話,她給了我很好的回饋,她說面試我的人都說從我身上得到了一股正能量(雖然我不曉得我到底做了什麼XD),比起說表現得好,真的很感謝能得到這樣的回覆,因為成為一個有影響力的人一直是我的小小目標,這樣的回應好像多少有達到一點

至於結局,請容許我留下一個伏筆,待下篇再娓娓道來:)

請不要害怕挑戰,也許你能達到的

比你想像的還多。

本文由 doobie杜 授權轉載, 原文: 《Microsoft 的闖關里程》

___________

你也有經驗想分享嗎?快來投稿賺稿費吧!

瀏覽 836 次

覺得不錯的話就分享出去吧!

發佈留言

Back to top button