图解:数据科学家、数据工程师和软件工程师之间的区别

国外 ETL 服务商 Stitch 的 CEO Jake Stein,近日对这个话题进行了总结。他还绘制了一张工具图,来呈现他们在日常工具使用上的不同。对于新手,也可以通过这张图来看典型的“数据科学家”、“数据工程师”和“软件工程师”都要掌握哪些工具。

Jake Stein:随着数据的爆炸式增长,对数据处理的专家技能需求也随之井喷。这带来的结果之一,是更精细的分工。对于数据管理工作的核心角色:数据科学家、数据工程师和软件工程师,过去几年见证了他们越来越清晰的定位。

对于新兴职位“数据工程师”,它算是“软件工程师”下面新浮现出的一个子类别。单列出该职位是一项英美近年来的趋势。但在许多公司,迁移、管理数据仍旧是软件工程师的活。

三种数据职位的不同技能需求

职能概括

软件工程师

软件工程师干的活儿是开发应用和系统。这过程中的每一个环节,从设计、写代码、测试到检查,开发者都要参与。生成数据的产品都是他们开发的。软件工程是三个角色中最古老的一个,并且有相当成熟的方法体系和工具库。

工作内容包括:

  • 前端、后端开发
  • 网页应用
  • 移动应用
  • 操作系统开发
  • 软件设计

数据工程师

数据工程师需要开发能对数据进行整合、存储和提取的系统,并从软件工程师开发的应用和系统中获取数据。数据工程的诞生,是作为软件工程大类下的一个更细分的技能类别。据雷锋网(公众号:雷锋网)了解,根据国外统计,40% 的数据工程师原本是软件工程师。雷锋网获知,这是目前一个很普遍的职业发展道路(软件工程师专注做数据工程)。

工作内容包括:

  • 高级数据结构
  • 分布式计算
  • 并发程序设计
  • 使用 Hadoop, Spark, Kafka, Hive 等新工具
  • 开发ETL/数据流水线(data pipelines)

数据科学家

数据科学家的职责是基于数据作分析。

或许有一只想要更好理解消费者行为的团队,仅仅做一个单次分析。也可能是开发一个机器学习算法,然后将之在软件工程师和数据工程师开发的代码基础上执行。

工作内容包括:

  • 数据建模
  • 机器学习
  • 算法
  • 商业智能的 dashboards

这些角色定位仍在进化之中。有些大公司从软件工程团队中拉出数据工程师,组建一支中央数据团队。这样,基础设施和数据分析工作能在一起。雷锋网获知,有些案例中,数据科学家既需要做数据分析,也需要做数据整合。

via datascience 101

编译:雷锋网

感谢支持199IT
我们致力为中国互联网研究和咨询及IT行业数据专业人员和决策者提供一个数据共享平台。

要继续访问我们的网站,只需关闭您的广告拦截器并刷新页面。
滚动到顶部