科技公司都變成了數(shù)據(jù)公司:但你真的了解什么是“數(shù)據(jù)工程師”嗎?
在和國內(nèi)外頂尖公司交流的過程中,我發(fā)現(xiàn)他們多數(shù)都很驕傲有一支極其專業(yè)的數(shù)據(jù)團隊。這些公司花了大量的時間和精力把數(shù)據(jù)工程這件事情做到了極致,有不小規(guī)模的工程師團隊,開源了大量數(shù)據(jù)技術(shù)。Linkedin 有 kafka、samza, Facebook 有 hive、presto,Airbnb有airflow、superset,我所熟悉的 Yelp 也有 mrjob…… 這些公司在數(shù)據(jù)領(lǐng)域的精益求精,為后來的大步前進奠定了基石。
今天推薦的這篇文章《美國數(shù)據(jù)工程現(xiàn)狀》,從多個維度闡釋了數(shù)據(jù)工程和數(shù)據(jù)工程師在美國的發(fā)展?fàn)顩r?;蛟S你和我一樣,都會有一些意想不到的發(fā)現(xiàn)。
我常覺得數(shù)據(jù)工程之于企業(yè)的意義,就好像馬斯洛需求理論之于人的意義,從低到高進階滿足,企業(yè)對于數(shù)據(jù)工程的應(yīng)用應(yīng)該遵循這個三角原則。
第一層,企業(yè)要注意到公司發(fā)展過程中,最普世最基礎(chǔ)的需求:即讓數(shù)據(jù)可見可得。這需要我們重視數(shù)據(jù)工程這件事,這是企業(yè)做大做強安身立命的根本。
第二層,進階需求。有了數(shù)據(jù)意識,招來了數(shù)據(jù)工程師,拉開架勢開始干吧。這時候企業(yè)就需要開始從語義(semantic)的角度去理解跑起來的數(shù)據(jù)流了。實現(xiàn)從數(shù)據(jù)到企業(yè)戰(zhàn)略指導(dǎo)再回到數(shù)據(jù)。
第三層,是目前看起來最接近塔尖也是最高級的需求:即建模、更完善的預(yù)測性算法、更漂亮的數(shù)據(jù)可視化、深度學(xué)習(xí)、AI 等等……
這些更高級的更貼近金字塔尖,也是現(xiàn)在創(chuàng)業(yè)的風(fēng)口。我偶爾也會被風(fēng)吹的精神抖擻,但吹完風(fēng),靜下來想想,一個企業(yè)沒有好的數(shù)據(jù)工程、數(shù)據(jù)基礎(chǔ)架構(gòu)邏輯、沒有構(gòu)建數(shù)據(jù)流的能力,這些金塔尖上的需求是非常難被滿足的,很難取得好的結(jié)果,也無法實現(xiàn)真正的價值。
是的,我又被風(fēng)打下來了,開始站在地上思考問題了。
當(dāng)然,對于創(chuàng)業(yè)公司來說,打造完整的數(shù)據(jù)工程、嚴密數(shù)據(jù)架構(gòu)、高效的數(shù)據(jù)流是件 “正確但不容易的事情”。不好做、效果不直觀,但很重要。
最后,我想引用 Kafka 技術(shù)的締造者 (Kafka,被譽為 LinkedIn 的 “中樞神經(jīng)系統(tǒng)”)、現(xiàn) Confluent 的 CEO Jay Kreps 的一句話:
Without a reliable and complete data flow, a Hadoop cluster is little more than a very expensive and difficult-to-assemble space heater。
如果你的公司沒有一個完整可靠的數(shù)據(jù)流,那么你的 Hadoop 集群其實就像非常貴而且很難組裝的暖氣片而已。
正文如下:
目前,LinkedIn 上有 6500 人稱自己是數(shù)據(jù)工程師。而僅在舊金山,就有 6600 個這樣的工作機會虛位以待。去年,數(shù)據(jù)工程師的數(shù)量翻了一倍,但工程主管們卻仍覺得人才匱乏。
數(shù)據(jù)人才的旺盛需求源自一個根本性的變化:科技公司現(xiàn)如今都成了數(shù)據(jù)公司。
像 Uber、Airbnb、Spotify 這些公司都在大力發(fā)展數(shù)據(jù)產(chǎn)品,結(jié)果便造成數(shù)據(jù)系統(tǒng)開發(fā)和維護人才的激烈爭奪。
Josh Wills 是 Slack 的數(shù)據(jù)工程師,在 2016 數(shù)據(jù)工程大會(DataEngConf 2016)上半開玩笑地說:“我的數(shù)據(jù)工程師都在會場了,請你們別挖墻角。” 即使 Slack 這樣當(dāng)紅的硅谷企業(yè),也在擔(dān)憂如何留住這些寶貴人才。
我們的研究著重于說明以下幾個方面:
目前市場上數(shù)據(jù)工程師的數(shù)量;
數(shù)據(jù)工程師的背景和核心技能 —— 這些信息對于主管們研究如何將軟件工程轉(zhuǎn)換至數(shù)據(jù)工程特別有用(編者按:以緩解招聘數(shù)據(jù)工程師的壓力);
數(shù)據(jù)工程師的就業(yè)信息 —— 幫助你說明為什么要投資(時間/精力/金錢)到這項昂貴的技能中來。
從 Stripe、MIT、Looker 的工程主管對數(shù)據(jù)人才的發(fā)現(xiàn)、留任和對數(shù)據(jù)工程師團隊項目的開發(fā)等一系列策略的分享中,我們找到了這些問題的答案,使得這份報告清晰地呈現(xiàn)出數(shù)據(jù)工程的現(xiàn)狀。
關(guān)鍵指標(biāo):
人數(shù):6500 人在 LinkedIn (領(lǐng)英)上稱自己是數(shù)據(jù)工程師。
發(fā)展:2013 到 2015 年,數(shù)據(jù)工程師的數(shù)量至少翻了一倍。
分布:50% 的數(shù)據(jù)工程師都在美國。
之前的職務(wù):42% 的數(shù)據(jù)工程師都是軟件工程出身。
產(chǎn)業(yè):數(shù)據(jù)工程師主要供職于信息科技與服務(wù)產(chǎn)業(yè)。
技能:數(shù)據(jù)工程師前 5 項主要技能是:SQL、Java、Python、Hadoop和Linux。R語言甚至都沒進前 20。
分析方法:
本報告基于 Linkedin 上的用戶資料,包括所有公開可見的個人及公司檔案、技能與工作經(jīng)驗,數(shù)據(jù)以 2016 年 3 月份的統(tǒng)計為準(zhǔn)。
我們根據(jù)檔案上的職業(yè)標(biāo)題和頭銜識別出數(shù)據(jù)工程師,這里只納入了那些可確認公司的數(shù)據(jù)工程師檔案。
截止 2016 年 3 月 1 日,Linkedin 上的個人檔案大約 4.3 億,此次參考了 2.6 億例檔案,其中列有至少一項經(jīng)歷的近 1.9 億, 有一項已認證經(jīng)歷的超過 1 億,當(dāng)前經(jīng)歷已認證的近 8000 多萬。
在這些數(shù)據(jù)工程師中,我們分析了:
3 萬項工作經(jīng)驗
8.2 萬條個人經(jīng)歷
3400 個公司
分析工具:
分析采用 Python、SQL 和 Jupyter。
HighCharts 和 HighMaps 中的交互式可視化效果采用 Python 的制圖包和 Python-highchairs 實現(xiàn)。
數(shù)據(jù)采用 AWS Redshift 進行存儲和處理。
一、數(shù)據(jù)工程師有多少?
“數(shù)據(jù)工程師”(所有以某種方式與數(shù)據(jù)打交道的軟件工程師)的定義仍有很大的模糊性,目前并沒有一個完美答案,我們覺得由這些從業(yè)者自己來解讀是最好的方式。
我們發(fā)現(xiàn)在 Linkedin 上有 6500 人稱自己是“數(shù)據(jù)工程師”。
6500,這個數(shù)目并不大。
實際上,我們有些驚訝“數(shù)據(jù)工程師”竟如此之少。而在寫這篇報道的時候,Indeed 上有 6600 個 數(shù)據(jù)工程師的招聘啟事,這還僅僅是在舊金山和灣區(qū)。
薪酬數(shù)據(jù)也證實了數(shù)據(jù)工程師很受歡迎。據(jù)說,在 Facebook、Amazon 和 Google 這樣的巨頭公司工作的頂級數(shù)據(jù)工程師工資超 50 萬美金。Indeed 的數(shù)據(jù)分布更保守一些,盡管如此,薪資也達到了 6 位數(shù)。
從上圖可以看出,薪酬在 10 萬美元以上的職位超過 80%, 其中 110k-120k, 120k-130k 和 130k+ 的職位都很多,均超過了 20%。數(shù)據(jù)工程師成為當(dāng)下的黃金職業(yè)!
專家洞見:Jonathan Coveney,Stripe 數(shù)據(jù)工程師:“對數(shù)據(jù)工程師型人才的需求”。
近十年來,Jonathan 都在數(shù)據(jù)領(lǐng)域深耕,曾在 Twitter、Spotify 等公司建立數(shù)據(jù)系統(tǒng)。在他看來,有三種主要趨勢在推動著對數(shù)據(jù)工程師類人才的需求:
公司在對數(shù)據(jù)和管理數(shù)據(jù)的人的思考上更加精深。“數(shù)據(jù)不再是副產(chǎn)品,而是一個公司運作的核心”。
對機器學(xué)習(xí)愈加倚重。由于機器學(xué)習(xí)的進步,對專有數(shù)據(jù)的掌握逐漸成為各個領(lǐng)域的公司最重要的競爭優(yōu)勢。
公司開始建造數(shù)據(jù)產(chǎn)品。“以地圖為例,機器學(xué)習(xí)主要作用于交通路線的偵測與規(guī)劃,而地圖的基礎(chǔ)建設(shè)則在于管理和組織大規(guī)模的數(shù)據(jù),這就是數(shù)據(jù)工程?!?/span>
二、數(shù)據(jù)工程師的數(shù)量隨時間的變化
LinkedIn 的簡歷顯示了一個人聲明的自己的職業(yè)發(fā)展歷史,包括了在各個時間段內(nèi)的職務(wù)。這些數(shù)據(jù)讓我可以構(gòu)建出某個職務(wù)的不斷演變。
數(shù)據(jù)工程師的數(shù)量從 2013 年到 2015 年增長超過了一倍。而且基于上文中相關(guān)崗位需求的數(shù)據(jù),該增長趨勢并不會減慢。
相比之下,數(shù)據(jù)科學(xué)家的數(shù)量大約是數(shù)據(jù)工程師的兩倍(大約 11,400 人),但是數(shù)據(jù)工程師的增長速度卻要更高:在同一時期,數(shù)據(jù)科學(xué)家數(shù)量“僅”增長了 50%。
三、數(shù)據(jù)工程師從哪里來?
數(shù)據(jù)工程師的瘋狂增長讓人產(chǎn)生了一個疑問:這些人從哪里來?他們之前是什么職業(yè)?
我們通過觀察數(shù)據(jù),調(diào)查了數(shù)據(jù)工程師這一職業(yè)的 DNA —— 他們之前的職業(yè)。
在我們的調(diào)查前有以下幾個猜測:
數(shù)據(jù)工程師是軟件工程師和數(shù)據(jù)科學(xué)家之間的橋梁:他們編寫了生產(chǎn)代碼來方便數(shù)據(jù)科學(xué)家們進行大規(guī)模的運算實驗。因此,我們猜測有很大一部分數(shù)據(jù)工程師的前身是軟件工程師或數(shù)據(jù)科學(xué)家。
因為數(shù)據(jù)工程師很大部分的工作都圍繞著運算的規(guī)模,他們同時也是軟件工程師和運維開發(fā) ( Devops ) 的橋梁。因此我們猜測一部分人由運維開發(fā)轉(zhuǎn)來。
數(shù)據(jù)庫管理員曾在一個企業(yè)中扮演類似的角色。因而,不難假設(shè)一部分數(shù)據(jù)庫管理員投身到這一更加先進的職業(yè)中。
結(jié)果顯示,我們的猜測部分是正確的,有一點是非常明確的:數(shù)據(jù)工程師的 DNA 和軟件工程師最接近 。
數(shù)據(jù)工程師前職調(diào)查,最多依次為軟件工程師、分析師、咨詢師、商業(yè)分析師、數(shù)據(jù)架構(gòu)師、數(shù)據(jù)分析師、數(shù)據(jù)庫管理員、數(shù)據(jù)科學(xué)家、實習(xí)生、研究助理等。
四、數(shù)據(jù)工程師都在哪兒?
50% 的數(shù)據(jù)工程師在美國。這并不奇怪,因為數(shù)據(jù)科學(xué)家這個稱謂的本身和很多基礎(chǔ)技術(shù)都是來自于美國的科技公司和大學(xué)。
大部分的數(shù)據(jù)科技或是來自于一小部分大學(xué)——特別是伯克利大學(xué) AMP 實驗室,或者是來自于全球最大的網(wǎng)絡(luò)公司軟件工程團隊。
谷歌、臉書、領(lǐng)英和亞馬遜在領(lǐng)先該產(chǎn)業(yè)其他對手很久,就已經(jīng)開始挑戰(zhàn)大數(shù)據(jù),并投入了大量資源。他們不僅創(chuàng)造了很多的數(shù)據(jù)科技,他們成為了數(shù)據(jù)人才的培育基地。
美國至今有著最多的數(shù)據(jù)工程師,也同樣在全球有著最多的數(shù)據(jù)工程師檔案:接近4倍多于排名第二的印度。
為了標(biāo)準(zhǔn)化數(shù)據(jù),我們圖中排名前十的國家展開詳細,看他們各自數(shù)據(jù)工程師人數(shù)與在領(lǐng)英(LinkedIn)檔案數(shù)的對比,以及與總?cè)丝诘膶Ρ取?/span>
這張統(tǒng)計中沒有以色列,以色列是我們此前的參考標(biāo)準(zhǔn),它曾經(jīng)在每百萬人中的數(shù)據(jù)科學(xué)家占比排名中排名最高。上文提及,以色列長期被認為是數(shù)據(jù)科學(xué)的起源國度,在以色列“硅溪”有著強勁科技展現(xiàn)。但意外的是,這卻沒能轉(zhuǎn)化為高密度的數(shù)據(jù)工程師人才。
五、哪個行業(yè)聘用的數(shù)據(jù)工程師最多?
在擴大存儲、傳輸和處理數(shù)據(jù)方面遇到挑戰(zhàn)的公司對數(shù)據(jù)工程人才需求最甚。這些挑戰(zhàn)多在科技公司出現(xiàn),但是像電信、生物科技和保險這些行業(yè)呢?難道這些行業(yè)不需要數(shù)據(jù)擴張方面的幫助嗎?
當(dāng)我們考察數(shù)據(jù)工程師的工作領(lǐng)域時,我們發(fā)現(xiàn)一系列的行業(yè)都需要數(shù)據(jù)人才。
與預(yù)期一致,電信和金融服務(wù)接近頂端,但是在生物科技中 DNA 的拍字節(jié)(Petabytes)的排序卻沒有朝排名靠前的位置發(fā)展。
從該表格中,我們不應(yīng)該認為這些行業(yè)之外的領(lǐng)域就不需要或者不聘用擔(dān)任數(shù)據(jù)工程師功能的人才。相反,盡管“數(shù)據(jù)工程師”在某一個領(lǐng)域內(nèi)已經(jīng)流行開來,互聯(lián)網(wǎng)科技公司—— 這個特定職位的用法仍處于初始階段。這個領(lǐng)域內(nèi)的技術(shù)、流程和思維方式正在開始延伸到其它的行業(yè)。
六、哪些公司聘用的數(shù)據(jù)工程師最多?
當(dāng)我們看到聘用了數(shù)據(jù)工程師的具體公司時,他們在科技領(lǐng)域的受歡迎程度就更加明顯了。在前十的公司里,只有兩家公司不是專門從事技術(shù)或數(shù)據(jù)的:一家電信公司(Verizon)和一家金融機構(gòu)(Capital One)。
經(jīng)常在數(shù)據(jù)大會上分享經(jīng)驗的 Amazon、Facebook、Netflix、CapitalOne 等公司,都是業(yè)界數(shù)據(jù)應(yīng)用的非常成功的公司,和其雇傭的數(shù)據(jù)工程師的人數(shù)呈正相關(guān)。
很有趣的是,一些公司聘用了不成比例的數(shù)據(jù)工程師。比如 Spotify(1600+ 雇員)比起必能寶(Pitney Bowes,16000 雇員)要小得多,但他們聘用的數(shù)據(jù)工程師數(shù)量相當(dāng)。
這些數(shù)據(jù)清晰顯示,現(xiàn)在的一些科技 “獨角獸” 高度重視數(shù)據(jù)工程師一職。同時,考慮到三藩市目前有 6600 家公司在找數(shù)據(jù)工程師,這個趨勢短期內(nèi)似乎不會改變。
七、數(shù)據(jù)工程師的基礎(chǔ)技能
數(shù)據(jù)工程師干的活大體分為兩個部分:
在整個業(yè)務(wù)流程,讓消費者能接觸到數(shù)據(jù)
打造 “產(chǎn)品化” 的算法,將其變?yōu)閿?shù)據(jù)產(chǎn)品
總體而言,直接與數(shù)據(jù)相關(guān)的技能獲得了越來越多的重視,另一方面,某些核心的軟件技能也為數(shù)據(jù)工程師所青睞。
從圖上可以看出用 SQL 來回答分析型的問題、寫腳本來做數(shù)據(jù)集成、清洗這樣的 ETL 任務(wù)和使用Hadoop生態(tài)的工具是數(shù)據(jù)工程師的主要工作。
No.1 SQL(Structured Query Language:結(jié)構(gòu)化查詢語言):
即便在數(shù)據(jù)技術(shù)領(lǐng)域,很多 NoSQL 倡導(dǎo)者 “欲除之而后快”,但 SQL 仍是數(shù)據(jù)工程師最普遍具備的技能。
No. 2 Java:
Java 是最受數(shù)據(jù)工程師歡迎的編程語言。自從分布式系統(tǒng)基礎(chǔ)架構(gòu) Hadoop 在 2000 年左右被開發(fā)出來后,JVM(Java Virtual Machine:Java 虛擬機)便處于數(shù)據(jù)處理的中心。
No.3 Python:
不僅被應(yīng)用于數(shù)據(jù)工程,還能為分析任務(wù)服務(wù)——相較而言,總是和 Python 一同出現(xiàn)在新聞里的 R 語言,更專精于分析與統(tǒng)計,這應(yīng)該也是 R 沒有上榜的主要原因——在數(shù)據(jù)科學(xué)圈,數(shù)據(jù)工程和分析二者并重。
專家洞見:Mike Xu, Looker 的數(shù)據(jù)架構(gòu)師:“弄明白你想要哪款數(shù)據(jù)工程師?”
Mike 的職責(zé)之一是傾聽開發(fā)者的心聲:哪些事情讓他們開心?哪些讓他們不爽?最多的抱怨是什么呢?嗯,不同的數(shù)據(jù)工程角色間是有細微差別的,但很多公司卻不懂行。
在 Mike 看來,數(shù)據(jù)工程師主要有 4 種角色——這也是招聘者應(yīng)該弄明白的事情:
數(shù)據(jù)倉庫:專注于為分析來優(yōu)化數(shù)據(jù)倉庫,主要是負責(zé)數(shù)據(jù)的讀寫和管理。
工具:總能在一系列數(shù)據(jù)工具箱里,極其擅長一、兩樣特定的工具(編者按:類似于 Hive、Hbase、ElasticSearch 等)。
架構(gòu):才華通透、“端到端” 的思考者,無論是數(shù)據(jù)收集,還是收集后幫助團隊使用數(shù)據(jù),他們需要考慮的事情多而雜,貫穿業(yè)務(wù)的很多環(huán)節(jié)。
運維(Ops):主要把時間花在建立數(shù)據(jù)庫等事項,還要管理權(quán)限、操心數(shù)據(jù)安全。
八、數(shù)據(jù)工程師的技能如何隨著公司規(guī)模的變化而改變?
作為數(shù)據(jù)工程師,同樣需要認真應(yīng)對公司和業(yè)務(wù)的規(guī)?;鶐淼奶魬?zhàn)——業(yè)務(wù)更多,數(shù)據(jù)集 (Dataset)的規(guī)模也更大,所需求的數(shù)據(jù)能力和工作方式也要隨之演化。
姑且做個猜測:規(guī)模越大的公司,對規(guī)?;嚓P(guān)的技能越加看重。是否真的如此?我們先查看查看下面的圖表。
縱軸表示技能,橫軸則表示相對偏差(Relative Difference:某一次測量的絕對偏差占平均值的百分比)。深藍色、天藍色、橘色分別代表三種公司規(guī)模:1-200人、200-1000人、1000人以上。越接近圖表頂部,該技能越應(yīng)用于較小的公司,反之,位于底部的技能更普遍地出現(xiàn)在 1000 人及以上的公司里。
看完表,我們可以用數(shù)據(jù)回答先前的猜測:NO。
真實情況是,在規(guī)模更大的公司,數(shù)據(jù)工程師更在意 “企業(yè)級” 相關(guān)的技能,比如 ETL(Extract-Transform-Load)、BI(Business Intelligence:商業(yè)智能)、數(shù)據(jù)倉庫等,而在較小的公司,數(shù)據(jù)工程師更多的把心力花在 Python、Java 等編程語言上(編者按:Python 和 Java 作為普通的編程語言,可以用來構(gòu)建產(chǎn)品,這對于小公司來說屬于核心業(yè)務(wù))。
專家洞見:Will Smith,MIT 的主數(shù)據(jù)工程師 / 架構(gòu)師:“數(shù)據(jù)工程 @大公司 VS. 初創(chuàng)公司”
Will 曾為 Nokia、Warner Bros Games 這種大公司打造過數(shù)據(jù)技術(shù)。在他看來,數(shù)據(jù)工程師所仰賴的技術(shù),不那么取決于公司規(guī)模本身,而更應(yīng)該從這么一種角度出發(fā):你所負責(zé)的數(shù)據(jù)是“寫時模式”(schema-on-write)還是“讀時模式”(schema-on-read)?
他認為,大公司往往在處理數(shù)據(jù)工程的 BI 方面有所積累,Informatica、Oracle、SAP 都會接觸和使用。這類公司往往在“寫時模式”的環(huán)境里工作。
但現(xiàn)如今,很多打造數(shù)據(jù)科技的公司實際作業(yè)的環(huán)境是“讀時模式”。“想象一下,公司交給你幾個 TB 的日志數(shù)據(jù),用的 JSON,是關(guān)于廣告效果的。數(shù)據(jù)工程師不知道能從這堆數(shù)據(jù)中挖掘出什么,所以你需要開發(fā)者寫代碼去做數(shù)據(jù)發(fā)掘,而不是一上來就直接套用 SQL。這和大公司在 ‘寫時模式’ 的環(huán)境中做事很不一樣?!?/span>
2011年時,Will 正效力于諾基亞 (Nokia)。盡管當(dāng)時主要經(jīng)手 “企業(yè)級的數(shù)據(jù)”,但團隊卻選擇“讀時模式”的思路去開展相關(guān)工作。
“現(xiàn)在很多數(shù)據(jù)工程師都這么做,比較適合規(guī)模化的需求。這樣設(shè)計和開發(fā)出來的東西,可以消化掉來自于各種來源的數(shù)據(jù)。傳統(tǒng)老舊的 BI 系統(tǒng)就沒這能耐——主要是因為以’寫時模式’為基礎(chǔ)吧,這種老技術(shù)不知道在一堆數(shù)據(jù)里都有什么,這么一來我們這些工程師也沒啥頭緒了。”
九、數(shù)據(jù)工程師與數(shù)據(jù)科學(xué)家的技能差異是怎樣的?
這個數(shù)據(jù)集體現(xiàn)了數(shù)據(jù)工程師與數(shù)據(jù)科學(xué)家之間的明顯的技能差異,由此可以將數(shù)據(jù)工程師與數(shù)據(jù)科學(xué)家的技能構(gòu)成看作一個頻譜的兩個對立面。
從圖表的技能構(gòu)成可以看出,數(shù)據(jù)工程師更傾向于掌握 “戰(zhàn)術(shù)層面” 的具體數(shù)據(jù)技能,專注于使數(shù)據(jù)可用并能夠在生產(chǎn)環(huán)境中對數(shù)據(jù)進行處理,如具體的編程語言、操作系統(tǒng)與數(shù)據(jù)庫等;而數(shù)據(jù)科學(xué)家更傾向于“戰(zhàn)略層面”的數(shù)據(jù)技能,如數(shù)據(jù)分析、數(shù)據(jù)挖掘、統(tǒng)計分析、機器學(xué)習(xí)等。
十、數(shù)據(jù)工程師與軟件工程師的技能差異是怎樣的?
數(shù)據(jù)工程師與數(shù)據(jù)科學(xué)家之間的差異是十分明顯的,那么數(shù)據(jù)工程師與軟件工程師之間的技能差異又是怎樣的呢?畢竟,正如我們之前所展示的那樣,大部分的數(shù)據(jù)工程師都具有軟件工程師的背景。
以數(shù)據(jù)工程師為中心的最多人選擇的技能是 Hadoop,數(shù)據(jù)倉庫和 BI——正如你所期望的那樣。與之相反,在軟件工程師端列出的所有技能幾乎都與 web 前端開發(fā)相關(guān)。最大的兩個例外是 C 語言和 C++ 語言,這是在現(xiàn)代大數(shù)據(jù)技術(shù)棧開發(fā)中不常用到的編程語言。
雖然許多數(shù)據(jù)工程師具有軟件工程師背景,但他們并不是簡單的為了博取加薪而轉(zhuǎn)換一個新的工作頭銜;他們不得不通過學(xué)習(xí)新的技能來適應(yīng)新的角色。
專家洞見:Ryan Orban,Galvanize CTO:“在數(shù)據(jù)工程師和數(shù)據(jù)科學(xué)家之間建立更好的關(guān)系”
“想一想設(shè)計師和前端開發(fā)工程師之間的關(guān)系,” Ryan Orban 說,“一個角色負責(zé)通過想法完成工作,而另一個角色負責(zé)將想法付諸實施,這之間可能會導(dǎo)致很多的緊張對立情緒?!?/span>
Ryan 認為,數(shù)據(jù)工程師和數(shù)據(jù)科學(xué)家之間的關(guān)系與之類似,因此緩解兩者之間的緊張情緒的方法也是相似的?!罢缭O(shè)計師經(jīng)常被告知需要學(xué)習(xí)編寫一些代碼,而前端開發(fā)工程師也經(jīng)常被告知要制作一些原型,我鼓勵數(shù)據(jù)科學(xué)家和數(shù)據(jù)工程師相互學(xué)習(xí)一些對方所需要掌握的數(shù)據(jù)技能。”
那么,數(shù)據(jù)工程師需要多深入的了解數(shù)據(jù)科學(xué)家的世界呢?
“數(shù)據(jù)工程師應(yīng)該對機器學(xué)習(xí)有一些基本的了解”,Ryan 說,“他們不需要了解所有的數(shù)學(xué)理論,但是他們應(yīng)該能夠判斷效率和準(zhǔn)確性。相反,數(shù)據(jù)科學(xué)家應(yīng)該了解架構(gòu),以及如何對架構(gòu)進行擴展,并初步了解生產(chǎn)級的編程語言?!?/span>
這種深入了解其他相關(guān)學(xué)科專業(yè)知識的轉(zhuǎn)變也發(fā)生在其他領(lǐng)域。公司習(xí)慣于聘請數(shù)據(jù)科學(xué)家來負責(zé)市場、產(chǎn)品或者業(yè)務(wù)分析方面的工作,而聘請數(shù)據(jù)工程師來完成更廣泛的工程功能。這造成了目標(biāo)錯位。Ryan 認為這種趨勢正在改變:“ ‘?dāng)?shù)據(jù)團隊’ 是由數(shù)據(jù)科學(xué)家和數(shù)據(jù)工程師共同構(gòu)成的這一概念越來越受歡迎。這一如此簡單的改變將很大的改善兩組人員之間的關(guān)系?!?/span>