#18 2018-10-08
今天分享的職位是一個(gè) Data Scientist 的崗位,很特別赃春,它是一個(gè) contractor 的 position,之前我們小群里同學(xué)提出來(lái)想讓 Jason 老師分析一下,所以我們今天安排了這次職位分析鼎姊。
職位介紹:
Data Scientist | Pleasanton, CA | Long Term
Data scientist with excellent python skills
Junior data scientists with at least 2+ years’ experience writing codes in python.
must have the onsite interview for 3 case interviews.
must bring own laptop.
must have fully installed python library, have good python knowledge and business sense to answer the questions
must have at least 1 year of industrial experience。
背景介紹:
這個(gè)工作本身是一個(gè) contractor 的工作相赁。在美國(guó)這邊大概分為相寇,contractor 和 full-time 兩種工作。這個(gè)工作的 title 是數(shù)據(jù)科學(xué)家钮科。但其實(shí)我們從 JD 里面看不到太多的信息唤衫,所以我們待會(huì)會(huì)從怎么去申請(qǐng)這個(gè)職位來(lái)給大家具體分析。但首先绵脯,讓我們來(lái)了解一下 contractor 這種 position佳励。其實(shí)美國(guó)的求職市場(chǎng)和中國(guó)的求職市場(chǎng)是完全不一樣的,可能在國(guó)內(nèi)更多地說(shuō)大學(xué)畢業(yè)以后蛆挫,找一份很穩(wěn)定的工作然后長(zhǎng)期做下去赃承。在美國(guó)這邊,其實(shí)是不太一樣的悴侵。關(guān)于 full-time 員工瞧剖,有很多的好處,比較穩(wěn)定,有固定的工資抓于,有社保做粤,有醫(yī)保;但是其實(shí)并不會(huì)有太長(zhǎng) (5年 10年 20年)的合同毡咏,一般是 ongoing 的合同驮宴,沒(méi)有固定的結(jié)束時(shí)間。關(guān)于 contractor呕缭,一般會(huì)出現(xiàn)在以下幾個(gè)工作職位中堵泽,比如 軟件工程師,數(shù)據(jù)分析師恢总,會(huì)計(jì)迎罗。為什么他們需要臨時(shí)工?因?yàn)樗麄兛赡苁翘幵谝粋€(gè) project 間關(guān)于具體 topic 的轉(zhuǎn)接片仿。說(shuō)說(shuō) contractor 的好處與壞處纹安。好處的話,比較自由砂豌,公司方面的開(kāi)銷比較小不會(huì)為你付太多的保險(xiǎn)類的錢厢岂,所以相對(duì)而言你更自由。壞處是阳距,可能, contractor 在工作中壓力會(huì)更大一點(diǎn)塔粒,相比于 full-time 的話,contractor 的培訓(xùn)會(huì)少一點(diǎn)筐摘。另一個(gè)壞處是身份上的問(wèn)題卒茬,對(duì)于 opt 其實(shí)是沒(méi)什么問(wèn)題的,但是對(duì)于 h1b 的身份就相對(duì)比較麻煩咖熟。但其實(shí)現(xiàn)在 contractor?通常很多留學(xué)生是以另一種形式來(lái)做圃酵,一個(gè) hire 你的 staffing 公司幫你去解決身份問(wèn)題,然后他們會(huì)把你分配到不同的 contractor 的崗位去做相應(yīng)的工作馍管。
今天這個(gè)崗位郭赐,JD 已經(jīng)很明確地說(shuō)了是一個(gè)合同的崗位,是有大概的時(shí)間的 range 的确沸。同學(xué)們肯定最好奇的問(wèn)題是關(guān)于自己身份的疑惑堪置,我們到底能不能去申請(qǐng)。首先张惹,我們肯定要說(shuō)的是舀锨,full time 肯定是首選,但是在你有 opt / opt-extension 的情況宛逗,大膽去申請(qǐng) contractor坎匿,不要放棄任何一個(gè)機(jī)會(huì)。或者你完全可以去找一個(gè) staffing 的公司去幫你解決身份上的問(wèn)題替蔬。
職位分析:
簡(jiǎn)歷怎么修改呢告私?這個(gè)公司是一個(gè)創(chuàng)業(yè)公司,用人比較急承桥,然后我們看到他們對(duì) python 的要求特別高驻粟,所以你有 python 相關(guān)的經(jīng)驗(yàn)一定要仔細(xì)把它寫好。然后在 JD 里面凶异,他提到了一個(gè)面試的方法蜀撑,我們這里要重點(diǎn)提一下。我們先來(lái)介紹一下幾個(gè)常見(jiàn)的面試方法:behavior interview剩彬,technology interview酷麦,case interview。關(guān)于 case interview喉恋,其實(shí) case interview 是想看到什么沃饶,是想看到你根據(jù)他給的固定場(chǎng)景能不能得出一些他們想聽(tīng)到的結(jié)論,或者說(shuō)去展示你的思維方式和方法轻黑。比如糊肤,我們之前給學(xué)生說(shuō)的 facebook 的一個(gè)很經(jīng)典的 case interview 的題目,我們的用戶日活率降低了百分之五氓鄙,我們應(yīng)該怎么分析轩褐?那首先,我們就要去做關(guān)于 data quality 的分析玖详,看看數(shù)據(jù)本身有沒(méi)有問(wèn)題。然后去看看競(jìng)爭(zhēng)對(duì)手的 competitor analysis勤讽。
這個(gè) JD 里面主要提到的是 case study蟋座,這個(gè)其實(shí)我們行話叫做 data challenge。這個(gè)是希望我們來(lái)面試的 candidate 可以在 onsite 面試的過(guò)程中來(lái)直接寫出他們給到的三個(gè)題目的數(shù)據(jù)處理與數(shù)據(jù)分析脚牍。這個(gè)很類似于軟件工程師的白板面試向臀。給大家具體介紹一些 data challenge 的具體步驟:首先是要給你一個(gè) data set,然后他會(huì)給你一個(gè)很類似他們正常工作中可能會(huì)遇到的一個(gè)問(wèn)題诸狭。你要去 fully understand 這個(gè) data券膀,然后你要去搞清楚他們的 business process。之后你要去做一些 exploring data驯遇,就是我們常說(shuō)的 DEP(data exploring processing)芹彬,去看數(shù)據(jù)的各個(gè)特征。然后你要去做 feature engineering叉庐,根據(jù)這些特征去分類產(chǎn)生結(jié)論舒帮。接下來(lái)你們就要通過(guò)機(jī)器學(xué)習(xí)去研究出這些購(gòu)買的的 user 都有什么特別的 user behavior。之后你可能還有一個(gè) validation 的過(guò)程,去做一個(gè)校驗(yàn)玩郊。最后肢执,你還會(huì)需要做一個(gè) data visualization 的過(guò)程,讓你的老板去看到你最終的結(jié)論是什么樣的译红。在這個(gè)過(guò)程中预茄,你需要有以下幾個(gè)展示的方式:1. Presentation 2. Clear comments in Code 3. Report about the project.
比如說(shuō)給你一個(gè)游戲數(shù)據(jù)集,后臺(tái)每當(dāng) user 開(kāi)始玩這個(gè)游戲的時(shí)候就會(huì)產(chǎn)生一個(gè) log侦厚,這樣就有一個(gè)有效的數(shù)據(jù)集耻陕,給了你以后,他的問(wèn)題可能就是假夺,如何提升 IAP (In App Purchase)淮蜈?然后你首先要去了解這些 data,具體的 structure 是什么樣的?然后你要去了解他們的 business process,怎么去 get 這個(gè) IAP咆爽。接下來(lái)你就要去研究這些數(shù)據(jù)访雪,他們的中位數(shù)啊,離散值啊豆胸,等等都是什么樣的。之后你就要去做 feature engineering,看看這些數(shù)據(jù)都是有什么規(guī)律的穿稳?用戶在購(gòu)買的時(shí)候都有哪些習(xí)慣,之后我們就可以推送給 marketing 和 sales department 去做具體有效的推廣和推銷晌坤。之后就是按照我們前面說(shuō)的方法去做一個(gè)最后的 validation逢艘,visualization 和 presentation。
在這個(gè)面試的過(guò)程中可能還會(huì)出現(xiàn)一個(gè)“公式推導(dǎo)”的面試方法骤菠,比如在 machine learning 中希望你去做關(guān)于 SVM 的公式推導(dǎo)它改,但是在這個(gè)工作崗位中并沒(méi)有提到,說(shuō)明這個(gè)用人單位是非常著急需要一個(gè)可以迅速上手的人商乎,不想通過(guò)非常冗長(zhǎng)和復(fù)雜的面試去過(guò)多過(guò)細(xì)地篩選央拖,而是希望可以直接 hire 到一個(gè)可以迅速去幫他們解決相應(yīng)問(wèn)題的人。
Q & A
Q:關(guān)于 Feature Engineering
A: feature engineering 在機(jī)器學(xué)習(xí)中鹉戚,我們不會(huì)用 raw data 去做這個(gè)訓(xùn)練鲜戒。我們要去把一些處理過(guò)的 raw data 拿來(lái)做這個(gè)機(jī)器學(xué)習(xí)。那就要去設(shè)計(jì)一些 feature抹凳,其實(shí)就是在 raw data 的基礎(chǔ)上去做一些 computation遏餐。比如,我們剛剛那個(gè)例子赢底,number of actions 就可以是一個(gè) feature境输,我們通過(guò)看他每個(gè)小時(shí)或者每天的一個(gè) number of action蔗牡,我們就能知道用戶的活躍度。這樣不僅可以知道一個(gè) quantity 還能知道一些 frequency嗅剖。除此之外辩越,F(xiàn)E 還有一個(gè)很重要的東西,就是 feature selection信粮,有的時(shí)候兩個(gè) features黔攒,或者多個(gè) features 之間是有很強(qiáng)的相關(guān)性的,所以有的時(shí)候我們要通過(guò)一些選擇來(lái)選出一個(gè)最有代表性的 feature强缘。在選擇的時(shí)候督惰,我們一來(lái)可以通過(guò)一個(gè)基本的分析去看誰(shuí)更相關(guān),二來(lái)是可以通過(guò)算法去看誰(shuí)才是更合適的 feature旅掂。