大数据工程师的一天

我是智能取经人 2024-02-12 09:17:31
1. 大数据岗位模型

大数据科学是一门大学问,对应的也衍生出众多的岗位,下面就是大数据岗位模型

如上图,每个圆角矩形都代表一类岗位角色。

左侧开始从上至下分别是大数据运维工程师,大数据平台工程师,大数据平台架构。这其实就是运维部分,负责基础环境。众所周知大数据需要很多台机器进行分布式计算和分布式存储,我们在机器上面安装软件、部署软件、搭建集群,很多机器聚合在一起来处理数据。

大数据运维工程师和平台工程师再发展就是大数据平台架构师,说起“架构师”,往往是指更深更高级的岗位角色,但这三个岗位其实都是运维相关岗位,跟传统运维有很多相似之处,只不过维护的软件、维护的集群不太一样。

从 ETL 到实时计算再到用户画像,这部分其实是我刚才所说的处理流程当中的数据计算部分。ETL 工程师是从一个地方把数据加载出来,然后对它进行清洗,完成之后再把这些数据导到另外一个目的地——大多情况是数据仓库

数据加载到数据仓库当中,数仓工程师会在这个数仓之上统计各种指标。数仓工程师往上发展一步就是个数仓架构师,更高端一点。再往上可能走到 OLAP 工程师,对于这个级别,同样是进行指标统计,它的时效性要求却是更高的,需要你及时、快速地把数据统计出来。

再发展的话,其实就是实时计算工程师,也就是在进行计算的时候,需要让这计算结果快点出来,因为你很长时间才出来的结果,价值可能就不大。实时计算也可以往架构去发展。

在进行计算的时候,有可能会涉及到另外一个角色叫用户画像工程师。其实用户画像用途很广,比如电商网站凭借什么来给你推荐商品?因为它会给你画像。你会给 QQ 好友打标签一样,你给好友打上“闷骚”“潜力股”的标签,形容词越多,对这个人的描述就越真实准确。画像也是如此,用大量的数据建立用户标签模型。你的标签越多,我对你的喜好就把握得越清楚,我可以给推荐你喜欢的东西,你购买的可能性就会越来越高。所以用户画像工程师也需要有一定功力的。

画像完成之后就要给你推荐了,推荐的时候可能会选择一个算法应用,那这个过程又会产生两个角色:推荐系统工程师和算法应用工程师。

图中最右边还有两个岗位,一个是大数据的产品经理,另一个是大数据的负责人或总监。产品经理与其他行业的产品经理岗位性质一样,只是会具体到大数据方向。

2. 量身定制你的职业发展路线

在有了上述岗位模型的认识之后,你就可以量身定制自己职业发展路线了。

发展路线一:ETL工程师 数仓工程师 数仓架构师(OLAP工程师)

发展路线二:(基于一、四) 实时计算工程师

发展路线三:(基于二) 推荐系统工程师 算法应用工程师

发展路线四:大数据运维/平台工程师 —> 大数据平台架构师

发展路线五:大数据 PM

终极发展路线六:(基于三)大数据负责人/总监

关于发展路线四,如果你在做运维工程师,那么你可以选择先往这个方向发展,成为平台架构师。但是建议不要在这个位置停留太久,如果你打算更加偏向大数据,还是要往计算的方向去发展。

关于发展路线一,如果你在做 ETL 工程师,下一步紧接是做数仓。再往下你的发展路线,我还是建议实时方向。因为现在的环境中,实时才是王道。

关于发展路线二,实时计算工程师,你在发展的时候可以关注一下用户画像、推荐系统、算法应用,因为这三个岗位角色其实是和机器学习有了交叉,进一步延伸,你甚至可以往机器学习的方向发展。你应该也知道,AI(人工智能)比大数据难度更高,是我们大数据人才下一步的发展个方向。

关于发展路线五,是大数据 PM(产品经理),要求具备两种技能,第一你应该对大数据有所认识,第二你要有产品思维,所以这个岗位是两种技能的结合。

关于发展路线六,大数据负责人需要对整体流程都懂,所以他肯定是从基层成长上来的。

那么你可以根据上面的讲述,结合自己的具体情况来量身定制发展路线。

3. 大数据工程师的一天

下面以一个案例重现大数据工程师的一天。

在去年年底到今年上半年疫情严重的时候,很多人都在家远程办公。有一个大型集团公司下有数十万员工,因为疫情防控要求,要对这些员工进行信息采集。你需要通过调查问卷的方式,收集每个人的个人出行及健康情况,及时发现可能出现的问题并采取应对措施。

接下来看场景。

凌晨,Boss 们响应疫情防控政策,紧急开会讨论应对措施。

早上 6:00,你听见手机响了,发现是 PM 向你发出了数据需求,并收到了相关文档。

早上 6:30,你赶紧进行数据设计,包括采集什么信息项,比如每日体温、是否发烧等等。完成后,你要将数据设计发送给前端同事,让他们在小程序中加入你设计的信息项。公司人员可以通过小程序录入信息。

上午 9:00, 前端同事反馈数据采集完毕,但采集的数据乱七八糟,需要你迅速规范格式,也就是要进行数据清洗,包括进一步明确信息项,在后台清洗数据等。

上午 10:30,格式规范的数据被采集到大数据集群上。

上午 11:30,设计数据仓库模型,进行指标统计,比如多少同学有症状,有多少同学去过外地,有多少同学还没有返回老家等,你通过 SQL 进行多维度的统计,这是数据开发过程。

中午 12:30,数据统计完毕,你赶紧通知后端,做一个页面把数据展示出来,也就是数据可视化。

下午 2:30, 项目上线,老板说统计的指标太简单了,能不能增加一些统计,比如算一下每天都有多少人在隔离,每天解除隔离的有多少人。你知道要进行需求迭代了。

下午 3:00,PM 迭代出产品文档 2.0,重新走一遍上午流程。

晚上 7:00,开发同事说 2.0 版本开发完毕。

晚上 8:00, Boss 质疑 2.0 版本的数据有问题,拉了会议进行评审。你作为开发人员,要从各个维度对工作进行说明,还要说出数据结果的验证方法。这是数据质量评审。

晚上 23:00,开项目复盘会议,有人提出:疫情发展时刻都在变化,我们能不能实时看到数据的变化。

晚上 23:30,针对复盘会议中的问题,对技术方案进行改造,把离线计算改为实时计算。

凌晨 2:00, 改造完毕上线,你辛苦的一天终于结束了

0 阅读:0

我是智能取经人

简介:感谢大家的关注