[心得] 面試瑞典FinTech獨角獸Klarna心得(未完)

作者: eggli (eggli)   2019-06-23 16:59:27
當個北歐編猿人(ㄧ)(二)
Medium好讀版:
https://medium.com/@aeggli/d206d429ad0f
https://medium.com/@aeggli/f35d5b35a485
破個題:我要去瑞典當編程猿了。
距離上次寫文章已經隔了好一段時間了,這幾個月以來發生了很多事,也不乏許
多人來問我到底發生了什麼事情,其實也沒有什麼大了的,只要是新創產業,就
是要有失敗的心理準備,差別只在於你有沒有遇到而已,認真講,我覺得能夠在
一間公司遇到失敗這件事,是一個很好的經驗,理由後面會提到。
在事情發生後,也讓我仔細思索了養家活口的另外出路,正巧,前一篇文章中提
及的瑞典公司Recruiter,也在事情發生前不久與我聯繫,希望能夠得知我的近
況,於是我就跟他約了個時間線上聊聊。
算起來,這算是我第一次面試海外工作,雖然這次聊聊只是簡單介紹,但是透過
視訊會議與相隔半個地球遠的人以英文對話還真是第一次,對我來說,能夠當面
聊天是最輕鬆的,也還好對方是位住在倫敦的法國人,口音雖然奇特,但是比起
Singlish來說,也不算難懂。
這次的視訊,主要是讓對方介紹整個面試的流程,總共會有幾關,每一個關卡中
會有哪些內容,以及面試將如何進行等介紹,這邊列舉一下全部的關卡:
1. 線上智力測驗
2. 線上Coding test
3. 線上技術面試
4. 線上文化面試
5. On-site智力測驗
6. On-site技術面試
7. On-site文化面試
8. 背景調查
其中1, 2是一起進行,失敗就沒有後續,3, 4也是一起進行,這兩關都通過後,
對方會出機票跟住宿邀請你去瑞典進行On-site interview,也就是5, 6, 7三
項,而最後發合約之前,則會請徵信社進行背景調查。
相較於多數技術公司將LeetCode等演算法題目奉為圭臬,這間公司則是將智力測
驗視作最基本的入門關卡,也是整個面試過程中我覺得最難的部分,再來是文化
面試,著重實務經歷,而多數人覺得很重要的技術面試從我的角度來看,難度並
不高,換句話說,這間公司找的是「能夠以正確態度解決問題的聰明人」而非
「演算法考100分的程序猿」。
這到底是怎樣的一間公司呢?說實話,大多數的台灣人都沒有聽過這間公司,相
關的中文報導並沒有很多,能夠找到且介紹比較完整的,只有這一篇2016年的報
導:
https://www.bnext.com.tw/px/article/38851/bn-2016-03-07-014145-187
Klarna,是一間在2005由瑞典發跡的FinTech,成立至今已經過了十四個年頭,
掌握了瑞典約40%的線上交易,為了讓自己在FinTech上的經營更加穩健,在瑞典
取得了銀行執照,目前在全球十四個國家提供服務,主要服務對象為經營電子商
務的店家,提供各式金流整合工具,提供消費者「稍後付款」的選項,大幅降低
結帳過程中的阻礙,提升轉換率,也提升訂單平均金額,並且以十四年下來累積
的交易資料為大數據,藉此防止呆帳的發生。目前的總用戶數量為六千萬人,總
簽約商家為十三萬間,每日交易量約一百萬,員工人數為兩千五百人。
當然,這些資料很多都是開始面試流程後才知道的,對於瑞典的一切也都是面試
到了最後才慢慢去挖掘,其實在我飛抵斯德哥爾摩之前,我對於是否要離開台灣
去瑞典,心中有著非常大的疑惑,去或不去,大概各佔了50%的比例,然而,我
在On-site interview的期間,就下了決心一定要來這裡度過餘生。
僅以這一系列的文章為我人生中最巨大的冒險進行記錄,除了面試心得以外,也
會有移民簽證與搬家的紀錄,以及為何我想要離鄉背井前往瑞典的心路歷程。
(二)
在跟我的recruiter聊完之後,他也就馬上寄了兩封信過來,一封信是線上智力
測驗的連結,另外一封則是線上Coding test的連結。這兩份測驗就是最基本的
入門測驗,必須要通過這兩個測驗之後,才能繼續進行,不外乎就是希望能夠過
自動化的測驗工具進行前期的篩選,說真的,有當過面試官的人多少都能夠理解
recruiter丟來面試的人並不符合期待時有多麽的阿雜,彼此都浪費了時間,而
這兩份測驗都使用了線上工具來進行,recruiter也跟我說明這兩份測驗的重點
為何:
智力測驗
其實並非完整的智力測驗,而是在智力測驗中常見的一種題型:抽象推理
(Abstract reasoning),這個測驗嚴格來說,是整個面試中最困難的一關,困難
的原因在於它的條件:
1. 總計18題
2. 限時15分鐘
3. 只能錯兩題
而抽象邏輯推理困難的地方就在於「抽象」,題目本身並不會有任何的文字描
述,只會有一堆圖形給你看,你必須要推理出這些圖形之間的關聯性後,回答符
合邏輯推理的答案。而推敲出題者意圖正是這測驗困難的地方,難一點的題目甚
至會有陷阱,下面是一份難度適中的測驗,有興趣的可以做做看:
https://www.123test.com/abstract-reasoning-test/
這個網站並沒有計時,但各位可以測試看看,能否在12分鐘內寫完,並且只能錯
一題,這樣的條件就大約接近Klarna所要求的智力測驗門檻了。為了準備這份測
驗,我自己花了大概三四個小時的時間做了一些題庫,整理了一堆筆記,有記錄
下來的題型約莫三十種,全部寫過的題數大約快一千題,但是,Klarna考的題目
應該是他們自己設計的一套獨一無二的題庫,嚴格來說比市面上的題庫都簡單一
些,但是也因為沒有類似的題型,寫起來壓力也就特別大,可以說是可以準備,
但是卻永遠也無法準備周全的一個關卡。
說真的,我一開始也無法理解為何這間公司會把智力測驗看的如此重要,有聽說
即便是客服人員,也會需要考智力測驗。直到準備智力測驗的時候,我才驚覺這
抽象推理的能力,其實比你我想像中的還來的重要。
有某一天剛加入團隊的React Native工程師一起午餐聊天,他擔憂專注在一個
Framework上,會不會侷限了自己的職涯發展,我說並不會,我的看法是,實際
上侷限自己職涯發展的,並不是Framework或是Language的選擇,更不是Title上
的選擇,而是一個工程師面對問題時,腦袋中的想法,才會去侷限你的發展,今
天一個問題攤在你眼前,你可以選擇用慣用的方式去解,也可以大膽的嘗試自己
從來沒有使用過的技術,而我覺得一位好的工程師,在面對新技術時的學習能力
是非常重要的一件事,我也面試過不少工程師,其中令我最擔憂的,都是職訓班
出來的,你說這些人會不會寫code?會。但是有沒有自己的想法?很難說。對於
陌生的技術能不能快速pick up?會的話還會需要職訓嗎?這些特質反而會是我
看重的重點。
而抽象推理能力,說穿了就是在面對未解問題時最重要的一項能力,無論是學習
新的語言或是工程技術,或是融入新的文化,能否從未知的context中整理出一
套pattern出來,是一項非常重要的技能。
https://reurl.cc/p0vGb
在上面這篇專訪Klarna CEO的文章中,也提到了Klarna聘人的原則,他們並不需
要高手大大,他們要的是擁有正確心態的人,這遠比任何技術能力還來得重要。
"At Klarna, we hire smart-our employees think creatively, start
small and learnfast."
Coding Test
這一關相較於智力測驗來說,壓力跟難度都比較低,Klarna在這邊使用的是
Qualified.io作為線上測驗的平台:
https://www.qualified.io/
由於我應徵的職位是Senior JavaScript Engineer,收到的也是兩道Node.js的
題目,實際上這兩個題目以我的角度來看,難度並不高,稍微具備一些現代
JavaScript基礎的人都能夠輕鬆勝任:
以陣列給定一批帶Timestamp的未排序交易紀錄,每一筆交易紀錄都有分類,算
出這批紀錄中指定時間區間及指定交易分類的總金額。
同上,給定一批未排序交易紀錄,假定系統有問題,有些時候會重複產生交易紀
錄,重複的交易紀錄有一定的特徵:同金額同分類同帳號且前後發生時間在一分
鐘之內,找出重複交易後回傳。
這兩個題目說穿了就是最基本的JS陣列資料操作,難度上大約是HackerRank
Interview Preparation Kit中Array項目中的Easy~Medium難度之間而已。
https://reurl.cc/gy6dL
Coding Test並沒有計時,但有交卷期限,一週內必須要送出,而我的recruiter
有特別提醒我寫code時候的注意事項:
1. 簡單易懂最重要
2. 切勿overengineering
3. 請勿寫出太過華麗的code,也不需要使用複雜的演算法
這三件事情,其實相較於大多數的線上coding test或是白板題來說,是有點背
道而馳的,說真的,我自己在寫的時候,也一直在想,為何會開出這樣的需求?
甚至在往後的幾關之中,只要是技術的部分面試官都會保持同樣的原則請你寫
code,然而,我也是到了面試最後,才了解為何他們會這樣子要求。
約莫一週後,我收到了recruiter的結果通知,兩項測試都順利過關,希望我下
週約個時間準備進行下一關的線上面試。
文末附上當時寫抽象推理題庫時的筆記整理,主要是針對看過的題型種類做簡單
筆記:
1. 順、逆時針
2. 數量
3. 多邊型邊數
4. 單數、偶數圖配對
5. 相加、相減
6. 移動
7. 抽象數學運算
8. 等差、等比
9. 顏色變化
10. 與自身所在題目中順序相關
11. 大小
12. 隱藏圖
13. 貪食蛇
14. 包含、反相
15. 鏡像
16. 河內塔
17. 單、偶數增減數量
(未完待續)
作者: angellee0102 (我掉進了五月天坑^^)   2019-06-23 17:10:00
推詳細分享~
作者: ckvir (ckvir)   2019-06-23 17:29:00
其實簡單易懂我覺得很主觀 對有程度的工程師 可能看code 的結構就知道這是什麼資結或演算法有些可能連 DFS 是什麼都沒聽過 他也不覺得簡單
作者: zoo868e (zoo)   2019-06-23 17:33:00
大大好強,我用上面的智力測驗10題錯5題Orz
作者: art1 (人,原來不是人)   2019-06-23 17:33:00
連初學者都看得懂的程式碼肯定簡單易懂
作者: jixian (litMager)   2019-06-23 17:50:00
5分鐘內十題對九題可以給點牡蠣嗎
作者: ripple0129 (perry tsai)   2019-06-23 17:50:00
考這種的超適合我,演算法我沒練過反而不太行XD,玩了一下10錯1還是大意不過我覺得這種東西拿來當智力測驗沒很準,坊間一堆這種圖形的練習,練久了不代表智力變高
作者: yuigahamayui (由比ヶ浜 結衣)   2019-06-23 18:05:00
9/10 好像還好xD
作者: yuanruo (罪を憎んで人を憎まず)   2019-06-23 18:23:00
全對~還好我智商沒問題...
作者: banana13 (黑暗香蕉)   2019-06-23 19:27:00
要會講瑞士語嗎>_<
作者: idok (idok)   2019-06-23 19:41:00
寫出他人可以很快pick up的程式碼 也是一門技術
作者: CloudyWing (孤單ㄉ翼)   2019-06-23 20:25:00
9/10,剩下一題回頭看一下就發現哪錯,演算法我不行
作者: unmolk (UJ)   2019-06-23 22:25:00
10/10 我覺得測驗不難但滿有趣的
作者: lazarus1121 (...)   2019-06-23 22:31:00
這類型測驗很容易用消去法得到正解
作者: ken83924 (東東)   2019-06-23 23:00:00
邏輯好難QQ
作者: SuperCry (極度哭燥)   2019-06-23 23:22:00
沒特別練習過,不過我覺得這算簡單的。突然想到國小考國中時都會考智力測驗蠻瞎的
作者: rice9547 (一碗飯)   2019-06-24 02:14:00
8分鐘10/10 有一題想了4分鐘...XD看推文才發現我忘記可以用刪去法了...
作者: peter840606 (Balalaika)   2019-06-24 06:43:00
6分鐘9/10,這種題目還蠻有趣的XD
作者: darren987469   2019-06-24 09:04:00
跪著推
作者: nosecoolie (諾苦力)   2019-06-24 09:33:00
推推
作者: msjw (JW)   2019-06-24 11:16:00
是瑞典語吧
作者: seal0112   2019-06-24 11:30:00
coding test是考寫出來的code是否簡單易懂嗎?相較於會使用複雜的演算法 能寫出clean code的能力比較重要?
作者: vi000246 (Vi)   2019-06-24 11:48:00
9/10 4分鐘 最後兩題比較難
作者: eggli (eggli)   2019-06-24 11:56:00
對,clean code很重要,原因我後面會提我也是到了on-site後才知道原因
作者: a0165749 (bleqdyce)   2019-06-24 12:00:00
5分鐘 9/10 題目挺好玩的
作者: rodyforeter (rodyforeter)   2019-06-24 12:49:00
10/10 可能邏輯剛好抓到 有時後思考盲區就沒救
作者: wsp151515 ( )   2019-06-24 14:17:00
要開始練智力測驗了嗎
作者: Ikaros1110 (神之羽)   2019-06-24 17:34:00
7分 9/10
作者: kokacal   2019-06-24 23:57:00
原po一個智力測驗就要讓大家考慮丟履歷了(誤)
作者: stosto (樹多)   2019-06-25 00:00:00
三分鐘10/10,不過大部分鄉民都不低吧,有很多雜訊過濾掉題目就變簡單了
作者: goldflower (金色小黃花)   2019-06-25 08:51:00
10/10 不過覺得自己挺笨的QQ 我覺得中式教育對這種邏輯歸納都算強 但是對比較發散的問題就容易弱了 畢竟歸納題目類型快速解題我們從小做到大
作者: cacadeon (deon)   2019-06-25 09:51:00
感謝詳細分享,尤其是智力測驗部分
作者: usoko (time to face reality)   2019-06-25 12:02:00
推 好久沒做智力測驗覺得自己變笨了 XD
作者: shorty696820 (虹彩弟弟)   2019-06-25 16:57:00
10/10 5 min 有題瞎猜 但我覺得我就一般人智商: /
作者: tcssh611503 (york)   2019-06-25 19:52:00
大推
作者: Toris (Toris)   2019-06-25 22:05:00
感謝分享
作者: TomGlavine47 (超級喜歡某某某)   2019-06-25 22:56:00
強者我朋友!! 恭喜你~
作者: joy0520 (Joy)   2019-06-26 10:23:00
8分 10/10 推分享
作者: bobbyaxe   2019-06-26 13:09:00
太強了,感謝
作者: shallmay (施小妹)   2019-06-27 00:21:00
大推,請問這有什麼先備門檻嗎?像是資歷、英文之類的
作者: eggli (eggli)   2019-06-27 11:08:00
年資是很重要的,基本上歐洲很看經歷,履歷要能表達這點英文是基本中的基本,這就不多說了
作者: apley (佛渡有緣人)   2019-06-28 02:35:00
總感覺在哪款遊戲看過這個ID.... 囧
作者: lininu (聲音控:P)   2019-07-01 09:04:00
之前這間的recruiter有找我,我後來推薦同事去,結果第一關就被刷掉XD
作者: h5904098 (LBJ IS GOD)   2019-07-04 09:54:00
做了一下大概八分鐘 10/10 ,另外原po強者推

Links booklink

Contact Us: admin [ a t ] ucptt.com