数据工程师都做哪些工作?带你了解我的一天

数据工程师都做哪些工作?带你了解我的一天

随着时间的推移,数据变得愈发重要,有些人甚至把它称为“新型汽油”。截至 2025 年,我们预计会在每天产生出 463 艾字节的数据。我们有分析师、数据科学家、机器学习以及情报分析(IA),但这些职位以及技术的好坏取决于他们接收的数据。

数据工程师的工作是让原始数据剥离源头,变成干净的数据,妥善保存、并进行分析。更准确地说,数据工程师构建的系统(有时称为管道)可以移动、转换、清理并聚合数据,帮助企业更快获取信息。如果你想了解更多数据分析相关内容,可以阅读以下这些文章:
DS/BA/MLE岗位2021北美薪资最全对比
Top20 硅谷大公司数据科学家不同级别薪资一览:Package最高的居然是这家?!
起薪一年9万5千刀,美国Entry Level薪资最高的工作竟然是
年薪百万的分析师都考量哪些Metrics?

数据工程师(Data Engineer)的工作日常

与大多数科技类职位一样,数据工程师的实际日常工作量大部分取决于所在公司规模。小公司需要更综合的专业人员,在这样的公司中,职位定义不太明确,你需要参与到各项工作中。而大公司的职员更多,可以分摊工作量,所以职位定义也会更加明确。

图源:Unsplash 摄影:Brooke Cagle

但有的时候并非完全如此,我曾在一些大公司工作过,公司要求团队在企业中表现得像一个初创公司。其他团队会帮我们,但几乎所有事情都必须自己做。

无论哪种情况,所有数据工程师都有一些共同点:

  • 查找符合业务需求的数据集
  • 开发算法,从而转换、清理和标准化数据
  • 构建、测试并维护数据库管道(ETL 和 ELT)
  • 与业务团队合作,了解公司目标
  • 验证数据
  • 确保数据符合治理和安全政策

在小公司中,你可能需要负责维护 BI 和其他数据可视化工具。甚至还可能担任数据分析师,并为企业提供分析结果。

为什么选择这份职业

如果你喜欢处理数据,其实其他职位的人气也非常高,例如数据科学家(Data Scientist)数据分析师(Data Analyst),但交付数据的责任也非常重要。事实上,数据工程师是目前科技行业收入最高的职位之一。

如果你有软件开发的背景,尤其是Python或Scala领域的知识,我认为数据工程师更适合你。事实上,我刚开始也是以数据工程师的职位进入该领域。之前,我大多数时候都是从事Python 开发人员的工作,所以最后也就非常自然地成为了数据工程师。

如何成为一名数据工程师

与其他技术领域一样,有相关学位会让事情变得简单一点,但这并不是先决条件。比如我,只要有相关经验,你也可以进入这个领域。

在这条职业道路上,有一些技能非常重要,而且会出现在职位描述和面试中。

  • 编码(Coding):编码是数据工程师日常工作的一部分,包鞋编写 SQL 脚本、ETL 管道、ELT 管道、Notebooks等,主要用到语言有 Python、R、Scala、SQL 和 Java。
  • 数据库(Databases):谁会想到与数据相关的工作需要数据库知识?但事实是,对于这部分知识,知道的越多越好,如果再给我一次机会,我会专注于学习 SQL 和 NoSQL 数据库。在学习第一个 SQL 数据库之后,其他数据库也就学起来很简单了。另一方面,NoSQL 存在很大差异,了解 MongoDB 对 Cassandra 没有帮助,但至少你需要知道其中一。
  • 管道(Pipelines):这部分会占用你大部分时间。你可以花时间了解有关 ETL 与 ELT 的文章,可以帮助你更好地了解这部分知识。
  • 大数据(Big Data):特别是如果你打算在更大的公司工作,那么对大数据的关键概念和技术有很好的理解是非常重要的。使用的技术差异很大,但 Hadoop 和它的 map reduce 是大多数技术的基础。
  • 云计算(Cloud Computing):现在,云计算无处不在。选择一个云提供商,AWS 是市场领先者,可以帮助你了解其提供的数据管理工具。如果你确定要使用哪种云计算,你甚至可以拿到证书,比如我有一个AWS Azure证的书。
  • 数据安全(Data Security):你不用成为数据安全方面的专家,但了解这方面知识非常重要。因为你需要管理对公司数据的访问,包括用户数据和其他商业机密。

证书真的有用吗?

这个话题一直饱受争议,如果你没有太多经验,证书确实可以帮助你证明你确实掌握了某些技能。常见的有 Associate Big Data Engineer、Cloudera Certified Professional Data Engineer、IBM Certified Data Engineer 或 Google Cloud Certified Professional Data Engineer。

其他注意事项

在大公司工作时,掌握 IT 方面的知识非常有用。每方面的知识都了解一些,不仅能让你成为一个更全面的专业人士,还能帮助你为其他团队创造价值。数据工程师的大部分工作内容都是为内部客户服务,因此了解其他人在做什么还是很有用的。

机器学习(ML)可以作为扩展知识领域的一部分。这个可以成为一个非常有利的工具,我相信机器学习将成为未来IT 工作的一部分,至少了解这方面的知识没有什么坏处。

另一个注意事项是,要在 Github 上有一个优秀的作品集,很多人都强烈推荐这一点。我没有 “优秀作品集”,但我的 LinkedIn 个人资料非常优秀。幸运的是,我的经历足以证明我的能力,从而帮助我获得面试。如果你没有该领域的经验,Github 可以代替你的证书,就像我一样。

结论

如果你对这方面的知识很感兴趣,那就试试从事该领域吧。数据工程师是 DevOps、软件开发和数据分析的交集,如果你不喜欢一成不变的东西,这个职位非常适合你。

与其他数据类职位一样,你需要和业务部门密切合作。如果你要探索业务需求,并了解数据,你需要非常了解公司业务及市场。

我喜欢我的工作,因为问题在不断变化。前一星期你还在苦苦钻研 Terraform,尝试配置 S3,下星期你就必须构建管道,展示你的 Python 实力。我喜欢和人合作,了解利益相关者的真正需求,这才是吸引我的地方。

通过这篇文章,希望你对数据工程师这个职位有了更深层次的了解。感谢你的阅读!你还可以订阅我们的YouTube频道,观看大量数据科学相关公开课:https://www.youtube.com/channel/UCa8NLpvi70mHVsW4J_x9OeQ;在LinkedIn上关注我们,扩展你的人际网络!https://www.linkedin.com/company/dataapplab/

原文作者:Pedro Henrique
翻译作者:Lia
美工编辑:过儿
校对审稿:Jiawei Tong
原文链接:https://faun.pub/what-is-a-data-engineer-and-what-i-do-all-day-1bcd22135ebb