PTT推薦

[心得] 2021 外商資料科學求職心得

看板Soft_Job標題[心得] 2021 外商資料科學求職心得作者
AgileSeptor
(S.Duncan_JB)
時間推噓66 推:66 噓:0 →:7

從高中以來一直在 PTT 潛水,從前輩們身上學到許多經驗,我也來回饋分享這篇求職經歷,希望跟我一樣略有工作經驗、想挑戰海內外資料科學家職位的板友,可以少走一點彎路、為面試戰場做更有效率的準備。

2021 年接近尾聲,這篇文是我今年的求職經驗整理,著重在數據分析或產品分析相關職缺,
我選出我自己覺得面試中最重視的面向:數據指標、溝通能力、與統計學專業知識,
並在此分享重要的面試題目。

為了 PTT 排版我稍微精簡了文章,完整的好讀版文章在我的個人部落格:
https://reurl.cc/g0vW3Q


## 求職背景與結果
我是 112 管理學院學士學歷,開始面試前,我在手機遊戲公司擔任資料科學家已有兩年半的時間,工作經驗以數據化營運策略、儀表板設計、以及 A/B Testing 為主。本業外的時間,會拿去打機器學習競賽,都是國內賽事、沒有 Kaggle 成績。

本文的經驗是來自四間我有進入面試關卡的外商:Google、Agoda、Shopee、以及 LINE,其中只有 Agoda 我主動放棄面試,其他都拿到 Offer。

## 面試經驗與建議
### 數據指標
數據分析最核心的能力,就是為商業策略找出適合的數據指標(Metric),這也是數據分析面試必定會出現的考點。指標是否「適合」,其實沒有標準答案,面試的重點在於如何說服對方:你是否知道自己選擇這個指標的優缺點?為什麼選擇使用此指標?

我認為數據指標的面試,最常會問的可分成三種類型:定義、性質、與變化。

#### 指標定義
出現了商業問題,資料科學家需要定義出合適的指標來協助決策。通常會以情境題的方式出現:如果你是某產品的經營者,你覺得什麼數據最重要?

- 假設 Amazon 要招攬廠商放在首頁、增加曝光,要用什麼數據來兜售這個策略給可能有興趣的廠商?
- 假設你是 Netflix 老闆,想推出短影片觀看精華片段的功能,要用什麼指標來追蹤新功能的成效?
- 假設你在 Uber 工作,你會在儀表板上看什麼指標?你覺得什麼指標最重要?

我們設計出的指標需要能夠與商業策略連結、並且指引出下一步該怎麼行動,我們可以用產品價值(A-Ha Moment)來發想,例如上方的第二個例子,要提高 Netflix 的續訂率,我們定義看完完整一集影片是 A-Ha Moment、並且此影集完成率指標會提高續訂率,我們可依此檢驗提高短精華影片的點閱率是否也會提高影集完成率,如果可以,短影片的新功能就值得推出,這就是用數據引導行動的商業邏輯。

#### 指標性質
面試官會質疑某些數學性質、造成該數據指標不夠好,你需要適當地說服對方你選擇該數據指標時,做了什麼權衡(Trade-off)。

- 儀表板監看 DAU 可能會有什麼問題?能用什麼指標改進?
- 假設你是餐廳老闆,翻桌率是個好指標嗎?如果冷門時段翻桌率是零,會怎麼影響數據?
- 想知道使用者喜歡影片的程度,至少觀看 30 秒的人數比例與平均觀看時間,哪個是更好的指標?

#### 指標變化
老闆盯著數據儀表板,發現某個數字突然變高或變低了,跑來問數據團隊該怎麼辦,這完全就是資料科學家每天都要面對的情境!

- 某商品購買率這兩天突然變低了,你怎麼找出問題?
- 每日指標必定會上上下下變化、究竟變化多大才值得我們額外花費心力調查?
- 產品經理發現我們的社交軟體產品,這週的按讚人數快速下降,所以來向你求助,你會怎麼回應他?
- 我們投放了新的廣告,APP 的新使用者明顯比以前多,我們可以立即增加預算在這項新廣告上嗎?

指標變化的題型重視解決問題的維度,你可以從數據變化的時間範圍、涉及的國家、客群類型等等角度切入,重點在於展現出自己是用很有條理的方式抽絲剝繭、找出核心問題。對於此類面試題,我個人喜歡採用的策略是:假設情境,舉例而言,我認為按讚人數的急劇下降可能來自新使用者的大量導入,在我的分析經驗裡,新使用者的平均沈浸程度相對較低,因此我會選擇從新舊使用者的客群結構開始調查。

以上數據指標問題的三個面向,也只是概括分類、問題之間可能會有交集,但是整體而言,都是在檢驗面試者能否結合數據分析與商業思維

Stellar Peers 的部落格 有很多範例題、以及分析模板示範,可以讓你自己練習產品分析模擬面試。
https://medium.com/@stellarpeers

---

## 溝通能力

如果這段求職旅程重來,我會花更多心力準備溝通能力相關的面試問題。

資料科學家是需要長時間跟不同部門與不同領域專家合作的角色,技術專業與溝通能力同等重要,因此,資料科學面試的每分每秒也都在檢視你是否善於溝通合作。

### 講清楚自己的經歷
常遇到的經歷相關問題包括:
- 為什麼要做這個專案?目標是什麼?
- 為什麼需要用這個統計模型?原本數據儀表板為什麼不足以幫助決策?
- 這項專案用什麼形式呈現結果?造成了什麼改變?

回答資歷與專案經驗相關問題,許多人推崇使用 STAR 架構 來讓你以更清晰的邏輯來交代你的實力與貢獻,實際在使用 STAR 架構回答的時候,我個人會格外注意兩個要點:
- 講清楚問題的挑戰性,強調為什麼這項挑戰非我不可
- 盡量用量化、有實際數字的方式來呈現戰績,並且說明的數字需反映出商業目標

經歷相關的面試,我是從 Dan Croitor 的 YouTube 頻道 學習的,他分享了很多大公司在乎的人格特質,你需要練習讓自己能成功透過敘述專案經驗、向面試官表達出自己具有他們想要的特質。
https://www.youtube.com/channel/UCw0uQHve23oMWgQcTTpgQsQ

也與板友分享我的失敗經歷,剛開始面試的時候,因為我自己很喜歡統計模型與機器學習,常常在分享專案經歷的時候,一個不小心就講太多模型架構或實驗流程,最後才發現面試官覺得這些資訊太過細節、而他們其實只在乎專案最後造成了什麼改變。因此提醒各位:不要只是一直講你會做超炫超複雜的模型,要講出你的模型提供的商業價值。

### 職場專業溝通的經驗
專業溝通指的是向他人介紹自己的專業技術、以及說服對方自己產出的結果可信,專業溝通面試要考驗的是你能否順利 與不同背景的人合作:
- 請介紹你被刁難過的經驗
- 你有跟其他部門的人合作過嗎?遇到過什麼困難?
- 你與其他分析師意見不合怎麼辦?又如果是跟你的老闆意見不合呢?
- 你的老闆會看懂你的統計模型嗎?如果他不懂、你怎麼說服他採用你發掘的洞見?

我自己面對這類問題的小技巧,是事先整理多則故事、準備好在面試中分享。以上這些問題,要是只一味說著「我的能力一定能克服困難、順利溝通」,聽起來太過虛無縹緲,如果能用實戰經歷的故事來說明,會更有說服力,例如我會說:「在我履歷所寫的某某專案,主管起初確實反對我提出的洞見,因此我採取的行動是…」。

### 與面試官的溝通
面對面的面試,你需要掌握面試官的一顰一笑、還有他心裡想要的答案可能是什麼,其實籠統地說就是人與人溝通的技巧,所以這裡三言兩語也說不完,這裡就分享兩個在我的經驗中、特別重要也容易忽略的面對面溝通要點。

首先,一定要釐清對方問的問題。不管是情境題、經歷問題、甚至是寫程式面試的過程,時常要注意釐清問題,要搞清楚對方究竟想知道的重點是什麼、還有他希望回答要多少細節。最忌諱的是面試者不在乎對方想不想聽,自顧自地一直講話,但是講很久之後才發現,回答內容不是面試官問的核心議題。

第二個要點:當對方想開口的時候,千萬不要搶先他說話,因為他已經沒在聽了。
這是我從以下模擬面試影片學到的溝通要點
https://www.youtube.com/watch?v=CD3V4Z5hCgM
影片中的面試官扮黑臉,有時故意冷冷地不講話、有時還插話糾正面試者,影片後半段分析師前輩也介紹了該如何應對,建議直接從影片中學習這項關於對話節奏的要點,實戰面試的時候,偶爾的確會遇到這樣有點冷酷的面試官喔。

### 寫程式面試也在考溝通
在我的經驗中,應徵較 Senior 的分析職位,把 SQL 題目 100% 寫正確已是基本要求,要讓自己在眾多面試者中脫穎而出的得分點,就是溝通。寫程式面試的溝通,請至少需要注意以下三件事:
- 開始寫程式前釐清問題
- 善用 Pseudo Code 呈現思考流程
- 寫完程式後,分析現有結果

---

## 資料科學專業知識
應徵數據分析工作,具備統計知識是基本、A/B Testing 是超重要技能、因果推斷能幫助你再加分。

### 統計學
資料分析工作在面試會考的統計學都不會太難,不會超出大學一年級統計課本的範圍,也沒有人會有閒問你數學證明,大多會問統計學的名詞解釋與應用。

光是 P-value 我就遇見過超多種變化題:
- 請說明什麼是 P-value
- 如果對方從來沒學過統計學,你會怎麼向他介紹 P-value
- P-value 有什麼缺點

假設檢定與迴歸分析問題也是非常常見的:
- 請解釋中央極限定理
- 請介紹一個你使用假設檢定的情境
- 什麼是型一與型二錯誤
- 線性迴歸背後有什麼假設?怎麼檢驗?違反了會怎樣?
- 怎麼解釋羅吉斯迴歸的結果是好是壞?

我面試數據分析與產品分析的相關職位時,機器學習相關的統計學議題通常問得不多、頂多聊一些應用場景,所以即使機器學習跟人工智慧在現在的資料科學領域是又新潮又炫,如果你是找數據分析師工作、請不要花太多時間練習機器學習問題。

(此為我的主觀經驗,市場上當然也存在需要大量機器學習技能的數據分析職缺,請各位以自己看到的職缺要求為準)

要準備統計學的面試題目,如果你大學沒有修過統計學課程、或者已經忘光光了,推薦你看 YouTube 頻道:JB Statistics 打好基礎
https://www.youtube.com/user/jbstatistics/featured

若是面試在即,可以用以下這個題庫快速複習
https://reurl.cc/OpbA6D

我覺得想在統計學面試題脫穎而出,講得出數學定義與解釋只是第一步,更重要的是要能用老嫗能解的方式說明。資料科學家非常重視跨部門合作,你未來的溝通對象可能是產品經理、使用者體驗設計師、或者是 CEO,他們不見得有深厚的數學背景、但你依然需要說服他們!因此,在數據分析面試,「如何向非技術人員介紹你的分析技術」是重要的考點。關於這點,StatQuest 這個 YouTube 頻道做得特別好
https://www.youtube.com/channel/UCtYLUTtgS3k1Fg4y5tAhLbw

### A/B Testing
只要是網路相關產業的資料科學工作,A/B Testing 已是必備的技能。雖然像是 GoogleAnalytics 這樣的工具越來越流行且強大,讓執行 A/B Testing 變得很容易、按幾個按鈕就能做到,但實際上,商業實驗的作法有太多眉眉角角,如果沒有扎實的統計學知識,實驗結果就會導向錯誤結論、沒辦法真正提升產品的品質。

A/B Testing 基本款的面試考法,是直接請你說明 A/B Testing 的所有流程,從這個開放式問題中,面試者回答的分析框架、詳細程度、以及考慮的維度,就可以看出面試者究竟多有料、對 A/B Testing 實驗熟不熟悉。

A/B Testing 的流程該怎麼回答?我這裡寫其中一種範例:
1. 釐清新功能細節以及商業目標
2. 定義數據指標
3. 建立假說
4. 為假設檢定設定參數:顯著水準與檢定力、期望最小差異、所需樣本數
5. 估計實驗所需時間
6. 執行實驗
7. 解釋結果

以上流程的細節,請參考這篇部落格文章:
https://www.kdnuggets.com/2021/04/ab-testing-data-science-interviews.html

隨著每個人的工作經驗不同,回答的實驗作法或重視的細節也略有差異,要是你的 A/B
Testing 實戰資歷不夠多,請多方參考各個資料科學家的思考方式,例如,可以看看數據分析師 Passion 在她的粉絲專頁分享的 A/B Testing 實驗流程。
https://www.facebook.com/helloimpassion/posts/194733982665686

A/B Testing 這個領域的水真的很深,些只找有經驗應徵者的 Senior 職缺,面試中還會問更進階的 A/B Testing 的實驗方法問題:
- 多重檢定(Multiple Testing)是什麼?該怎麼解決?
- 請介紹一個使用 A/B/C Test (Multivariate Test) 的場景
- A/A Test 是什麼?為什麼需要做這個?
- 假設 Uber 想要測試給客人優惠券折扣是否會提升搭乘數,A/B Testing 怎麼設計?可能遇到什麼問題?

這些進階 A/B Testing 的議題,我常會參考此領域重量級人物 Ron Kohavi 的論文,先推薦一定要看他個人網站的 FAQ 頁面,準備面試超實用
https://experimentguide.com/faq/

### 加分題:因果推斷
我們都知道 相關不代表因果,因果推斷(Causal Inference)就是辨別出因果關係的科學方法。

推論因果關係常用的方法就是 A/B Testing,但是在實戰中,有很多 A/B Testing 無法進行實驗的情境,例如,曾在本版發文的新加坡蝦皮 Eric 前輩在他的工作分享文提到,電商的雙十一是一年一度的大活動,公司不會接受犧牲鉅額業績來做商業實驗,這時還想推論某變數的影響力、就需要用到因果推斷方法。
https://www.ptt.cc/Soft_Job/M.1584274940.A.FA3

因果推斷除了在上述 A/B Testing 不適用的場合、也屢見於電商與 MarTech 領域應用,我得強調,在我 2021 年的面試經驗中,會問起因果推斷的公司還不多,只是我主動提出因果推斷方法後,面試官都給我正向反饋,所以我自己把因果推斷視為加分項目,有空多看、調劑身心即可。

如果你還沒接觸過因果推斷的任何方法,我自己與面試官聊起 Uplift Modeling 的經驗都滿愉快的,推薦你從這項方法開始學習起
例如參考 LINE 的 Uplift Modeling MarTech 應用案例
https://engineering.linecorp.com/zh-hant/blog/lets-play-in-data-park/

較正式的 uplift modeling 學習資源可以看以下這本 eXplainable AI 課本:
https://pbiecek.github.io/xai_stories/story-uplift-marketing1.html

---

## 結語
總結而言,資料科學家百百種,如果你的目標是數據分析或者產品分析職缺,小心不要被酷炫的機器學習或人工智慧沖昏頭,請專心準備數據指標、溝通能力、以及統計學的專業知識,我希望這篇文章能幫助到要挑戰海內外資料科學家職位的朋友們

除了數據分析的求職經驗,我在這年同時也挑戰了機器學習開發職缺,我整理好心得後,未來會再跟 PTT 的板友分享經驗

--

※ PTT留言評論
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 101.10.15.11 (臺灣)
PTT 網址
※ 編輯: AgileSeptor (101.10.15.11 臺灣), 12/29/2021 18:56:25

laplacian12/29 18:57強者

chocopie12/29 19:13文長給推

tbpfs12/29 19:22google台灣有資料科學的缺?

極度少, 我也算是好運遇到有開職缺

MoonCode12/29 19:31

duck1070412/29 19:46最近很多強者 推

luli003412/29 20:25

leighmeow12/29 20:36太厲害了 推

dadatoto12/29 20:45太厲害了 謝謝分享

ILYY12/29 21:24好文

buddy6612/29 21:25強者推推

ntddt12/29 21:31狂推版上一堆潛水強者

nbsword12/29 21:55推大大 覺得你 blog 的 A/B Testing 寫很好

※ 編輯: AgileSeptor (36.225.60.184 臺灣), 12/29/2021 22:29:46

Urameshi12/29 23:00

yyyyyyyv12/29 23:16

apopheniaz12/29 23:48推推 感謝分享

kumafish0712/30 00:24

Baitman12/30 00:47有數據分析相關書籍可推薦嗎

aiueokaki12/30 00:59應該還是有白板題吧?

by129012/30 01:07謝謝分享

by129012/30 01:08另外想問要如何培養這些思維能力,有推薦的書籍或是影片

by129012/30 01:08

我在部落格原文章內有推薦我看過的好書跟課程 但是我沒看過有某本書能涵蓋所有分析需要的技能 我都是看自己少什麼能力、就額外去那個領域找資源學習

lukelove12/30 01:53強 g社 da沒白板題嗎

不確定大家問的白板題是什麼 如果是軟工的系統設計或演算法複雜度, 我在 DA 面試沒遇到 真的要說類似白板題的 的確會有很多案例分析、這種開放式問題 只是視訊面試時、大多只有口述交流

aassdd92612/30 02:04文章寫得很好,感謝分享!

blackmaninEE12/30 02:30

lowrance12/30 03:41

ZuiYang12/30 04:41感謝分享

kyrie7712/30 05:43

qa59220012/30 07:30推 受益良多

debbie3073012/30 07:53

Halk12/30 07:55推強者分享

unhumanWu12/30 08:02感謝分享~

askia12/30 08:09

dynamicjerry12/30 08:59推 感謝分享

SYH12/30 09:19推 很有幫助

Emmanuel12/30 09:40推強者

felizzZ12/30 09:59看到強者就要推一個

DrTech12/30 10:10不愧是112的背景。112的找工作文,每篇都很有策略,很有自

DrTech12/30 10:10己的想法與邏輯。

Jarround12/30 10:27推分享

Findagreen12/30 10:39完全是我憧憬的樣子.. 謝謝分享!

exodus2912/30 11:11滿滿的乾貨 推!

y95640312/30 11:57

※ 編輯: AgileSeptor (36.225.60.184 臺灣), 12/30/2021 14:05:59

xyzb12/30 16:03優文

andy959599512/30 16:37

emilylyh12/30 17:50推推

aiueokaki12/30 18:36白板題就是程式測驗 像leetcode 那樣。真意外 竟然沒白

aiueokaki12/30 18:36板題

mirror022712/30 18:36太神啦

lspss9316112/30 18:49推推 好文

kokolotl12/30 19:28偏向數據分析的通常不用考leercode

如果白板題指的就是程式題目 我面試數據分析的每間公司必考 SQL 形式跟 Leetcode 上的 SQL 題相似 也有公司會考 Python 的 pandas 資料處理

lazcat12/30 19:44

kokosorazure12/30 20:28推推

airforceso12/30 22:45ppp

※ 編輯: AgileSeptor (36.225.60.184 臺灣), 12/30/2021 23:06:56

kuochuwon12/30 23:09詳細推

transforman12/30 23:13太神

qq9966pp12/30 23:47

kriswu802112/31 00:47推推

abc5312/31 01:56推認真文

adsl5401012/31 11:33

f9g8h7j65412/31 11:56

suwenyuh12/31 17:44推大神

wieldthewave01/02 10:09強者推

hahaxd7801/02 12:15推!

janbarry16801/02 17:27

oncemore01/03 19:04

unmolk01/03 20:02

ttsung201/03 21:25

sumsum01/05 01:30謝謝分享 好詳細推推

kyukyu01/07 10:21

smile0800801/08 16:41推推

AnnAnnNiHow01/10 00:42

suckitup02/27 02:13非常實用 感謝!

tiramisu022503/01 10:20推 謝謝大大分享