[亞洲] 找日本機器學習及研究型職缺心得分享
來不及趕上上個月的徵文活動
但還是想要來分享一下之前找工作的心得
希望可以幫上喜歡日本、打算來日本工作的人!
-
1. 前言
當初在找日本工作的時候,覺得資源其實很有限,尤其是因為我的目標是跟人工智慧有關、專門進行研究的職位(Research Scientist / Applied Scientist),這些資源又更少了 ( ; ω ; )…
因為是紀錄面試過程,所以有點漏漏長,也有很多專有名詞,請見諒!
-
2. 背景
* 114 資工碩畢,做了一年半的研究助理,實驗室是做電腦視覺跟機器人相關的主題
* 研究領域是 Computer Vision (CV) / Reinforcement Learning (RL)
* 有發表國際論文的經驗
* 有去日本的樂天技術研究院 (Rakuten Institute of Technology) 實習過
-
3. 目標
一開始我的目標其實是想進入大公司(Google / Microsoft / Amazon),然後找 Machine Learning Engineer (MLE) 的缺,結果找著找著發現這些大公司比較需要做 Search / NLP / Ranking / Recommendation System 專業的人,反而對於 Computer Vision 的需求是相當相當的少,但我還是硬著頭皮去投,結果就是三間都烙賽。
Microsoft 跟 Amazon 我是直接投職缺, Google 我有請在美國的漂亮學姊幫我內推 Google,但還是沒用,在履歷關就被刷掉了 ( ; ω ; ) 。
我想可能這些大公司內推是基本,而且因為是難度比較高的職位,肯定是需要更強的人,應該是需要起碼讀完 Ph.D. ,然後 Publication 再多一點點的人。對於新卒 (new-grad) 是更有難度的,他們可能還是會比較希望直接收 中途採用 (Mid-career) 的候選人。
接著我就開始各處搜尋其他有關研究的各種公司,這邊只能土法煉鋼的搜尋各種關鍵字,一直翻 LinkedIn 看一下有沒有好的職缺,這邊我整理了一些我找到不錯的公司,不過我先附上一個我覺得很好用的日本薪水查詢平台 OpenSalary.jp ,大家可以搭配著薪水參考著看:
* Mercari — 日本很有名的電商,有 Machine Learning Engineer 的相關職缺,公司氣氛相當相當好,生活工作平衡一級棒,新卒薪水相當高
* SmartNews — 日本很猛的新創,做 NLP,所以招的人希望都是會 NLP 的神,我就知難而退了
* Preferred Network (PFN) — 也是新創,但規模已經很龐大了,其中什麼樣的研究都有
* SonyAI — 蠻新的一個組織,跟 Sony 本公司不太一樣,主要強調 Creativity & Imagination,想要做一些比較特別的應用
* Rakuten Institute of Technology (RIT) — 是樂天的研究機構,主要想要把商業上的應用更進化,所以會需要視覺、NLP 的研究人員
* LINE — 大家都認識的公司,有視覺辨識 、語音辨識的相關職位
* Woven Planet Holdings — 這是Toyota 下面的一間新創公司,想要在日本開發一個很先進的實驗都市 Woven City ,招了很多Robotics / Computer Vision 的 Engineer + Researcher,同時也想要把自駕車最好,所以也把Lyft Level 5 的組併購了
上面列的公司我認為都很好,我後來投了:
- Mercari — Machine Learning Engineer
- Woven Planet (Woven Alpha) — Research Scientist (Computer Vision)
- SonyAI — Research Scientist (Computer Vision)
沒選剩下的是因為當時 LINE 還沒有相關職缺;樂天研究院 (RIT) 因為我去實習過,想要先理解看看其他公司做的東西是怎麼樣的所以暫時沒投;PFN / SmartNews 跟我理想不太一樣,所以就剩這三間了!
-
4. 面試流程
因為公司好像都會有保密的這種規定,所以我就只能大概敘述 _(:△」∠)_
a. Mercari
我在網站上丟履歷之後,很快就收到 HR 的通知說,通常 New-grads 的職位需要先有實習的經驗會比較好,所以就開啟了我 Internship 的面試流程。
一開始會拿到一個 Take-home assignment,給你一個星期的時間要去實作某種把 Machine Learning 演算法結合到後端上的應用,所以就要同時會寫簡單的 API,因為我不是很專業的,但是可以參考 FastAPI、Flask 這種函數庫,然後還要考慮到一些非同步處理的問題(舉例來說像是演算法太花時間,就必須讓他在背景跑)。
除此之外,還需要寫一個 Documentation 去解釋你實作的功能,這也很重要,這一部份可以參考一些星星很多的 GitHub 上的 README 大家都怎麼寫的,練習去寫寫看。
上一個作業通關之後,就會開始進入面試的階段,首先安排了一個 Engineering 的面試官(30-60 mins),主要會根據上面寫的 assignment 延伸下去問,問你如果要 deploy 到真的系統上的話要怎麼處理(每天有一堆人在用這個系統),會一些 distributed system 、database 的概念會蠻有幫助的。從這個面試我就發現了 Mercari 所需要的人應該是有點像 Full-stack 工程師,什麼都多少要會一點,雖然重點還是在 ML。
後來 Manager 認為我比較適合 Mercari US @ Tokyo 的這個分支(美國也有 Mercari,他們有一部份的團隊是在日本上班),因為他們有一些視覺辨識的應用,因此就把我丟去 US App 的團隊重新面一輪,基本上內容跟上面敘述的一樣,就是一個 Assignment、一個 Engineer 面試 (這次一次兩個人)、一個 Manager 面試。內容就是考基本的機器學習、資料結構觀念,沒有白板題。
最後我這個就有拿到 Internship Offer,那段時間後來就是在他們的團隊下面當 Machine Learning Engineer Intern,然後同時繼續面其他間公司!
我很喜歡這個團隊,也認為 Mercari 是一個工作氣氛相當好的公司。
b. Sony AI
投完之後過了大概一個月才收到面試邀約,第一關有 30 分鐘就是直接跟 COO 面試,主要是想要了解目前的研究方向、還有研究背景。因此我就有把我準備的投影片跟面試官分享。比較令我訝異的是我面的是 CV 相關的職缺,但因為他發現我也有發過 RL 的論文,他反而是一直問 RL 的觀念,有點措手不及哈哈哈 ヽ(°〇°)ノ
總之是很勉強的過了第一關面試,接下來就安排了住在三個不同區域的 Research Scientist 來面試我,有點像是跟團隊成員面面看。每一關都會花大概一小時,然後有關於 ML、CV、Robotics、RL、NLP 的啥都考,然後會參雜著白板題跟 case study...
第一個面試官是做 Robotics + CV 的,他先問了我會不會 ROS (Robotic Operating System),然後考了一個有關機器手臂的 case study,給一些情況,問會怎麼研究、設計解法等等。
第二個面試官也是 Robotics + CV 的,面試整個著重在 CV,一路從很傳統很傳統的 CV 演算法,問到一些 Geometry 的概念,一路問到最新的 transformer... 最後搭配了一題大概 medium 的 LeetCode 題目。
第三個面試官我不太知道他的研究領域,不過他瘋狂問我 RL 的問題(我明明是投 CV 的職缺),然後最後考了一題 applied math 的問題,會用到很多線性代數結合 Time Series 的概念,這邊我只有寫到一半,就放棄然後跟面試官求助了。
整體面試而言,我覺得我有點吃不消,一來是因為自己有些基礎的觀念沒有到真的很扎實,有學過但老早也忘了,二來就是範圍實在太廣,其實真的不好準備,在面試前也無從得知內容。
最後當然就是沒拿到正式的 offer,不過一開始的 COO 有問我願不願意先去當 Intern,不過我是拒絕了,原因是因為經過三個面試,聽每個面試官講解他們想要做的事情的時候,我都覺得有一點沒有交集、他們好像也沒有很有一個共同目標,而且面試的時候面試官其實不太在意我的研究領域,感受不是到那麼的好!
-
c. Woven Planet Holdings
其實在找工作的時候看到這間公司,我就被吸引到了,所以我把心力大多放在這一間公司!而隨著面試官介紹工作環境、跟裡面的員工聊天,我又更喜歡了一點
一開始是在公司網站上面投職缺,我投的職位是 Research Scientist,投完之後很快的就收到 HR 的來信(可能是因為當初他們正在廣招新員工,畢竟是新創立的公司),一開始是安排跟一個 Manager 進行最一開始的面試,主要是要了解我的研究領域跟背景,大約是半個小時。在這個面試中我主要就是用準備好的投影片,把之前做過的事情都介紹一次,很幸運的是整體的研究領域跟這個工作很合,所以就通過了。
接下來 HR 跟我說明了整個面試流程會偏長,而的確也是超長,會有一個 Coding Challenge + 5-6 Interview ,總共大概會花 1-2 個月跑完所有的流程 (・□・;)…
第一關 Coding Challenge 就是要實作某個機器學習演算法,期限是一個禮拜,這關我認為重點就是要把 documentation 寫好,然後要盡量把功能實作完全,把 code 寫的好 trace 跟好用。
再來就開始了一連串的面試,每次一個小時,總共有三個 Technical Interview,分別是 ML、Coding、Research Interviews。
I. ML Interview 是透過一個 case study 去考你 ML 相關的基礎觀念,然後看你可以延伸到哪,這邊就是會越多東西越吃香,把 DL 的東西拿來講都可以! 面試的內容基本上會跟工作職位很有關係,所以不算難準備
II. Coding Interview 不像是 LeetCode 會出現的問題,相對比較直觀,我感覺只是想確定你有基本的 Coding 能力,不過我覺得這是根據應徵職位會有差,如果你是應徵 Research Engineer / Software Engineer,這一關應該會相對難、而且很重要。
III. Research Interview 會請你跟一個研究人員聊聊天,我遇到的人是一個 CV 大神,有三大 CV 頂會 Oral Paper,這個面試官真的很健談,會聽你講你做過的研究,也會給很多回饋,同時從裡面找一些問題問,整體來說真的很舒服,就是很學術的聊天+面試。面試的後面我有詢問他一些關於工作環境的問題,這個面試官跟我說他覺得這間很有 Silicon Valley Style,沒有日商的壓抑,因此也讓我放心很多。
從這三個面試來講,我是深刻地感受到面試官的尊重,然後也覺得面試的很開心,有被問題自己研究的問題,也是這個時候讓我更加確信我會想進這間公司。
再來剩下的就是兩個 Behavior Interview,分別是跟 Manager 還有 HR,主要就是想要了解你遇到不同問題會怎麼解決,看你的人格特質有沒有跟公司符合,要準備的話可以去 Google 查一下 Behavior Question 會有超級多資源,不過我覺得這邊能練習的就是把自己的故事整理好、好好地跟面試官溝通應該就是沒有問題了!
-
5. 結果 & offer
後來我是先接受了 Mercari 的 Internship Offer,同時繼續面試 Woven Planet,原先覺得有機會可以兩邊同時面出一個結果,可以一起比較薪水跟工作內容,但 Woven Planet 的結果在我 Mercari 實習到一半就出來了,因此我就跟 Mercari 的 HR 說我就不繼續面 full-time 職位,因為我覺得就算我面上了我還是會選 Woven Planet。
就結果來說,其實這樣是有很大的風險,因為我其實不算是海投,比較像是狙擊喜歡的公司,到最後還好有拿到自己最理想公司的 Offer。
在拿 Offer 之前,Woven Planet 的 HR 有寄信來問目前的薪水、期待的薪水、有沒有可以 Compete 的 Offer,不過我都是 0... 我只有上這間哈哈哈!所以我就很老實地跟他說我目前只有在 Mercari 實習,然後跟提供他們新卒的薪水大概是多少,然後整理了日本相關職位的薪水 (從 OpenSalary.jp),最後開了一個我能接受的範圍給他們,不過還好他們給了一個我也蠻滿意的數字,還有很好的房屋補助,所以也算鬆了一口氣!
最後拿到的 Offer 職位是 Research Scientist,職等是 Software Engineer II ,才發現這個職位也不是新卒,所以運氣算很好!
目前工作到現在大概也快滿一年了,目前公司的氣氛就如當初所想的一樣好,同事也都很和藹,真的是一間很好的公司!
-
6. 後記
這個面試心得雖然很長,但我感覺還是沒辦法把所有的心得跟細節好好地寫下來,不過就希望可以幫助所有正在奮鬥想找國外(尤其日本工作)的人,希望大家都可以找到自己喜歡的工作!大家都來日本工作吧 (^ ^)
如果對日本找相關工作有興趣、需要幫忙的,可以私訊我,我會在能力範圍內盡量幫忙的!-----
Sent from JPTT on my iPhone
--
謝謝分享
MLE的職缺真的對新人很不友善
我感覺 MLE 要求的東西大多都是學生時期碰都碰不到的,除非自己有特別去學,像是 k8s 等等,真的對新卒很不友善哈哈
推!
感謝分享!
推分享
推
謝謝分享
恭喜找到喜歡的工作!
推
厲害
推推
推
好強!推推!
推,不過我以前還以為這種scientist類的職缺會比較偏
你講的沒錯!我覺得以歐美來講,scientist 還是必須要有PhD畢業,但日本我目前看來感覺比較沒有那麼嚴格的要求,可能大多還是看經驗/論文發表,不過這個是我自己的感覺!
好PhD,還是其實只要有發過paper都算有機會嗎?
不過像是 google brain 那種的可能就是完全另當別論,感覺就算 PhD 畢業了還是有很大的難度 T.T 領域也要很合
※ 編輯: UUUWUUU (60.65.75.109 日本), 09/17/2022 02:02:02 ※ 編輯: UUUWUUU (60.65.75.109 日本), 09/17/2022 02:10:02 ※ 編輯: UUUWUUU (60.65.75.109 日本), 09/17/2022 02:12:06了解,感謝分享!
推
除了k8s,我覺得業界更看重的是有沒有實際讓AI商用的經
確實 MLE 大多都不需要 PhD,需要的可能更多是各式各樣的經驗,跟你說的一樣._. 不過我倒是有發現日本倒是挺多人都有唸到PhD的,主管跟同事都是,算是跟台灣比較不一樣的地方?
驗,持續的根據使用者回饋改善模型,而不是像學界offlin
e data train到打敗STOA就結束了
另外MLE是否需要PhD ,我在LinkedIn 上搜到的心得是appl
ied AI大部分是不需要的,有很多數學、創造模型之類的才
比較需要
MLE沒有SDE的經驗,開發的model很難production,效能、可
的確是這樣,所以我也在思考,如果要從researcher跳去engineer,那中間的經驗差異就好難補齊,不然就是就要往manager相關的職位去了
維護性、自動化等等有的沒的問題一堆。
推心得
感謝分享!
強者同學推個~
推分享!非常實用!目前在phd在做ML,有機會想要去日本
歡迎!到時候如果需要什麼協助可以再站內信我!
工作!
我好像知道是誰 推推
好厲害! 推推
最後錄取的是不是豐田章男他兒子開的公司!!!!?? 好
強 太酷了啦