HarmonyOS开发者限时福利来啦!最高10w+现金激励等你拿~ 了解详情
写点什么

数据科学家和数据工程师之间到底有什么差别?

  • 2019-04-26
  • 本文字数:1791 字

    阅读完需:约 6 分钟

数据科学家和数据工程师之间到底有什么差别?

我们最近在Reddit上做了 AMA。人们提出的最常见问题是数据科学家和数据工程师之间到底有什么差别。因此,有关这一问题,我们会在这篇文章中深入讨论。



有很多数据专家的岗位,听起来差不多,用的工具也差不多,很难搞清楚到底每个岗位需要做什么工作。另外,规模比较小的公司可能只能招聘有限几个的数据工程师或数据科学家。这意味着在很多情况下,特定的任务和目标可能都需要一个人完成。


这使得很难区分这两种角色。因此,我们会从不同的目标、思维方式、工具和所需的背景来讨论数据工程师和数据科学家的差异。


在讨论之前,我想简单地加一段导语。事实上,许多数据科学家和数据工程师都会执行其他技术性角色的任务。数据科学家可能需要开发ETL,数据工程师可能需要开发 API 和前端。因此,我们以下指出的区别只是为了阐明技术差别在哪里。


目标

数据工程师的目标更关注于任务和开发。数据工程师构建自动化系统和建模数据结构,帮助数据得到有效处理。这代表着数据工程师的目标是创建并开发表和数据管道,以支持用于分析的仪表盘和其他的数据用户(如数据科学家、分析师和其他工程师)。他们的工作和大多数的工程师很类似,要进行大量的设计、假设、约束和开发才能完成最终的任务。每个设计和解决方案也都会有自己的约束,即使它们都可以执行最终的任务。


相对而言,数据科学家更加以问题为中心。就这点而言,他们需要寻找降低成本、增加利润、提升用户体验或业务效率的方法。这代表着他们要先提出问题,然后自己解决问题(提出问题、做出假设、得到结论)。因此他们需要提出这样的问题:什么会影响患者再次入院?如果增加一个类似的A/B测试,客户是否愿意买单?有更快的路线来运送包裹吗?跳过剩余的过程步骤。这里的目标就是找到提出的问题的答案。它可能是最终的结论,也可能会引出更多的问题。在这个过程中,数据科学家需要分析、收集支持信息、得出问题的结论。

工具

这个部分就更加让人感到困惑了。数据科学家和数据工程师都需要依赖于 Python 和 SQL。然而,两个岗位的人使用这些技术的方式是不同的。同样,这也和思维方式的不同息息相关。Python 是非常健壮的语言,它拥有强大的类库来帮助管理操作性任务和分析性任务。


数据科学家会使用 Pandas 和 Scikit Learn 这样的语言,而数据工程师会使用 Python 来管理管道。在这里AirflowLuigi这样的类库就能派上用处。


如上所说,数据科学家的查询将重点关注于问题。但是数据工程师的查询会更关注于数据的清理和转换。


可能这两类数据专家都会使用一些其他的工具,包括TableauJupyter笔记本以及其他工具等。但他们的用法会有所不同。

背景

当讨论数据工程师和数据科学家之间的差别时,另外一个常见的问题是需要什么样的背景。


数据工程师和数据科学家都需要了解数据和编程。即使涉猎不必太广。然而,除了编程之外还有一些差别,特别是对于数据科学家来说。由于数据科学家更像是研究员,如果有基于研究的背景会是加分点。


这可以是在经济学、心理学、流行病学等领域的研究背景。数据科学家可以使用 SQL、Python,具有良好的商业意识,还能将其与自身的研究背景结合起来。这些都不能用级别来衡量。事实上,数据科学家在各个领域都有所涉及。大多数雇主更希望招聘至少硕士学历、具备某些技术或数学研究背景的数据科学家。


而数据工程师就不一定需要硕士学位。数据工程师更像是一个开发人员。比起理论知识,他们需要更多的实践经验。因此,拥有硕士学位并不能说明这一点。

举个例子

比如一家医疗保健公司的主管想知道如何减少初次就诊后 30 天内再入院的患者数量。从数据的角度来看,需要完成一系列工作。


数据科学家需要了解是什么导致了这些患者再入院。这是他们需要回答的问题。根据他们得出的结论,他们会和医院合作,制定指标和政策,帮助改善患者再入院比例。


数据工程师会创建表格,帮助支持数据科学家找到问题的答案,与此同时,他们还要创建分析表,帮助追踪过去和未来的患者再入院指标。这些指标的创建会根据数据科学家得到的答案而改变。


数据科学家和数据工程师有很多的区别。他们有不同的目标、背景,但这就是两者一起合作的价值所在。事实上,数据工程师更关注于构建健壮的系统,这也能方便数据科学家轻松地查询数据,并有效地分析数据。这样的合作就能在数据方面给公司创造价值。


我们希望这篇文章能给你提供帮助!


查看英文原文What Is The Difference Between A Data Engineer And A Data Scientist


2019-04-26 07:005248

评论

发布
暂无评论
发现更多内容

一次TDD(Test Driven Development)尝试感受

Bruce Talk

技术 敏捷 TDD Agile

架构实战营 模块八

架构实战营 「架构实战营」 模块八

卫星商业价值的尽头,谁来善后?

脑极体

模块八

撿破爛ぃ

架构训练营

什么是开源的「第一性原理」?

腾源会

开源 腾源会

人人皆可虚拟,直播还能这么玩?声网推出 MetaLive 元直播解决方案

声网

人工智能 音视频

hive性能调优实战-读书笔记

聚变

hive Hive SQL

基于STM32+ESP8266+华为云IoT设计的健康管理系统

DS小龙哥

2月月更

XSS练习小游戏和答案参考

喀拉峻

网络安全

Go 语言入门很简单:Go 反射

宇宙之一粟

一文入门rollup!13组demo带你轻松驾驭

摸鱼的春哥

前端 vite Rollup webpack 构建

架构实战营第 4 期 -- 模块八作业

烈火干柴烛灭田边残月

架构实战营

【安全漏洞】深入剖析CVE-2021-40444-Cabless利用链

H

2022 ARTS|Week 08

MiracleWong

算法 写作 ARTS 打卡计划

[架构实战营]模块八 消息队列Mysql表格设计

Vincent

「架构实战营」

作业8

施正威

简谈什么是 Web 3.0

devpoint

元宇宙 Web3.0 2月月更

Java线程池进阶

木小风

Java 线程池

模块八-设计消息队列存储消息数据 作业

novoer

「架构实战营」

Go 语言入门很简单:Go 如何面向对象

宇宙之一粟

面向对象 Go 语言 2月月更

极速生成缩略图,Serverless 支撑赛事转播锁定冬奥亮点

阿里巴巴云原生

阿里云 Serverless 云原生 冬奥会 函数计算FC

Thinkphp最新版本漏洞分析

网络安全学海

网络安全 信息安全 渗透测试 WEB安全 安全漏洞

迭代器总结

编程三昧

JavaScript 前端 迭代器 2月月更

01-《生活中的心理学》读书笔记

清凌渡

读书笔记 心理学

【Python】面试官:元组列表都分不清,回去等通知pa

謓泽

Python 元组 2月月更

一个简单的方法排列任务优先级

Bruce Talk

Vue3 过10种组件通讯方式

德育处主任

Vue 3 vuex 组件通信 Pinia mitt.js

设计消息队列存储消息数据的 MySQL 表格

AUV

「架构实战营」

2022年第8周-面试二三事

李印

面试 周报

工作想法小计(3):2/21 - 2/25

非晓为骁

个人成长 工作

Lyft微服务研发效能提升实践 | 3. 利用覆盖机制在预发环境中扩展服务网格

俞凡

研发效能 大厂实践 2月月更 lyft

数据科学家和数据工程师之间到底有什么差别?_技术管理_Ben Rogojan_InfoQ精选文章