緣起 之所以有這個話題,是因為周末加班中午吃飯與一個同行朋友聊起了這個話題,之后再細(xì)細(xì)地結(jié)合一些其他接觸的東西,確實是有些感觸的。
并且對于行業(yè)的一些現(xiàn)狀,也的確有些自己的看法,對不對先不論,這玩意兒也沒有對錯之分,每個人都有自己想法,當(dāng)然也包括我啦。
所以,有些東西、有些想法我還是愿意分享出來的,暢所欲言吧~~
1.我眼中的大數(shù)據(jù)現(xiàn)狀
其實個人在大數(shù)據(jù)在大數(shù)據(jù)這個坑中,細(xì)細(xì)算來時間也有3+年了,從一開始做大數(shù)據(jù)中心平臺開發(fā)構(gòu)建,到現(xiàn)在關(guān)注的數(shù)據(jù)上層應(yīng)用挖掘。所以,基本上從數(shù)據(jù)收集->數(shù)據(jù)處理(離線實時,并且還勉強算是國內(nèi)實時處理早期的實踐者)->數(shù)據(jù)上層應(yīng)用挖掘,這個鏈路都走了一遍。
并且加上手里一千多人的大數(shù)據(jù)圈子,發(fā)起組織線下技術(shù)沙龍等等經(jīng)歷,坑內(nèi)里的做的并不算十分的多,但是通過一些交流,接觸過的這方面的東西還是不少的。
所以,不至于有資格說對這個技術(shù)方向有啥定論,但是一些自己的看法見解還是有滴。
說起大數(shù)據(jù),有個成語可以來形容一下它的現(xiàn)狀: 遍地開花!
如今,在國內(nèi),只要是個IT公司(說的是非傳統(tǒng)行業(yè)),出去的時候,感覺要是說自己公司沒有涉足大數(shù)據(jù)都不好意思。所以,現(xiàn)在的情況大部分是這樣的:一個創(chuàng)業(yè)公司哪怕只有十多人的開發(fā)團(tuán)隊,也非得整一個大數(shù)據(jù)小組出來,我們不止要做大數(shù)據(jù)離線處理,還要做離線處理,不止有數(shù)據(jù)分析報表,我們還得進(jìn)行深度的數(shù)據(jù)挖掘,做到精準(zhǔn)的個性化推薦,流弊的數(shù)據(jù)預(yù)測!
偶滴娘親啊,寥寥數(shù)人,不止要搭起一整套完整的數(shù)據(jù)收集、數(shù)據(jù)傳輸、數(shù)據(jù)離線實時處理,不止要維護(hù)hadoop集群、spark集群、storm集群的穩(wěn)定性,抽空還要做深層數(shù)據(jù)挖掘,還要研究工業(yè)化流弊的算法。你們招的這些人不是攻城獅啊,是神啊!這么流弊!
其實我并沒有說這種做法一定是錯的,只是行業(yè)現(xiàn)狀真心很多這種情況。如今,大數(shù)據(jù)確實是異常略微畸形的火爆!至于說大數(shù)據(jù)這個技術(shù)方向為何會如此的爆炸,個人的觀點可能和大部分的觀點一樣:一方面是數(shù)據(jù)積累到一定程度了;另一方面是大規(guī)模數(shù)據(jù)處理技術(shù)的日漸成熟,其中當(dāng)然以hadoop生態(tài)為代表。
但在不久前,我曾和一個創(chuàng)業(yè)公司的CEO聊過這個話題,他的觀點很新穎。他反駁了我的觀點,他說中國現(xiàn)在之所以大數(shù)據(jù)遍地開花,是由于賺錢模式變了。他說,在以前,隨便搞點啥都能拉到一大堆投資,但現(xiàn)在經(jīng)濟(jì)形勢不一樣了,必須想其他新的觸發(fā)點,那就是數(shù)據(jù),并且圍繞數(shù)據(jù)而產(chǎn)生新的利益點,這樣,投資人才愿意投錢進(jìn)來,所以是個公司都愿意和大數(shù)據(jù)沾點邊,不然都不好意思出去說。
就個人而言,其實感覺他說的也挺有道理的,不過我依然保持自己的看法,只是兩人看待事情的角度有些不一樣,我是從技術(shù)的角度去解析這個情況,而他則更多從創(chuàng)業(yè)者的角度試圖去解釋這個事情。無關(guān)對錯! 就目前來說,業(yè)內(nèi)大數(shù)據(jù)遍地開花這個情況確實是存在的,個人感覺大體上有如下的具體變化:
涉足的數(shù)據(jù)處理方式上來說,大規(guī)模離線處理已經(jīng)被玩壞了,稍微有點實力的公司都已經(jīng)開始離線、實時并行了(近一兩年Storm、Spark強勢崛起);
而在數(shù)據(jù)來源上,已經(jīng)不再局限于自個的數(shù)據(jù)了,越來越多的公司開始爬取互聯(lián)網(wǎng)上的公共數(shù)據(jù)(我曾在《DT時代變革的反思》一文中比較詳細(xì)的分析過這個數(shù)據(jù)新來源); 而在數(shù)據(jù)的上層應(yīng)用上,也已經(jīng)不再局限于多維統(tǒng)計分析,漸漸得向用戶畫像、精準(zhǔn)個性化推薦、業(yè)務(wù)的預(yù)測等方向靠攏(但實際上深層挖掘方面,國內(nèi)還是很low的)。
2.大數(shù)據(jù)年份這東西
之前和朋友吃飯時聊的時候,他說到大數(shù)據(jù)這個技術(shù)方向的積累問題。他曾感嘆到,大數(shù)據(jù)這個方向還是缺少底蘊。我問他為何這么說,他說你見過十年以上的大數(shù)據(jù)專家么?其他行業(yè)方向,比比皆是!我頓時無語,大數(shù)據(jù)這個技術(shù)方向滿打滿算才發(fā)展不到六七年吧,上哪找十年以上的大數(shù)據(jù)專家去。情況確實是這樣的,基本可以分這幾種情況吧:
在這個坑里,真正五年以上的大數(shù)據(jù)背景的人,已經(jīng)可以算的上是半個專家了,業(yè)內(nèi)絕對是稀有動物(所以,經(jīng)常看到那種招聘簡歷寫到十年以上大數(shù)據(jù)行業(yè)背景,我就笑了);
而諸如三四年的,會點數(shù)據(jù)架構(gòu),又會點上層數(shù)據(jù)應(yīng)用挖掘的,估計至少也能算的是半個中堅了,這種人不算太少,但也絕對不算多;
最多的是那種不到兩年大數(shù)據(jù)行業(yè)背景的,特別是那種聽聞大數(shù)據(jù)行情好,紛紛轉(zhuǎn)過來一兩年左右的,再就是那種一畢業(yè)就立志投身大數(shù)據(jù)行業(yè)的新人朋友,這類型的人應(yīng)該是占據(jù)大數(shù)據(jù)從業(yè)人士中的絕大部分。
這個方向卻是缺少累積的,經(jīng)常在群中(storm-分布式-IT技術(shù) 191321336)遇到那種號稱是搞大數(shù)據(jù)的,然后問到:hadoop和storm哪個比較好? 我的天吶,為何他們那么喜歡把兩個不是一類東西放在一起比較?!我都無力吐槽了,就目前來說,大數(shù)據(jù)這個方向確實缺少底蘊,還略顯浮夸,需要時間去積累。
3.企業(yè)在招什么樣的大數(shù)據(jù)工程師
(1) 剛洗白一兩年的,或者立志為大數(shù)據(jù)行業(yè)做貢獻(xiàn)的畢業(yè)生。剛才說大數(shù)據(jù)行業(yè)遍地開花,人員稀缺,從個人經(jīng)歷來說,這真心是這種狀況。業(yè)務(wù)重心逐漸偏移到數(shù)據(jù)部,所以部門急劇擴招(當(dāng)然也有老員工離職的問題),近三個月來,我陸陸續(xù)續(xù)面試了大約有7個人左右吧。面試的人中有兩三年工作經(jīng)驗的,也有四五年工作經(jīng)驗的,當(dāng)然也有剛畢業(yè)的本科生或者碩士生??茨攴莞杏X都還不錯是吧,但是如果你翻一翻簡歷就會哭了。就說說三到五年工作經(jīng)驗的吧。
簡歷中,項目經(jīng)歷一項一大溜啥XX管理系統(tǒng)、XX電商后端開發(fā)項目,翻了八九個項目,終于在最后看到辣么一兩個大數(shù)據(jù)有關(guān)的項目。而掌握的技術(shù)中是各種的什么Spring MVC啊、SSH啊、js啊、甚至是php之類的,只有寥寥數(shù)個什么hadoop啥的,還不敢放在前頭,當(dāng)時我就哭了/(ㄒoㄒ)/~~。
情況真是這樣的,工作經(jīng)驗足的,很多都是剛從其他技術(shù)領(lǐng)域轉(zhuǎn)過來的,其中以開發(fā)java后端,諸如精通什么MVC框架的人群為主體。能說上hadoop是怎么回事,會點MapReduce、Hive之類的是常態(tài);會點Spark,能寫Scala,知道Storm的,少之又少;能把整個數(shù)據(jù)框架流程說清楚的都是奇才了;至于說到大規(guī)模數(shù)據(jù)的深層挖掘,他們是這樣說的“沒怎么接觸,但有這個興趣去學(xué)”.
行情確實是這樣的,大數(shù)據(jù)的坑挖的太大,所以各個公司都缺人,而且還是奇缺,所以也就有了上面我說的現(xiàn)象,各個行業(yè),特別是傳統(tǒng)IT行業(yè)的從業(yè)人士,紛紛轉(zhuǎn)入互聯(lián)網(wǎng),投身大數(shù)據(jù)。而有點大數(shù)據(jù)經(jīng)驗的,大部分都是香饃饃似得供著,不愿意放手。所以,最終我們這邊實際情況就是,問HR咋回事,HR說JD發(fā)出去無數(shù)份,能拉過來面試的就醬紫了。最終大老板發(fā)話了,說到:經(jīng)驗差點沒關(guān)系,只要腦子活愿意學(xué),就要!所以,7個人,offer就發(fā)出去4份。
但更悲劇還在后頭,兩個有大概平均1.5年大數(shù)據(jù)經(jīng)驗的人,拿到offer后根本不鳥之,也也不知道后來去了哪個公司,而最后進(jìn)來的是兩個本科以及碩士應(yīng)屆畢業(yè)生。所以,就目前來看,大數(shù)據(jù)行業(yè)的火爆帶來的一個現(xiàn)狀就是,大量的java開發(fā)人員轉(zhuǎn)行,大數(shù)據(jù)行業(yè)背景平均在一年多,雖然如此,依然是供不應(yīng)求的。
(2) 我們來看看一些“喜人”的招聘需求。隨便翻一翻招聘網(wǎng)站的職位需求,每天都有大量的大數(shù)據(jù)相關(guān)職位被刷新。然后結(jié)合剛才我們所說的一些混亂現(xiàn)狀,你會發(fā)現(xiàn)很多“喜人”的招聘說明。
我希望的是,用人的公司也好、企業(yè)也好,看完這個之后,能對招人有個更清晰的定位。我們要的是大數(shù)據(jù)行業(yè)專家! JD 中是這么描述的,十年以上大數(shù)據(jù)領(lǐng)域經(jīng)驗,然后會XX,然后又得會XX。再多的俺就不多說了,結(jié)合剛才我們說的大數(shù)據(jù)行業(yè)歷史。十年?我就呵呵了~~ 我所看到的這種JD,大部分出自于傳統(tǒng)IT行業(yè)(看到?jīng)],傳統(tǒng)IT行業(yè)也開始追趕潮流了),而互聯(lián)網(wǎng)公司職位描述就含蓄多了,最起碼他們不會動不動就要十年以上“磚家”。
而且還有一點個人想吐槽的就是,你說十年就十年吧,給待遇還奇低無比。關(guān)于這一點,互聯(lián)網(wǎng)公司就比較明白事理的。關(guān)于大數(shù)據(jù)薪酬這一塊,我們再進(jìn)行分析分析~~ 我們要的是能進(jìn)行大規(guī)模數(shù)據(jù)挖掘的人才!
關(guān)于數(shù)據(jù)挖掘,上面也稍微提到過一點,數(shù)據(jù)的上層應(yīng)用挖掘,這個需求隨著數(shù)據(jù)處理流程日益完善,數(shù)據(jù)的應(yīng)用已經(jīng)從簡單的多維統(tǒng)計分析,慢慢得向深層挖掘過渡。不說大規(guī)模數(shù)據(jù),就說傳統(tǒng)的數(shù)據(jù)挖掘,其實這塊就國內(nèi)的情況來看,還是處于比較初級的狀態(tài)的。我們經(jīng)??吹竭@樣的職位JD描述,Title寫的是“數(shù)據(jù)挖掘工程師招聘”,然后附加條件是,熟悉大數(shù)據(jù)領(lǐng)域,會MapReduce、kafka、hadoop、storm、spark,熟悉ETL,對若干NoSQL了解熟悉,能夠進(jìn)行平臺搭建,平臺開發(fā),能夠進(jìn)行數(shù)據(jù)處理,會分類、聚類、用戶畫像、個性化推薦各種算法。
最后在工作年限上寫著“1-3年”(年份太足是很貴的嘛)。我的天啊,他們看樣子不止是想招數(shù)據(jù)挖掘工程師啊?! ∷麄兿袷窃谡蠩TL工程師;不對,應(yīng)該是大數(shù)據(jù)平臺開發(fā)工程師;也不對,好像確實是在招數(shù)據(jù)挖掘工程師,沒看到有算法需求嗎。我趕腳呀,他們不是在招數(shù)據(jù)挖掘工程師,他們是在招一個全能工程師,是在招一個神啊。
(3) 說了不少,對于大數(shù)據(jù)人才招聘這塊,簡單的總結(jié)一下吧! 其實個人感覺,企業(yè)還是需要對自己崗位定位要有一個比較清楚的定位的。如果你的資金足,想招一個業(yè)內(nèi)權(quán)威點的,專家級人物,沒關(guān)系,但你也別睜著眼瞎說十年吶。上哪去給你找十年專家啊! 所以,個人建議就是,瞄準(zhǔn)在大數(shù)據(jù)領(lǐng)域真正玩過五年以上的,基本上就是牛人了,也足夠你用的了。
然后針對剛才說的“數(shù)據(jù)挖掘”招聘現(xiàn)象,其實定位也很重要了,真心想要招一個類似“全能”的人,至少也要找一個在這個領(lǐng)域待過3+年的。至少三年以上的時間,這種人會對數(shù)據(jù)架構(gòu),數(shù)據(jù)處理流程,甚至是上層數(shù)據(jù)應(yīng)用挖掘,都有相應(yīng)的經(jīng)驗,而不至于空白一片,并且容易帶動其他一年半年的大數(shù)據(jù)經(jīng)驗的人,做方向?qū)颍瑘F(tuán)隊就能快速形成大數(shù)據(jù)戰(zhàn)斗力。所以,如果真心想要類似這種“全能”,真心實意點,把年份改到3+吧,并且要求實打?qū)嵉?+大數(shù)據(jù)技術(shù)背景,估計差不多。
接下來就是那種一兩年的大數(shù)據(jù)技術(shù)背景的,這種以java后端開發(fā)轉(zhuǎn)行大軍為代表。如果你的預(yù)算瞄準(zhǔn)的是這個市場,那你也別玩虛的,對口招聘吧。要做大規(guī)模離線處理,你就招會hadoop的;需要實時處理,你就招會Storm或者會Spark Streaming的;需要做ETL,你就招熟悉ETL流程的;招數(shù)據(jù)挖掘,就找會點算法的。這才是實在的!
而對于應(yīng)屆生來說,個人趕緊項目經(jīng)驗都是其次的,哪怕是一些實驗室項目經(jīng)驗來說,也沒啥大用。好歹算是接觸過一些內(nèi)幕的,所以實驗室項目的質(zhì)量,咱就不多說了,呵呵就行了。所以,我們看的一是基礎(chǔ)能力。就個人的感覺來說,基礎(chǔ)能力當(dāng)然不必說,我更偏向于對大數(shù)據(jù)技術(shù)感興趣,并且思維敏捷的應(yīng)屆生。為什么這么說呢?因為大數(shù)據(jù)技術(shù)這個領(lǐng)域會涉及大量的新事物,各種開源的東西,經(jīng)驗少沒關(guān)系,只有思維夠敏捷,有強大的快速學(xué)習(xí)能力,那就沒有問題!
4.我們真的需要算法工程師嗎?
接著剛才的話題,不少企業(yè)公司打著招數(shù)據(jù)挖掘工程師,算法工程師,我在想他們是真的需要算法工程師么?
答案顯然是否定的!我曾關(guān)于數(shù)據(jù)挖掘工程師與算法工程師的區(qū)別問題,跟不少人討論過,我的個人看法是,算法工程師的范圍顯然是小于數(shù)據(jù)挖掘工程師的。
數(shù)據(jù)挖掘工程師需要了解整套數(shù)據(jù)流入的過程,包括數(shù)據(jù)的接入、預(yù)處理,然后需要知道怎么用數(shù)據(jù)解決實際的業(yè)務(wù)問題,說白就是想辦法讓數(shù)據(jù)產(chǎn)生價值。
他需要知道一整個數(shù)據(jù)到業(yè)務(wù)輸出的機制或者說是系統(tǒng),可能涉及到復(fù)雜的算法轉(zhuǎn)化,也可能只是簡單的規(guī)則轉(zhuǎn)化,或者多個模型的轉(zhuǎn)化組合輸出等等,他是一個比較全面而概括性定位。
而算法工程師則不一樣,他們的職責(zé)我認(rèn)為更純粹,他們需要知道如何把現(xiàn)實問題轉(zhuǎn)化為數(shù)學(xué)的模型,并且把模型調(diào)到極致,從而解決問題。所以,算法工程師工作內(nèi)容更單一,但是更專,需要更好的數(shù)學(xué)功底。
這也就是為何我不敢對外說是算法工程師的原因了,我怕被揍,哈哈~~ OK ,有點繞遠(yuǎn)了。我們回過頭來說說,目前大部分公司企業(yè)在找大數(shù)據(jù)的人,同時也在找數(shù)據(jù)挖掘工程師或者算法工程師。
那么,企業(yè)或者公司如何在數(shù)據(jù)挖掘這塊進(jìn)行定位呢?我個人認(rèn)為,大部分中小公司是不具備找純算法工程師條件的。如果,有小公司說要招算法工程師,要么是金多任性,要么是打著招算法工程師的幌子,招會點數(shù)據(jù)挖掘的人。
至于原因呢,一方面是算法這塊,在國內(nèi)屬于稀缺資源,所以成本都比較高;另一方面就是在實際的業(yè)務(wù)操作中,高深的算法模型難以工業(yè)化(所以,大部分論文上的東西離工業(yè)化生產(chǎn)是很遠(yuǎn)的,別被騙了);再者就是在數(shù)據(jù)挖掘領(lǐng)域,一些很初級容易工業(yè)生產(chǎn)化算法,甚至是簡單的規(guī)則定制,都在現(xiàn)階段已經(jīng)能達(dá)到業(yè)務(wù)目的了,我們又何必費那個勁呢?!所以,我認(rèn)為企業(yè)在這種階段,你們需求是這種能夠進(jìn)行大批量數(shù)據(jù)處理,然后又知道怎么進(jìn)行數(shù)據(jù)工業(yè)轉(zhuǎn)化的人。因為,算法工程師在這種階段難以獲得你需要的性價轉(zhuǎn)換。
包括我們大數(shù)據(jù)部門內(nèi)部也是同樣如此,算法小組冠著“算法”的頭銜,干著數(shù)據(jù)處理的雜活。這需要時間去過渡!
當(dāng)然,如果你一定要養(yǎng)那么一群專業(yè)的算法工程師,辣么,我只能說,你拿的天使投資太多了,估計是不知道怎么花了,養(yǎng)著就養(yǎng)著吧。
5.談一談薪酬,談一談人生吧!
最后,談一談薪酬,談一談人生,談一談理想吧! 說到談薪酬,談人生談理想這個環(huán)節(jié),我想大部分都是比較喜歡的,我也不例外,我也很喜歡,哈哈~~
正如之前所說的,大數(shù)據(jù)這個領(lǐng)域,有點略微畸形的火爆,導(dǎo)致了這個方向很缺人,也正是大量java后端開發(fā)人員轉(zhuǎn)行的直接原因。因為缺人,他們就轉(zhuǎn)行么?顯然是扯的!大伙兒都是有理想的人,要向“錢”看的。缺人,找不到人怎么辦?提高待遇,自然就有了。
我看到過一份2014年的職業(yè)薪酬統(tǒng)計報告,其中大數(shù)據(jù)方向絕對是屬于偏高的。就我所知,除去金融行業(yè)的高玩?zhèn)儭?/p>
接下來就是玩數(shù)據(jù)挖掘的,特別是會大規(guī)模數(shù)據(jù)挖掘的人,如果是專業(yè)的算法工程師,那么,就更贊了,麻麻再也不用擔(dān)心我的工資了。
然后就是游戲行業(yè)的開發(fā)者,游戲是個保利行業(yè),所以他們薪酬高一些是很正常的。
再接下來就是冠以“大數(shù)據(jù)”稱號的攻城獅們。這類的,要么是做平臺構(gòu)建的,要么是做大數(shù)據(jù)架構(gòu),要么是做數(shù)據(jù)處理的等等。工資也比純Java后端開發(fā)、C開發(fā)、C++開發(fā)等高那么半檔一檔的。
接下來跟大數(shù)據(jù)沒有半毛錢關(guān)系的職位啥的,我就不多說了~~
6.小結(jié)
所以,總體來看,整個大數(shù)據(jù)行業(yè)還是比較混亂的,企業(yè)對自己需求定位很混亂,雖然如此,依然是難以招到人。對于投身大數(shù)據(jù)這個坑的人來說,我個人的建議就是,要入行沒問題,但是找準(zhǔn)自己的興趣G點,別想著啥都想掌握。找準(zhǔn)一個切入點,比如就是平臺搭建、就是ETL、就是寫離線處理程序、就是研究實時等等,然后,慢慢再往大領(lǐng)域中擴充自己的大數(shù)據(jù)知識庫存。
就我個人來說,從數(shù)據(jù)架構(gòu)到數(shù)據(jù)上層應(yīng)用挖掘,目前依然在坑內(nèi),也沒有打算從大數(shù)據(jù)的這個坑中脫身。大數(shù)據(jù)這個方向是個技術(shù)快速更新、迭代的技術(shù)領(lǐng)域,所以,個人鼓勵坑中人士多多交流、多多分享才能跟上這個時代潮流。