一篇文章看懂大資料分析就業前景及職能定位

上海小小胖發表於2019-03-31

大資料分析

Overview:

  1. 基本概念

  2. DS的職能要求

  3. DE的職能要求

  4. 總結

一、序

今天主要給大家好好說說python的發展方向,這篇文章也是藏了好久了,群裡各種問怎麼學,大資料分析怎麼學,爬蟲怎麼入門,說實在的,你關注我號久一點,都知道有那麼幾篇文章是專門給入門看的,還有幾篇是資料總結的。會找的都能找到。

但是一篇可能不夠,因為我想盡可能的給大家剖析行業情況,讓大家在做選擇的時候不至於還不知道這是幹啥的,只知道這個很火。

今天就先給大家講大資料分析工程師。

二、基本概念

對於一大部分想轉行做IT,做python的,都是衝著大資料分析來的,那你知道大資料分析的是啥嗎?你知道大資料分析的崗位職能分配情況嗎?

如果這些都答不上來的話,那就別追風口,如果盲目的跟風,只會讓你進來找不著北,到頭來,浪費1年時間,還的回去幹老本行。

首先,我們經常叫的大資料分析師有兩種崗位定位:

  • 大資料科學家,Data Scientist,DS

  • 大資料工程師,Data Engineer,DE

從這兩個單詞裡,你就能看出端倪了,那接下來就以我在普華永道的工作經歷告訴你,這兩者的區別,以及工作內容劃分。

三、DS職能要求

1. 專業知識

DS的職能是演算法分析,是基於對行業背景的瞭解幫助客戶作出預期計算。而這裡面就會涉及到很多專業知識,俗稱統計分析。

和pwc同事共事的時候,我經常向他們討教關於DS的一些事情,再加上一起做專案,分工明確,也自然對DS更瞭解一些。我見過的DS都是碩士畢業,還都是全美TOP10的學校,要麼博士。

不是學歷歧視,是你要做這事情,就得要這點本事,你沒有7年,你的專業知識支撐不了你做DS。如果你不理解這句話,我給大家舉個例子:

大家都讀過小學(就怕我說都讀過高中,你說你初中畢業為了生存,就出來打拼了)不考慮天才好麼,我們都是小老百姓。然後解題思路就是按照老師教的,而思路只侷限在一元二次方程組,二元一次方程組,而讀過大學的,他可能直接用積分就給你解出來了;幾何題都做過對麼,幾何題難的是什麼?做輔助線啊!輔助線出來,人人都是華羅庚,還喜歡後面跟一句,我要是畫出來了,我也會做。

這是什麼?就是知識邊界啊。你所知道的星辰大海,只是別人的滄海一粟。所以專業知識必不可少。

2. 行業背景

接下來DS還需要有某個領域的行業背景,俗稱BK,background knowledge。你可能會奇怪為什麼還要這。

因為大資料分析都是針對行業來做的,那麼行業內的行話,套路,潛規則,生存法則都是不一樣的,你要對公司做預期分析,你就得對行業有一個基本認識,甚至深入瞭解。

我們以前的DS,貫穿各大實體行業,有保險的,醫療的,建築的,心理的,法律的等等。為什麼要招那麼多DS,就是因為每個DS都有自己擅長的幾個領域。一定的BK能夠幫助DS在面對資料的時候快速的作出資訊過濾,能夠在聊需求的時候,快速給出反饋。這才是價值。

3. 工具

到了第三塊,才是你們關心的python,為什麼把python放最後?因為python只是一個工具。對於開發者來說,python可能是你們的底,但對於DS來說,python只是一個交通工具。

以前用excel VB,後來用java,現在還有人在用R,不過更多的還是python。這就好比說,現在如果你想去某個地方,坐地鐵能到的,基本都坐地鐵,因為又快又方便。那沒有地鐵的時候呢?只能做公交。沒有公交的時候呢?就得騎自行車,或者走路。

所以DS從來不會關心程式碼執行效率,他們關心的是編碼效率。而python正好又是編碼效率極高的。

所以你要和我說你在外面培訓了4個月的大資料分析後,就想做DS了,那請你再考慮考慮。

四、DE職能要求

相對DS,DE就比較雜了,做的事情也多。就拿我來說,當時中國data team 就3個,2個DS,你說我是DE也可以,說我是打雜的也可以。因為DS只負責演算法輸出,而其餘的都是我來做。

你們想想,一個專案光有演算法能行嗎?誰去執行它,它要如何被外部呼叫?髒資料的清洗工作誰來做?還有很多很多的事情需要你考慮。

那我一個個來說,首先DE最重要的事情就是輔助DS清洗資料,我們叫data cleaning。因為很多時候從外部拿到的資料,無論是買來的,爬來的,還是已有的,都是原始資料,DS需要對這部分資料做一個預處理,否則很容易汙染樣本資料。那DE的工作,很重要的一部分就是去清洗資料。至於規則是你和DS討論的,沒有一個固定的模版。

其次,剛剛說到的資料來源,有一個是爬來的,所以你還得會爬蟲。關於爬蟲部分的內容我會另起一篇,給大家好好講講。當時我想做,但沒有做的一部分就是爬蟲,因為全美有很多公開資料是可以去獲取的,當時我想做的是分類,包括清洗、過濾、入庫、展示。沒來得及做。

如果你會爬蟲,DS就會很高興了,因為他們不用為沒有資料犯愁了,你要知道,對於DS來說,資料的數量和質量都是他們關心的東西。而老闆更是了,因為DS要資料,他就要花錢去買,如果你是DE你說你可以嘗試爬爬看,那老闆對你什麼看法?

那你如果還會做後端開發就更好了,我當然的主要經歷就放在了自動化建設上面。US那邊的老闆是沒有要求做,那我是本著提升生產效率去的,所以是自己給自己加戲了。最後的效果還不錯,讓我一個任務從一週到1-2分鐘,只需要改配置就可以了,當然這個過程是非常痛苦的,我們前前後後一起對需求,review程式碼。

然後服務端寫好了,我們還可以做前端展示,對於vendor來說,他們不關心資料怎麼來的,他們想看直接的東西,那不就是dashboard嗎?這塊我也沒做,只是開了個頭。

後來發現我們有一個20人的app團隊在做這個事情,我肯定沒有人家20個人做得好,但是起碼在他們交付前,我們data team也可以體現出價值來不是?否則只有等app team做完了,把我們的資料接入了,老闆在看的到。

所以我一直強調,價值是自我實現的,平臺給你的是機會,能做多大,都看你自己。前幾天還和一個讀者說這個事情,我說別和我扯公司規範,流程,在我看來都是藉口。

你做運維,一定要等測試程式碼過了給到你,才能釋出,那你為什麼不能把測試之後的步驟自動化?讓測試自己提交jira,然後打鉤子,做CI/CD?部署伺服器,和我說測試伺服器就要手搭,搭好了之後有一套指令碼會自動化部署其他服務,那為什麼不把建立伺服器也自動化?你又不是物理機,你是雲伺服器啊。

題外話了,我們收回來,所以對於DE來說,做的事情可以很多。那python就是我們的武器庫了,武器是爬蟲、資料清洗、後端、前端等等,要什麼拿什麼,就看你有多少了。而武器庫裡還可以加上kettle、tableau、informatica等等,這些只是附加項了。

這個,培訓機構4個月培訓一個武器,我是相信的。而他們鼓吹的大資料分析師,其實就是DE。不能說絕對,只能說大部分把,給自己留條路……

五、總結

好了,今天說了那麼多,希望能給正在大資料分析路上的你,吃一顆定心丸,該走的路一步不能少。

關注公眾號「Python專欄」,後臺回覆「騰訊架構資源1」,獲取由騰訊架構師整理的大資料學習全套資源包!

Python專欄二維碼

相關文章