查看: 49914| 回复: 93
跳转到指定楼层
上一主题 下一主题
收起左侧

Data Engineer介绍帖及找实习分享

   
全局:

注册一亩三分地论坛,查看更多干货!

您需要 登录 才可以下载或查看附件。没有帐号?注册账号

x
看到地里关于Data Engineer的帖子很少,想分享给大家在国内工作+来美找实习的一些经历,可以供大家参考一下。

先介绍下楼主背景:
港本某技校测绘系本科,由于实在不想去工地干活,决定转Data Science,后来阴差阳错去到阿里做data analyst,后来慢慢转成data engineer,阿里的数据研发体系是我见过国内最好的,各种工具化的产品让工作效率有了极大提高。工作两年之后来Rice读MCSE。最近拿到了某不大不小公司的DE intern offer。
这里再给大家安利下Rice的MCSE项目,超级棒的项目,选课很自由,找工不比MCS差。

再来介绍下Data Engineer这个职位:
Data Engineer在国内一般叫(大)数据(研发)工程师,薪资比算法稍低一些,和后端开发、Java开发相当。主要的工作内容包括:
1. 整合、清洗公司各个业务系统产生的数据,给下游提供可靠的、高质量的数据源,用来做分析、建模、机器学习等等
2. 设计、搭建、实现公司的指标体系,美国这边叫metric,比如常见的DAU、MAU、年GMV等等
3. 搭建并维护公司的各种计算集群
4. 部分数据工程师也会负责机器学习、数据挖掘之类的工作. ----

举个栗子,假设淘宝的老大想要看每个商品类目下的DAU,我们的日志系统收集会来的是一堆很杂乱的文本日志数据,通常是JSON格式,没法直接做SQL查询(或者老大完全不会写SQL),于是这个时候就轮到DE小哥哥出马了,DE小哥哥会先想办法把日志弄到集群上,之后写Spark或者MapReduce任务把JSON数据结构化,解析成数据库表一样的结构,再按照类目对每天的访问数据进行聚合,最后把结果用图表展示给老大看。
在日常工作里,DS通常是DE的下游,DS和DE会一起讨论公司的数据体系怎么搭建,DE把数据弄好后DS直接用就好了,节省了大量数据处理的时间。当然工作也会有重合的部分,有些公司DS会自己处理数据,有些公司DS会自己处理数据,有些公司DE也会建模和做ML。

Data Engineer需要的技术栈主要包括:.
1. 各种大数据框架,例如Hadoop、Spark、Kafka、HBase、Hive等等,data engineer的工作主要是靠这些框架,通过在写好的框架上
2. 各种relational database和NoSQL以及一些原理,SQL是data engineer的安身立命之本,想找data engineer一定要把sql刷的滚瓜烂熟
3. Datawarehousing & Data Modelling,如何合理地把公司业务抽象成一张张的数据表,并存储到data warehouse中
. 1point 3 acres4. ML & Data Ming
5. 最好懂一些分布式技术、操作系统、以及大数据框架的机制和原理,这条在美国不是必须,但是回国找实习是必要的
. ----
另外,DE还有一项重要能力就是业务的理解力,如何根据公司的业务和需求来搭建数据和指标体系,这一点在advanced career里尤其重要。
再来说说美帝找实习的情况:
美帝的大厂大部分都是General Hire,先进去再分组,像ALG等等。会有一些公司单独开DE这个职位,楼主知道的开的大中型公司有:Facebook、Oath、Spotify、Zillow、Visa、Riot等等,数量上比SDE少很多。还有就是很多非tech公司也会开DE的实习职位,像Disney、Allstate、HoneyWells等等,但是有个很蛋疼的问题是可能这些公司不招外国人,楼主的简历投出去就收到简历拒….
所以个人感觉找实习还是要以tech公司为主。总的来说,楼主投+推的Data Engineer大概有40-50家。那些非tech公司因为没什么同胞所以找refer很难,只能自己投。
关于refer和自己投,能找到refer的一定要找refer!!!楼主投的40-50家里,拿面试的全都是refer的….
关于准备面试,General Hire的公司DE和SDE没区别,都是算法题。单独开的DE的职位会面试算法题+SQL,算法一般比SDE简单,LeetCode Medium和Easy为主。SQL的话LeetCode上那40多道题一定要刷的滚瓜烂熟,切记切记。有些小公司会问简历上的大数据项目,包括用了什么框架,XXX问题是怎么处理的等等。楼主上次面试因为有工作经历的原因被问了很多很难的简历问题。这一部分也要好好准备一下。

最后给大家一点转Data Engineer的经验:
DE比起SDE来说,技术栈要求浅,基本上学学Spark和会写SQL就能满足要求。但是要补充项目经验比较难,网上很少有很棒的可以跟着做的大数据项目,所以会导致简历比较空洞。还有就是DE的坑位相对SDE要少,同胞也比较少。
总之大家在转DE之前要考虑清楚,权衡下利弊。如果有想转的同学也可以找楼主聊下。
附:
楼主今年投的intern list。

看在楼楼这么辛苦打字的份上,大家给加点米吧,感谢!!!

DE_Company_List.xlsx

9.47 KB, 下载次数: 263, 下载积分: 大米 -1 颗

评分

参与人数 82大米 +270 收起 理由
Kevin9876 + 1 很有用的信息!
loveFISHly + 2 很有用的信息!
EkoZhong + 2 给你点个赞!
Helen张璐维 + 1 很有用的信息!
wangcongming + 1 很有用的信息!

查看全部评分


上一篇:有朋友报名一起上数据学院一月份的DS bootcamp吗
下一篇:stats小硕硬刚data还是开始转码

本帖被以下淘专辑推荐:

  • · DS|主题: 224, 订阅: 39
  • · JOB|主题: 269, 订阅: 12
推荐
 楼主| 胡椒牛柳 2018-12-24 03:11:56 | 只看该作者
全局:
很感恩在美帝这半年遇到了很多很Nice的同学和前辈。实习的mentor在申请ddl前一晚特意提醒我不要忘了交网申,FB的老哥在我面fail了之后还跟HR问了问我的情况帮我想办法,Indeed老哥看到refer之后没response主动帮我去refer别的职位,还有学长mock面试中的谆谆教诲。感谢这半年遇到的每一个人!

评分

参与人数 3大米 +3 收起 理由
xxz190008 + 1 赞一个
iamJianc + 1 给你点个赞!
阿何响当当 + 1 赞一个

查看全部评分

回复

使用道具 举报

推荐
 楼主| 胡椒牛柳 2018-12-31 07:53:19 | 只看该作者
全局:
wzx5201314 发表于 2018-12-31 02:51
简言之de主要是洗数据,sde主要是业务逻辑,算法主要是调参,开个玩笑

总结很到位,笑cry

评分

参与人数 1大米 +1 收起 理由
iamJianc + 1 很有用的信息!

查看全部评分

回复

使用道具 举报

推荐
 楼主| 胡椒牛柳 2020-9-10 04:19:12 来自APP | 只看该作者
全局:
lzy315754058 发表于 2020-09-08 22:51:20
感谢楼主分享。 请问一下,DE2021的intern需要具备哪些技能之后投比较好啊?
Must: SQL, 编程语言
Preferred: 大数据框架spark、hadoop等等,任务调度Airflow、luigi等等,数据湖框架delta、iceberg等等
了解这些应该就差不多了
回复

使用道具 举报

全局:
请问lz感觉de的工作内容跟swe比起来怎么样呢?我暑假也找到了一个de的实习,但总感觉de永远都是在做pipeline一类的东西,不是很好玩啊
回复

使用道具 举报

🔗
cynth 2018-12-24 05:32:12 | 只看该作者
全局:
感谢楼主分享,请问楼主对DE回国发展的前景有什么见解?
回复

使用道具 举报

🔗
 楼主| 胡椒牛柳 2018-12-24 08:47:39 | 只看该作者
全局:
cynth 发表于 2018-12-24 05:32
感谢楼主分享,请问楼主对DE回国发展的前景有什么见解?

从现在的情况来看,DE在国内的就业前景是很好的,国内互联网目前的方向是产业升级,用技术辅助产业找到新的利润增长点,国内BAT都有在这方面乏力。数据是里面很重要的一部分,所以我觉得机会还是很好的

评分

参与人数 1大米 +1 收起 理由
iamJianc + 1 给你点个赞!

查看全部评分

回复

使用道具 举报

🔗
 楼主| 胡椒牛柳 2018-12-24 08:48:38 | 只看该作者
全局:
zhanym0981 发表于 2018-12-24 04:24
请问lz感觉de的工作内容跟swe比起来怎么样呢?我暑假也找到了一个de的实习,但总感觉de永远都是在做pipelin ...

pipelining是一部分,或者说大部分。
个人感觉pipeline很好玩,一堆很乱的数据整理成工整的样子很有成就感。

评分

参与人数 1大米 +1 收起 理由
iamJianc + 1 很有用的信息!

查看全部评分

回复

使用道具 举报

全局:
胡椒牛柳 发表于 2018/12/24 08:48:38.

. 1point3acres
pipelining是一部分,或者说大部分。
个人感觉pipeline很好玩,一堆很乱的数据整理成工整的样子很有成就感。

谢谢lz解答!那请问平常工作中有多少机会使用上分布式系统的知识呢?除了像用spark或hadoop一类的分布式框架,接触分布式系统设计的机会多吗?
回复

使用道具 举报

🔗
 楼主| 胡椒牛柳 2018-12-24 13:16:48 | 只看该作者
全局:
zhanym0981 发表于 2018-12-24 10:54
谢谢lz解答!那请问平常工作中有多少机会使用上分布式系统的知识呢?除了像用spark或hadoop一类的分布式 ...

做infra的公司,尤其是大厂,很有可能DE会参与到infra的开发中,比如在阿里的时候就听说有些DE参加了ODPS(类似AWS EMR)的开发。

评分

参与人数 2大米 +4 收起 理由
iamJianc + 1 很有用的信息!
zhanym0981 + 3 很有用的信息!

查看全部评分

回复

使用道具 举报

🔗
Xiavi 2018-12-25 02:02:30 | 只看该作者
全局:
感谢楼主分享!能否请教下楼主的学习材料?
我的问题是,Spark, Kafka, Cassandra, SQL这种Tools单独使用时是ok的,但碰到“串接”在一起的问题就无法应付...好比资料从AWS S3跑到Kafka、然后用Spark Streaming、postgre SQL、Flask,这中间不知道该怎么把各种工具连接起来,能否请教楼主如何学习这部分的知识?. From 1point 3acres bbs
感谢感谢!
回复

使用道具 举报

🔗
 楼主| 胡椒牛柳 2018-12-25 06:30:51 | 只看该作者
全局:
Xiavi 发表于 2018-12-25 02:02
感谢楼主分享!能否请教下楼主的学习材料?
我的问题是,Spark, Kafka, Cassandra, SQL这种Tools单独使用 ...

Kafka我也没找到好方法可以像生产环境那样产生消息队列。
Spark本身可以访问HDFS,HDFS与关系型数据库交互的话有个工具叫Sqoop,可以进行数据同步。数据进入到关系型数据库之后在Flask里用对应数据库的API调用就行。

评分

参与人数 2大米 +4 收起 理由
iamJianc + 1 很有用的信息!
Xiavi + 3 很有用的信息!

查看全部评分

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册账号
隐私提醒:
  • ☑ 禁止发布广告,拉群,贴个人联系方式:找人请去🔗同学同事飞友,拉群请去🔗拉群结伴,广告请去🔗跳蚤市场,和 🔗租房广告|找室友
  • ☑ 论坛内容在发帖 30 分钟内可以编辑,过后则不能删帖。为防止被骚扰甚至人肉,不要公开留微信等联系方式,如有需求请以论坛私信方式发送。
  • ☑ 干货版块可免费使用 🔗超级匿名:面经(美国面经、中国面经、数科面经、PM面经),抖包袱(美国、中国)和录取汇报、定位选校版
  • ☑ 查阅全站 🔗各种匿名方法

本版积分规则

>
快速回复 返回顶部 返回列表