以下內容將不會涵蓋面試中自己回答的內容,其一是因為我忘記了,其二是每個人的成長背景以及經歷都不同,放上自己的回答並沒有特別的意義,幫助也不大。
前言
這篇文章主要是幫自己在 2023.08 - 2024.05 這段時間內參加的面試做一個總結,也趁機感謝一些在這段路上幫助我的人。作為一個大學讀財政,碩班讀金融的純商學背景的學生,在大 CS 時代硬是跟相關科系的學生一起擠 DS / MLE 的窄門,老實說真的蠻辛苦的 XDDD,過程中也一直在懷疑自己是否真的有辦法走到最後,但所幸是撐下來了,好累。
我從 23 年八月開始就一路投履歷,到 24 年五月底,總共投了莫約 50 個職缺,收到大概 10 個面試機會,最後拿到的 offer 張數一隻手指頭數得完 XDDD。以下就列出幾個我參加過,且比較有記憶點的面試:
(有兩個面試已經獨立放在 這裡 以及 這裡,因此這篇不會提及到這兩個職位的面試心得)
SEA Group MAP (Garena Track)
Progress: 1st Round Behavioral Interview
開始找正職後的第一份面試,非常的緊張,連自我介紹都講到喘不過氣來(真的不知道在幹嘛)。但面試的主管人非常好叫我放輕鬆,後來的過程就比較像在聊天了。這次面試主要是針對履歷以及個人經驗的問題,針對履歷的問題有些也都問得蠻深入的,面試前建議可以複習一下自己的履歷以及做過的事情,會回答得比較游刃有餘。
至於為什麼會在第一關就打住呢?因為我不小心透漏出有可能要讀博士班的傾象(真的好笨)
Appier Machine Learning Scientist Intern
Progress: 1st Round Technical Interview
蠻意外可以收到的一份面試,我印象中是 2023 年十月底投的履歷,但是到 2024 年二月才收到面試通知,收到的時候很驚訝,因為我印象中這個職位的 FT / intern 幾乎都是台大資工的學生,我這種商學背景的學生能收到面試真的很驚訝 XDD。
一開始面試官就丟 code share 的網站給我,然後分別請我算出兩個 loss function 的 gradient & Hessian。寫完後還針對我的 code 提問,比如說為什麼使用 np.ndarray
而非 list
,或是問我的 code 的時間複雜度、空間複雜度等等。
第二題是給我一個小情境,請我 build 出一個推薦系統,問我為什麼會選擇這個 model,要怎麼 evaluate 之類的問題。
整體來說面試難度稍高,沒想到會直接需要手刻 loss function,但是也是一個很不錯的體驗。
IBM Associate Application Consultant
Progress: 2nd Round Behavioral Interview
第一次面試是 Group Interview,也是他們所稱的 Career Day,會先有一個 5 分鐘的自我介紹,等大家都介紹完後則開始進行 30 分鐘的 Group Discussion,內容應該不太能提 XDDD, 有趣的是在 Group A 分享完後會由 Group B 來提問。另外,主管們也會在旁邊觀察我們討論以及合作的狀況。在結束後會有一點 Behavioral Question。
第二次面試是直接對他們的 lead,也是 pure behavioral question,問的都是履歷內容以及跟個人生涯規劃發展相關的事情。
IBM Associate Data Scientist
Progress: 1st Round Behavioral & Technical Interview
這個職缺是由陳欣婷學姊內推得到的,非常感謝她的幫忙。這次面試前有先準備一個 self-intro 以及 project-intro 的簡報,在面試過程中也持續有被問到 project 的細節,甚至是跟客戶溝通的方法等等。
後記(Data 相關職缺面試建議)
投遞以及面試了這麼多場,算是大概了解到這個圈子的遊戲規則,以下是我認為蠻重要的一些建議,提供給大家參考。
CV / Resume
履歷基本上以白底黑字為主,不要太花俏(去年在審社員履歷的時後真的遇到一堆用 Canva 在做履歷然後因為顏色用太多導致我完全看不下去,有需要模板的話請左轉我的 templates,裡面有一個 cv.tex
),內榮要簡潔明瞭,主要闡述自己在這段實習、這個活動、這個 project 中做了什麼,以及有什麼成果。如果有的話,可以加上一些數據,比如說這個 project 有幫助到公司省下多少成本,或是提升了多少效率等等(可量化的數字真的很重要)。
面試準備
首先,一定要熟悉自己履歷寫了什麼,以過去一整年的經驗來說,面試真的很常(甚至說是一定)會被問到履歷上的東西,有些面試官甚至會深挖實習、project 的細節,並且跟你討論他覺得哪裡可以改、可以弄的更好等等的。從另一種角度上來看,相較於沒有範圍的面試問題,問履歷內容其實偏向送分,因為這全部都是你已經獲得、已經會的東西,所以是不是要好好準備ㄋ!
再來是 DA / DS / MLE 也都很常見 project 介紹環節(啊其實這也是履歷問題的延伸),但比較需要注意的是,這個環節除了介紹 project 之外,高機率也會參雜一些 behav question,比如說:project 進行中遇到的困難、與 project member 的溝通、討論狀況等等的。另外就是針對 project 使用到的技術進行延伸,例如某個 project 做了 PCA,面試官可能問 PCA 的原理、或是其他降維方法之類的。
剩下的可能就是 coding / math test 吧,那這部分沒啥好多說的,就是 Leetcode 刷起來,或是把 ML / DL / 數統 / 機率的題目都大概看過一次。
如果對於面試以及我是如何鬼轉成為 MLE 有興趣或想要建議的話,可以直接使用左側 side bar 的各種方式聯繫我。
Acknowledgement
感謝以下幾位在這段時間幫助我的人:
- Andrew Lee 李錫諺
- Angela You 游孟純
- Annie Chou 周彥妤
- Alice Lu 呂佳蓉
- Eric Yeh 葉宗瑋
- Jerry Chen 陳瑾叡
- Jiawei Liao 廖家緯
- Laura Chen 陳欣婷
- Liangyu Hsu 許亮瑜
- Liz Lee 李晏萌
- Prof. Chuan-Ju Wang 王釧茹教授
- Prof. Kendro Vincent 羅秉政教授
- Prof. Timothy Kuang 匡顯吉教授
- Prof. Victor Tsai 蔡銘峰教授
- Roger Hsu 許勝翔
- Stephen Chen 陳皓宇
- Steven Lee 李廷偉
- Tim Hsu 許祖源
- Vincent Hsieh 謝宗暄