前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >数据科学家VS数据工程师,真的是一山不容二虎?

数据科学家VS数据工程师,真的是一山不容二虎?

作者头像
CDA数据分析师
发布2018-02-26 13:19:59
6860
发布2018-02-26 13:19:59
举报
文章被收录于专栏:CDA数据分析师CDA数据分析师

原作者 Karlijn Willems

编译 CDA 编译团队

本文为 CDA 数据分析师原创作品,转载需授权

数据科学是一个蓬勃发展的产业,相关大数据的职业也成为热门,给人才发展带来带来了很多机会。数据科学家、数据工程师等已经成为大数据行业最热门的职位。今天让我们先来看一下这两种职业之间的区别,具体的工作,使用的语言、技能,发展前景等等问题。

职责

数据工程师的职责

数据工程师的职责主要是开发,构建,测试和维护架构,如数据库和大型处理系统。而数据科学家主要负责清洁,“按摩”和组织数据。

你会发现这里使用“按摩”这个动词的很奇特,这是因为这明显反映了数据工程师和数据科学家之间的差异。

一般来说,两者为获得可用的数据所付出的努力是截然不同的。

数据工程师处理包括人,机器或仪器错误的原始数据。数据可能未经验证并包含可疑记录;它是未格式化的,且包含系统特定的代码。

数据工程师需要采取措施提高数据的可靠性、效率和质量。为此,他们需要使用各种语言和工具来将系统结合在一起,或者尝试从其他系统获取新数据,从而这些系统特定的代码可以被数据科学家进一步处理。

与这两者密切相关的是,数据工程师需要确保,现有的架构支持数据科学家和利益相关者的业务需求。

最后,为了将数据提供给数据科学团队,数据工程团队将需要开发数据集过程,从而实现数据建模、挖掘和生产。

数据科学家的职责

数据科学家得到的数据通常已经过了第一轮的清理和操作。这些被处理过的数据可用被进一步运用于复杂的分析程序、机器学习和统计方法,从而预测和规范建模。当然,要构建模型,他们需要做研究行业和业务现状,他们需要利用来自内部和外部的大量数据来应答业务需求。有时这也涉及探索和检查数据以找到隐藏模式。

一旦数据科学家完成了分析,他们需要向相关业务人员提供一个清晰的方案。一旦方案通过时,他们需要确保此分析工作能够自动完成,以便能够向企业提供每日、每月甚至每年的数据。

很明显,双方都需要共同努力,争取数据并提供关键商务决策的见解。两者在技能上存在明显的重叠,但两者在行业中的区别日益明显:数据工程师需要与数据库系统,数据API和用于ETL的工具打交道,并将参与数据建模和设置数据库的解决方案。而数据科学家需要利用统计,数学和机器学习从而构建预测模型。

数据科学家需掌握分布式计算,因为他需要获取被数据工程师处理过的数据,同时数据科学家还需向企业沟通,这就意味着语言表达和数据可视化的技能也是必不可少的。

语言、工具和软件

当然,两者在技能的差异还体现在所使用的语言,工具和软件。

尽管两者使用的工具很大程度上取决于所处的公司环境,但通常数据工程师使用 SAP ,Oracle , Cassandra , MySQL , Redis , Riak , PostgreSQL , MongoDB , neo4j , Hive , Sqoop 等工具。

数据科学家则使用如 SPSS , R , Python , SAS , Stata 和 Julia 等语言来构建模型。当中最流行的毫无疑问是 Python 和 R 。 当你使用 Python 和 R 进行数据科学工作时,你通常会使用 ggplot2 等软件包,来实现数据可视化。同时还有如 Scikit-Learn , NumPy , Matplotlib , Statsmodels 等软件包都会派上用场。

在行业中,你还会发现, SAS 和 SPSS 很实用。但是使用其他工具,如 Tableau , Rapidminer , Matlab , Excel , Gephi 也将在数据科学家必不可少的技能。

可以再次清楚的看到,数据工程师和数据科学家之间关于数据可视化和语言表达能力的偏重,明显反映在使用工具的不同。

两者都使用的工具、语言和软件,包括 Scala , Java 和 C# 。

当然,这些语言不一定都受到数据科学家和工程师的欢迎:也有人认为 Scala 更受数据工程师的青睐,因为与 Spark 的集成十分利于在设置大型 ETL 。

对于 Java 语言来说也是一样:目前,它在数据科学家中间的流行度越来越高,但总的来说,它并没有被专业人士广泛使用。总之,你会看到这些语言突然出现在数据科学家与数据工程师招聘的技能要求中。同理试用与双方都需要使用的语言,如 Hadoop , Storm 和 Spark 等。

当然,双方在工具,语言和软件的区别需要具体看所处的工作环境。在某些特定情况下,数据科学和数据工程尝尝紧密相连,有时两者的区别特别小,有时两者甚至可以合并。

教育背景

数据科学家和数据工程师在教育背景上有一些共同点——计算机科学。这个专业对两者都是十分热门的选择。当然,你也会看到数据科学家经常研究计量经济学,数学,统计和运营研究。他们通常比数据工程师多一点商业头脑。同时你也经常看到数据工程师也拥有工程背景,而且他们计算机工程方面也受过一些超前教育。

然而,所有这一切并不意味着你不能找到同时具备操作知识和商业头脑的数据工程师。

一般来说,数据科学行业是由来自不同类型背景的专业人员组成的:物理学家,生物学家或气象学家从事数据科学工作也并不罕见。同时有些从事 Web 开发,数据库管理等职业的人才也已经转行从事数据科学工作。

工资与招聘

在薪酬方面,数据科学家的中等薪资水平为每年 135,000 美元。最低为 43,000 美元,最高为 364,000 美元。对于数据工程师来说,稍微有点低:他们的平均收入是 124,000 美元,他们的最低和最高工资也相对较低:最低为 34,000 美元,最高为 341,000 美元。

为何会造成这样的薪酬差异原因不明,但是这可能与市场需求的职位数量有关:根据 Indeed.com 的数据,市场招聘需求中约有 8 万 5 千个数据工程师的工作岗位,而约有 11 万个数据科学家的工作岗位。

目前招聘数据工程师的公司是 PlayStation , The New York Times , Bloomberg 和 Verizon ,但在过去, Spotify , Facebook 和亚马逊等公司都聘用了数据工程师。另一方面,需要数据科学家的公司有 Dropbox ,微软,德勤和沃尔玛等。

工作前景

如上所述,数据科学相关不同职业的产生需要反映不断变化的需求。

除了对数据管理问题的兴趣增加之外,公司正在寻找更便宜,灵活和可扩展的解决方案来存储和管理他们的数据。他们想将其数据移动到云中,为此,他们需要构建“数据湖”来代替已经存在的数据仓或作为操作数据存储( ODS )的替代。

数据流在未来几年内将被重定向和替换,因此,数据工程师的雇用数量逐年增加。

数据科学家一直以来都被大力追捧,但如今,公司正在构建其数据科学家的团队,而不是雇用具有沟通技巧、创造力、聪明、好奇心、技术专长等的独角兽数据科学家。对与企业来说,很难找到具有以上所有特质的人才,而且对这类人才明显供不应求。

市场对与数据科学方面人才的热情依旧不变。根据 McKinsey 的数据,在 2018 年,美国可能面临 14 万到 19 万具有深度分析技能的人才缺口,以及 150 万能使用专业知识进行大数据分析并做出有效决定的经理和分析师。

Ref:

https://www.datacamp.com/community/blog/data-scientist-vs-data-engineer#gs.QKyo8lQ

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2017-03-12,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 CDA数据分析师 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 职责
  • 语言、工具和软件
  • 教育背景
  • 工资与招聘
  • 工作前景
相关产品与服务
大数据
全栈大数据产品,面向海量数据场景,帮助您 “智理无数,心中有数”!
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档