最近讀到一篇非常好的文章: Doing Data Science at Twitter, 感觸頗深. 寫幾個摘抄和隨筆
Type A/B Data Scientist
這個觀點也是引用的Quora中著名的回答見這里:
**Type A Data Scientist: **The A is for Analysis.
Type A 主要是統(tǒng)計學背景, 更專注于分析. 但也要cover 一些技能: data cleaning, methods for dealing with very large data sets, visualization, deep knowledge of a particular domain, writing well about data, and so on.
畢竟不會有公司有這種條件: 要什么數(shù)據(jù)就像點菜一樣有人恭敬的呈上來, 還保證干凈衛(wèi)生, 不管需求如何變, 數(shù)據(jù)瞬間有.
用我的話說: 大家都是從自己 下廚房自己摘菜
**Type B Data Scientist: **The B is for Building.
**Type B ** 更多的是軟件工程師, 要的是服務線上用戶. ship it 很重要.
DS工作的四個方面:
Product Insights
主要做的就是根據(jù)用戶行為分析出insights. 做事的第一步就是logging 或者說 instrumentation, 也就是我們常說的打點/埋點. 這里非常重要的一點就是打點數(shù)據(jù)非常煩, 可能會有各種問題, 比如定義不明確, 打點bug等. 關鍵不僅僅是定義需求, 更多的要根據(jù)數(shù)據(jù)與工程師溝通, 發(fā)現(xiàn)數(shù)據(jù)問題, 所謂的 消滅Data Gaps
Question: 不知道Twitter是如何維護打點需求的, 有時間可以聊聊我們是如何做的
Data Pipeline
也就是做數(shù)據(jù)管道開發(fā). 根據(jù)現(xiàn)有結構, 開發(fā)需要的ETL job, 并且接入統(tǒng)一的調(diào)度系統(tǒng). 不得不說, twitter的Data Scientist還是通吃型的, 國內(nèi)有多少DS 是不會寫這種代碼的, 需要單獨的Data Engineer(ETL engineer) 做好數(shù)據(jù)table 給他們用. 這種事情一旦淪落到 提需求 -> 等資源開發(fā)上線 的loop 效率就肯定不如自己來得快.
別的我可能不知道, 但上述兩個工作(Data Pipeline 和 Product Insights) 效率是嚴重依賴公司現(xiàn)有的數(shù)據(jù)平臺的成熟度的. 比如ETL 有沒有現(xiàn)成的可以接入調(diào)度和報警的調(diào)度平臺, 打點文檔需求如何管理, 打點數(shù)據(jù)如何驗證等.
Experimentation (A/B Testing)
A/B Test, 不多說, 但移動設備上做A/B Test 還是很要新的一套基于移動設備的平臺的. 畢竟Web端的A/B Test 比較容易實現(xiàn), 移動端都是native 代碼, 版本發(fā)布也不是那么隨意...
Modeling
Oops, 建模, 懂的人自己看吧...
最后還是給了好些個鏈接, 都不錯, 尤其這個Building Analytics at 500px 對創(chuàng)業(yè)公司尤其有實踐意義, 只不過Redshift 至今AWS中國區(qū)還不能用.考慮一下presto 也是不錯的 LOL~