[心得]非本科學士 德國求職全紀錄 - Data
2021 年曾在 PTT 分享自己轉職軟體工程師的面試經歷,2024 年中再次迎來人生的下
一個轉折,這次是裸辭跑到歐洲(德國)求職,在這個就業市場不太好、AI 要把工程師卷死加上不會德文的艱難開局下,終於在努力三個月後,順利於聖誕節前獲得 Offer!
趁著被 AI 追上以前,一圓自己想出國工作看看的夢想,今天想跟大家分享現在歐洲的
軟體工程師的面試形式與題目,並讓有意在這一年出國試試的大家,能有一點方向~
好讀版 Medium : https://shorturl.at/DaXZf
## 背景介紹
政大商科畢業,2021 年在 AppWorks School 的 Data Engineer 培訓班學程式,當年 9月加入趨勢科技,在 2024 年初有幸被升等為 Senior Engineer。主要專注於大資料的
ETL pipeline 建置,管理跟開發 Spark 分散式運算集群,除了 ETL 相關,平常也會協助開發一些 k8s / backend solution,以及 CI/CD 的建置。不過這些開發都是建立在團隊已經有通用模版,只要微調上線即可,因此後端 / DevOps 經驗很普通,可以說是把技能都點在數據工程相關領域了。
語言能力部分,我 2024 年考托福口說 21 分(約等於雅思 6.5 分),大概就台政學生的平均水準,沒有任何海外學經歷,當然也不會德文,最大的優勢是我滿 E 的,在對談的時候可以展現很好的合作、溝通能力。(如果記得英文單字的話XD)
## 事前準備
求職準備
當時把目標鎖定在歐洲 Mid-Level 的軟體機會,而關於動機以及為何把求職主力放在德國,歡迎參考我的 Medium 其他文章。
在確立這個目標後,我最主要做了以下準備
- 英文口說加強
雖然不害怕說英文,也很自豪自己的比手畫腳跟講話的感染力,但詞彙量的缺乏,還是很容易無法精準地展現我的經歷與能力,所以有找線上家教來練習跟加強。
- 整理經歷
將自己 3 年的工作經驗去蕪存菁,並根據 AWS Principles 跟 STAR 原則,準備好經典面試題目的應答模板
- 尋求當地經驗
透過朋友的介紹,認識了一些在德工作的軟體工程師,透過跟他們的交流,獲得許多建議與方向,讓自己不只是埋頭苦幹,而是用對方法嘗試。
而技術的部分,主要針對 System Design 跟演算法去加強,但因為有太多要準備了,這部分我沒有花太多時間著墨,大概只完成 20 題以內的 LeetCode 練習,現在問我
Linked List 的題目,我可能要想滿久的 XD
## 求職概況
<blockquote class="imgur-embed-pub" lang="en" data-id="a/ugq14Y5" ><a
href="//imgur.com/a/ugq14Y5">h</a></blockquote><script async
src="//s.imgur.com/min/embed.js" charset="utf-8"></script>
2024/08 開始投遞,一直到 11/05 收到第一份 offer。期間共投遞 176 份、95% 是
LinkedIn 上的缺,只投遞英文缺,其中 easy apply 佔了 32 個、沒有一個面試機會,少量用 Indeed 跟 Stepstone,也是全數陣亡。最終我拿到 9 個面試邀約,有 2 家走
到 Final Round,最後拿到 1 個 offer。
整體來說,我認為自己 3 年的年資卡在一個比較尷尬的位置,很多 Senior 缺都是要求5 年以上經歷,但去投 Junior 又會被認為薪資無法匹配或是只當跳板待不久,最終只有大概 5–6 % 的面試轉換率,但整體來說雖然比不上 2021 年的軟工黃金時代,不過以我這樣無當地經歷的人來說,已經是很不錯的結果了。
綜觀歐洲的技術面試形式,主要集中在 Case Study 跟 System Design,考演算法的公司不多,就算有題目也都是滿簡單的。我認為你只要在台灣有處理過一定規模的系統,那你的技術能力都是足夠的,很多時候被限制的是英文口說能力!所以如果想過來玩,務必在準備比重上做調整,先求讓自己能用英文把簡單的問題答得好,再來花時間準備進階的技術知識。
接下來就進入面試經歷分享了,格式會是公司簡介、面試結果、面試時間軸以及面試經歷,會在我認為的合理範圍內盡量分享,應該是不會觸犯公司隱私吧?吧?
Trivago — Senior Data Engineer
Trivago 我想不用多做介紹,大家腦海裡應該都有廣告的畫面,但也是這次面試才知道,他們是從德國起家的飯店比價平台。 Trivago 每個職缺的面試流程都會在官網寫得很清楚,讓你可以很清楚自己會需要面試幾關以及每一個會跟誰面試,IT 職缺一般會有 3~4關。
面試結果:
技術面試被拒絕
面試歷程:
09/13 官網投遞
09/20 來信約面試
09/26 一面 - Hiring Manager
09/27 一面通過後,寄來作業題目、給一周時間完成
10/04 繳交 Case Study 作業
10/09 HR 來信告知做得很好,但是該職缺找到人了,推薦我另外一個 Team
10/11 寄另外一個 Team 的作業給我寫
10/14 回傳作業
10/22 來信告知進下一階段技術面試
10/29 與用人主管技術面試
11/07 拒絕信
面試經歷:
第一關:Hiring Manager ( 30 mins )
問了以下問題:
1. 你做過最有成就感的專案
2. 職涯或人生中遇到最有挑戰的事情,你如何克服跟學到什麼(我回答轉職經歷)
3. 根據自我介紹的專案延伸一些細節然後也問一些技術題,主要跟 Scalable ETL 架構有關。
4. 如果你今天接到一個 data pipeline 的需求,你會如何開始?
這場印象最深刻的是面試官問「是什麼讓你想來歐洲工作的?」,我回答說我快 30 了,在亞洲這個年紀都開始結婚生孩買房,我沒有不喜歡,但就想看看更多可能性。希望透過跟不同文化背景的人合作,讓我對未來有更多新的想像。當我說完這個答案的時候,面試官心有戚戚地說,不管何時都不會太晚的,因為他也是三十好幾才從南歐跑來德國尋求機會,當下我就覺得這個答案應該有加到分 XDD
第二關:Case Study ( 給一週完成時間)
第一個 Team 的作業是要建置一個 pipeline,處裡題目給的資料,來輸出成公司想要的Output。主要分兩大題,第一部份是要根據需求去寫你會如何架構(偏 Systen Design
部分),第二部分則是要根據題目需求,實際寫出一段可以執行去做 data processing
的程式。
第二個 Team 的作業是有三道 SQL 題,需要各自寫出相對應的 SQL query,題目難度上我認為一題 Easy、另兩題有到 Medium,大方向就是多張表互相 join,來獲得你要的
Output。很棒的地方是,他給的作業檔案裡面有幫你寫好 Test Data 跟 Test Script,讓你不用建置自己的測試環境,就能夠他們準備好的 Docker 直接測試 Output 是否符合需求。
第三關:技術面試(60 mins)
這關有 8 成的時間就是在討論 SQL 作業,面試官有點嚴肅,會根據你的解釋詢問不同可能,以及效能的差別。 每一題的流程大概如下:
1. 先講解我的思路
2. 面試官提出如果不用這個方式,可以怎麼換方法實作
3. 如果用其他方法寫,跟現在的差別是什麼
4. 如果現在需求有變化,該如何調整
有一題面試官請我改 sample data 再跑一次,結果發現有錯誤並詢問我可能的原因在哪裡,後來我有想出來以及更正。討論作業結束後,就再問一些申請動機以及過去經驗,我對這邊印象很模糊,因為我明顯感覺到在討論完作業後,主管對我沒什麼興趣,問這些問題就是大家心照不宣走個程序而已XD
一個禮拜後收到信,因為 HR 轉介的這個職位大概有七成時間是在寫 SQL,跟我的背景不太符合,如果是 Junior Role 可能還有機會,但這個缺要 5+ years 的 Senior,所以不出預料地被拒絕了,結束這家耗時近兩個月跟兩個作業的流程。
Aleph Alpha — (Senior) Data Engineer
這家滿有趣的,是一間歐洲的 AI 新創公司,我自己是覺得滿有潛力的,因為該公司
2023 年拿到 500 萬美的投資,加上他的客戶是歐洲各領域的大客戶,專門為他們產生企業內部使用的 AI Service,相對比較有進入門檻的壁壘。也因為這個 AI Service 會吃到很多客戶的機密資料,所以他們有滿多 On-premise 的架構。
面試結果:
技術面試被拒絕
面試歷程:
09/03 第一次投遞
09/05 罐頭拒信
09/26 換個信箱第二次投遞(有優化履歷)
10/02 約一面
10/11 跟 HR 面試
10/18 二面通過,發 Case Study 題目
10/22 三面 - 技術面試
10/25 拒絕信,HR 跟我約 Feedback Meeting
10/29 HR Feedback
面試經歷:
在面試開始前,HR 先把整個面試流程先透過附檔寄給我,讓我知道接下來會經歷哪幾關,以及每個面試的形式。(給讚!)
第一關:HR ( 30 mins )
HR 的表達跟口音非常清楚,剛開始先介紹職位跟他們在找什麼樣的人以及為何需要新血加入。接著詢問以下問題
1. 為何想要加入我們?
2. 有處理過哪些資料型態?
3. 有開發過 On-premise pipeline 的經驗嗎? 是否有地端跟雲端的 data migrate 經驗?
4. What motivate you to look for something new ?
大概確認我的技術背景後,就開始讓我提問。我覺得這關自己表現很不錯的地方在於積極性,我在回答為何想加入公司的時候,有提到他們獲得投資,以及跟各個產業龍頭合作,同時也有提到自己喜歡他們在企業文化中寫到同理心這個特質,展現自己不是亂槍打鳥,是真的有做功課的,明顯感覺出來 HR 對於我的應答是滿意的。
第二關:Hiring Manager ( 45 mins)
這關剛開始問了比較多我過去做專案的細節,有問到我關於分散式 Data Pipeline 是如何建置的,像是資料的格式,如何儲存使用。在問完過往經歷後,就開始問關於
on-premise 以及 cloud 在建置 Data Pipeline 的差別,並詢問你會如何在
on-premise 建置大數據處理的 pipeline。
後來就接續著介紹他們現在 Data team 在 on-premise 上是用什麼 infra,並讓我提問。我有針對 data size 跟 team work 方式做詢問,也有問到 on-premise 跟 cloud 在團隊內的佔比,整體來說是滿輕鬆的面試,比較像是聊聊看,確認 vibe 是符合這個團隊即可。
第三關:技術面試(60 mins)
技術面試前有先發一份 Case Study 題目給我,但跟其他公司不太一樣的地方在於,這一份作業不是寫好回傳的,是先給你參考跟準備,到時直接在面試時展示跟說明。
作業內容是一個 data pipeline 的 Python sample code,包含 input 跟 expected
output,要請你根據這份 sample code 去優化,讓這份 code 可以更好維護以及跑得更有效率。當時收到的時候,我準備兩個版本,一個我用 Pythom 原生環境處理,另外一個則是用 Pyspark 寫。
當天面試是兩個工程師來面,前三分鐘就明顯感覺友善程度跟前兩關有差,是比較嚴肅的面試氛圍,剛開始就是簡單的自我介紹,然後也沒有在我的經歷花太多時間,就直接開始討論 Assignment 了。
開始講解題思路之前,我先根據 Assignment 沒寫清楚的地方去做釐清,像是 input 是不是有可能有什麼樣的變形、或是說這一份 script 的運行環境有沒有限制,以及
output 會怎麼被使用(這牽涉到我該怎麼存這些資料),但面試官就說你可以自己假設,不用特別跟我們釐清,感覺沒有因為我主動釐清需求而被加到分。
接著我就開始講解我怎麼設計跟 refactor sample code,以及如何實作 data clean 的邏輯,接著面試官就接續我的寫法,提出幾個需求
1. 今天接到 data clean 的規則改動了,請實作這個改動
2. 如果現在執行環境有 memory 的限制,你會怎麼 refactor。
3. 如果要有效率處理 duplicated 的資料
4. 如果要 deploy 到 prod env,你會如何架構環境,以及設計資料存儲方式
我覺得這場面試學到很多,有發現自己在一些基本知識學得不夠扎實,一問到一些優化的問題時,沒辦法第一時間想到解法跟相對應的 trade-off,加上這場線上會議收音有點差,我有時候聽不太清楚面試官的問題,所以只能胡亂回答,最終有點灰頭土臉地結束了。
大概過了幾天就收到 HR 說沒有繼續最後一關的來信,並詢問我想不想要約個 short
meeting,她可以跟我分享這幾關面試的 Feedback。
HR Feedback
HR 人很好給我安排了一場面試回饋,讓我知道自己是哪邊做得不夠好,以致於沒有走到最後一關。meeting 中有提到主管覺得我的態度很積極,而且對於加入團隊展現很大的興趣,問了一些好問題。而在 tech interview 的部分,則是提到我在最剛開始問了太多需求確認的問題,顯得對自己的 impletation 沒有自信,而在實作部分可以完成基本需求,但在進階問題時,沒有回答到點上,而且有一些問題我無法正確理解,因此拒絕了我。
關於技術面試的回饋,我大致上同意關於實作的描述,但我也有跟 HR 說,我認為剛開始確認需求是很重要的,如果沒有把需求釐清,就無法把專案做好,而 HR 也說她看到這個評價時也有點不解,因為主管讓我進入技術面的原因就是我的積極性,結果技術面卻又說我問太多,她會再跟面試官們釐清。
整體上是節奏很快也很愉快的面試體驗,HR 總是及時給予反饋跟協助,在最後還幫我安排 feedback meeting,可惜我能力不足,無法加入該團隊!
-----
其他的可以請大家去 Medium 看嗎,我超級不會用 PTT 改格式,一直不小心用到跑版,要瘋掉了XDD
整體來說,雖然不是一件非常容易的事情,但我覺得以台灣的工程師水準來說,在工作上學到的技術跟經驗完全夠用,最大的障礙應
該是面試中的 small talk 跟英文而已。只要把英文稍微練習一下,真的可以嘗試看看,如果有 5 年以上經驗,我覺從台灣開始投遞就有機會,加上德國申請工作簽是歐美國家中算最簡單的,所以對於雇主來說阻力很小,只要他們願意等你申辦 2-3 個月就完全沒問題。而薪水部分,簡單說來歐洲就不是為了賺錢哈哈哈
--
最後一句是對的 只有少數例外, e.g. quant shop, FAANG.
推推 好強
好 年後投!!
哇!好認真!推推!
我比較好奇的是,那家"declined by me"是那一家
真的是"有努力就有機會",大學是不是本科完全不是重點!
很厲害,推推
推歐洲
推
推
推 想問具體技能樹點了什麼 謝謝
推
另一個重點是”data”, 前後端去會有搞頭嗎
太猛了 哥
好猛喔
ds有搞頭嗎?還是要乖乖改點de技能樹
推
猛 之後再請哥內推
推
感謝分享
好猛
讚喔!!
推
clarification 是很重要的,面試官怪怪的
94
[心得] 2023年初找工作心得大家好,小弟長期受軟工版照顧,因此想提供自己年初找工作的經驗回饋各位。 我的背景是私立學店學士本科畢業,沒有發表任何 Paper 或是認識某某大佬,可能的優 勢就是在美國當過交換學生,英文能力自認中上。 我有 4 年多後端開發經驗,主要使用語言包含:PHP、JavaScript、NodeJS;也有少許前 端經驗,使用過 ReactJS、VueJS 框架協助前端開發(但都不是專職,複製貼上居多)。59
[心得] 2021機械轉職面試心得數家(文長)前言 求職這接近三個月(2021/1~2021/3)的時間受到了許多人的幫助,同時在準備時也在ptt看 了許多前輩的面試心得文準備。找工作到一段落後也就想趁這個機會把自己的面試經歷整 理成一篇文, 希望對之後要找工作面相同職缺的人有些幫助(或借鏡哈哈哈)。 個人經歷43
[心得] 泰國面試經驗背景: 1. Agoda 2年, (Backend) Software Engineer 2. Leetcode 300左右 3. 英文履歷: -------------------------Coda Payments @ Bangkok-------------------------39
[心得] 面試心得 Appier/Garena/iKala/GoogleTWMedium好讀版: 筆者在日本當工程師五年後於2019年末回台, 2020年2月開始找台北的工作,主要找的工作內容有Backend (Golang) Engineer 以及需要用到英日文的Support Engineer為主, 面試公司有Appier/iKala/Garena/Shopee新加坡/Google台灣等,為期三個月。23
[心得] Appier/Binance/Grab/ShopBack 面試心得Appier 台灣的AI服務軟體公司 後端軟體工程師 一面 tech leader和manager一起面試, 針對履歷內容詢問23
[心得] 2022-2023 data science 面試心得(以下為代 po) 大家好,簡單分享我在 2022 年底到 2023 年初的面試經驗。本人約三年工作經驗,現職 為 data scientist 。 1. 總共投了約 15 到 20 間,多數為台北的軟體業或外商。投遞方式為公司官網、104 、 LinkedIn 、少部分是朋友內推及 yourator 。扣掉獵頭推薦但沒興趣的,最後總共22
[心得] 2020前端面試Tiktok/LINE/17LIVE/Binance想要完整的觀看體驗, 建議Medium好讀版: — 前言 每次在準備面試的時候,最困擾的問題就是找不到類似的經驗參考,所以想把這一年面試 的心得分享給需要的人。20
[心得] Foodpanda / ShopbackPart 3 這應該是我最後一篇面試文 希望對這兩家公司有興趣的人有幫助 FoodPanda - Backend Engineer 面試全部都是"英文"13
[心得] 面試心得受前同事影響,覺得讓大家認識一些公司避免踩雷是個蠻不錯的方式,這邊分享今年的面 試經驗面試時間介於今年的3~4月,在職找工作。 先交代一下背景:四大非本科碩,在新創小團隊的後端待了2.5年。 ### Xfers(新加坡新創Fintech): - 應徵方式:獵頭推薦11
[歐洲] 德國 資料工程師 Data Engineer 求職分享單純想分享一下在德國找Data相關工作的經驗分享 我會盡量以客觀的陳述跟建議來分享 !文長! 個人背景 M.s : 亞琛工大 RWTH 模擬科學(無實習)