iLMS知識社群ePortfolioeeClass學習平台空大首頁登入
位置: 吳俊逸 > AI
一張圖看懂數據科學家、數據工程師和軟體工程師之間的區別
by 吳俊逸 2017-05-04 14:57:32, 回應(0), 人氣(9797)

大家都知道,這三種角色各有不同定位,也知道他們之間有許多一致的地方,但是否能講明白這其中的區別呢?

國外 ETL 服務商 Stitch 的 CEO Jake Stein,近日對這個話題進行了總結。他還繪製了一張工具圖,來呈現他們在日常工具使用上的不同。對於新手,也可以通過這張圖來看典型的「數據科學家」、「數據工程師」和「軟體工程師」都要掌握哪些工具。

Jake Stein:隨著數據的爆炸式增長,對數據處理的專家技能需求也隨之井噴。這帶來的結果之一,是更精細的分工。對於數據管理工作的核心角色:數據科學家、數據工程師和軟體工程師,過去幾年見證了他們越來越清晰的定位。

對於新興職位「數據工程師」,它算是「軟體工程師」下面新浮現出的一個子類別。單列出該職位是一項英美近年來的趨勢。但在許多公司,遷移、管理數據仍舊是軟體工程師的活。


三種數據職位的不同技能需求

職能概括

軟體工程師

軟體工程師乾的活兒是開發應用和系統。這過程中的每一個環節,從設計、寫代碼、測試到檢查,開發者都要參與。生成數據的產品都是他們開發的。軟體工程是三個角色中最古老的一個,並且有相當成熟的方法體系和工具庫。

工作內容包括:

  • 前端、後端開發

  • 網頁應用

  • 移動應用

  • 作業系統開發

  • 軟體設計

數據工程師

數據工程師需要開發能對數據進行整合、存儲和提取的系統,並從軟體工程師開發的應用和系統中獲取數據。數據工程的誕生,是作為軟體工程大類下的一個更細分的技能類別。據雷鋒網()了解,根據國外統計,40% 的數據工程師原本是軟體工程師。雷鋒網獲知,這是目前一個很普遍的職業發展道路(軟體工程師專注做數據工程)。

工作內容包括:

  • 高級數據結構

  • 分布式計算

  • 並發程序設計

  • 使用 Hadoop, Spark, Kafka, Hive 等新工具

  • 開發ETL/數據流水線(data pipelines)


數據科學家

數據科學家的職責是基於數據作分析。

或許有一隻想要更好理解消費者行為的團隊,僅僅做一個單次分析。也可能是開發一個機器學習算法,然後將之在軟體工程師和數據工程師開發的代碼基礎上執行。

工作內容包括:

  • 數據建模

  • 機器學習

  • 算法

  • 商業智能的 dashboards

這些角色定位仍在進化之中。有些大公司從軟體工程團隊中拉出數據工程師,組建一支中央數據團隊。這樣,基礎設施和數據分析工作能在一起。雷鋒網獲知,有些案例中,數據科學家既需要做數據分析,也需要做數據整合。


原文網址:https://read01.com/g8mQoO.html


附件: