小弟背景中央理院學士畢,算是個半吊子的工程師,寫程式大概十年多,逆向工程、資訊安全、遊戲設計、前後端開發、還有一堆莫名其妙的東西等等。
正文開始
當時過完年後開始找工作,朋友告訴我微軟有舉辦校園徵才活動,原本心想雖然不是應屆畢業生,但聽看看也好的心態就去了。
很幸運的,去年畢業的但在近期服完兵役的也算是符合資格,之後幾年應該也會有類似的畢業生徵才活動吧,如果目標是放在微軟這種夢想外商的話,大家要好好把握啊!
投了履歷之後接到微軟的Online test邀請,時間是兩小時,有四道題目,不能切視窗且要開攝影鏡頭,自己本身沒有在寫解題網站,就直接上了
第一題有點忘記了,不是資料結構也不是演算法,是單純的程式能力測試吧,記得會點迴圈就能解決。
第二題是音樂課學生分麥克風,給你一串數列和麥克風數量,麥克風數量必大於或等於學生群數,要把麥克風分完,第一個步驟是先把最大規模的學生群一分為二,這樣就要多一隻麥克風,直到群跟麥克風相等,最後回傳最大那
第三題是Tree的level sum,找出最大的那層總和
第四題題目是有幾種顏色的油漆,要漆牆,間隔的顏色不同...有寫條件忘了,最後要求最後那面牆要用什麼顏色塗
寫完之後隔了一個禮拜接到on site邀請,那時候很緊張擔心會有英文面試(我的英文非常非常爛),好險沒有,不過有些穿插的英文單字還是讓我一愣一愣的。
面試的流程是固定兩輪(一輪一小時),如果都通過了就接著第三輪,再通過就第四輪這樣。
我這梯次面試大概六個還八個,兩個Bing ad兩個Swift key其他應該是Mach
,由各自面試官帶往會議室進行1:1面試,過程不外乎自我介紹、有做過什麼東西,然後問你最熟悉的語言問題等等,然後直接上白板題
第一輪的白板題比較偏向資料結構和演算法
第一題問link list的反轉
第二題求BST的最近共同祖先
畢竟自己是個半吊子的碼農,要什麼就google,當場寫白板題的時候畫圖畫半天,雖然有解出來,但解的超級慢,第二題解完也差不多結束了第一輪面試。
第二輪就比較偏向問題解決的方式,面試官會在過程中給你提示並慢慢寫出最佳解。
第一題是給一串數列1,2,-3,1...求最長連續子序列Sum最大,我用了一個新的空陣列計算當前連續子序列的值,並做表儲存,最後回傳表中最大,最後的排序過程造成O(n^2)被問能不能更快,想到用一個暫存變數去取代當前最
第二題是兩個link list它們後面會接到同一個node,把那個node找出來,最一開始的想法當然是暴力造成O(n^2),後來提示屏除長度問題,先求出兩條link list長度並從相同長度位置開始判斷,只要O(M+N)。
這些題目對普遍人來說應該不是太難,但是我就是寫的很卡哈哈,所以也沒有後來的第三輪第四輪面試啦,希望能有高手分享!
這是我第一次的面試(建議不要把自己Dream Job擺在第一次,不然也是多做點準備啊!),緊張到爆,很多東西都講的很卡,甚至在面試官問問題還聽不懂XD
往後應該還會有這類型的大規模徵才,希望這篇失敗經驗能夠幫助到大家,雖然我沒有去刷題(有啦大概5題就沒了......)但這次的面試經驗,刷題應該還是蠻有幫助的,祝大家能夠順利拿到自己的理想Offer。
我也要繼續去投履歷啦!