Data Scientist, Applied Scientist和MLE的面试准备心得

b
bigbright
楼主 (北美华人网)
1. 前记 在历时半年、投了上千份简历的求职历程结束后,我总结了一下自己的心得和经验(参见)。当时的职位目标主要是Data Scientist(DS), Applied Scientist(AS)和Machine Learning Engineer(MLE)。在准备和面试的过程中,我发现很多公司对这三种职位的要求大方向是类似的,但是各有侧重。现在我们就聊聊其中的异同以及针对这三种职位所考察的知识点应该如何准备面试。
2. DS, AS和MLE的区别 每个公司对这个三个类别的职位定义不同,有的公司就是把DS就是当AS和MLE用,有的是分工明确,我们这里要聊的区别是根据那些分工明确的公司标准来说的。 DS: 以数据分析和机器学习或统计模型开发为主,对编程有一定要求但是不高,模型开发完一般交由软件工程师团队转化为实际的产品。 MLE: 以机器学习架构(MLOps)为主,需要熟悉机器学习从开发到上线的整个过程,更多是机器学习系统的架构,对编程要求最高。 AS: 可以认为是DS和MLE各50%,既要会机器学习模型开发,又要懂得如何将开发好的模型放到生产线上,对编程要求较高。 简单来说就是DS负责模型开发,但不负责模型上线,MLE负责模型上线,但不负责模型开发,AS是两者都干。当然,根据公司的不同,这些职责在大多数情况下是有重合的。
3. DS, AS和MLE的面试知识点准备 这三类职位的所需要的技能基本包括概率统计、机器学习和编程三大类,不同的职位对这三种技能的侧重有所不同。 DS: 概率统计>=机器学习>编程 MLE: 编程>机器学习>概率统计 AS: 机器学习>=编程>概率统计 三个职位所考察的知识点也各有侧重,我们用三个级别来代表对应知识点的重要性(3代表最重),其重要性如下: 概率统计(DS-3, MLE-1, AS-2): 基本知识: 贝叶斯公式、常见统计分布、基本概率计算、大数定律、中心极限定律 模型相关: 统计假设检验、实验设计、模型准确性评估、参数估计 机器学习: 基础知识(DS-3, MLE-3, AS-3): overfitting, undefitting, regularization, gradient descent, cross-validation以及常用的模型评价方法。 常用库(DS-2, AS-3, MLE-3): scikit-learn, xgboost, tensorflow, pytorch 基础机器学习模型(DS-3, MLE-3, AS-3): linear models, Lasso, Ridge, Random Forest, Gradient Boosting Trees, Neural Networks。 深度学习模型(DS-1, MLE-2, AS-3): CNN相关模型, RNN相关模型, GAN, Transformers, Encoder-decoders,以及其他经典的深度学习模型。 MLOps(DS-1, MLE-3, AS-2): 常用框架和库比如 AirFlow, MLFlow, ONNX等 编程: 常用数据结构和算法(DS-1, MLE-3, AS-3): 查找、排序、递归、动态规划、堆、栈、列表以及相应的时间和空间复杂度。 SQL及数据库(DS-1, MLE-2, AS-2): 基本的SQL用法,数据库的基础知识, Spark相关知识。 Leetcode: DS-easy, MLE-medium/hard, AS-medium。 系统设计(DS-1, MLE-3, AS-2): 机器学习系统的设计、架构等等。
4. 不同类型公司对于求职者背景的要求 DS, AS和MLE都是这几年新兴的职位,除了CS和统计这种相对对口的专业之外,很多公司也开始接受有其他专业背景的求职者。不同类型的公司对待“转专业”的人的友好程度也是不一样的,我个人的经验是越大的公司包容性越强也越看重个人的能力也越愿意花时间培训新人,越小的公司越要求专业对口越希望新人来了就能出东西。以下是我面过20多家公司后的总结 :(更多内容请参见https://measurespace.netlify.app/cn_posts/ds_as_mle_interview_requirement/)
j
jiandanshenghuo
mark mark,多谢楼主分享干货
n
nottinghillivy
谢谢分享,总结得真好
v
veralee1986
mark yixia
护肤没有
markmark
s
syqingyu
mark
b
bayiba
好贴,谢谢分享😀
h
hannah04
mark mark
b
bigbright
谢谢分享,总结得真好
nottinghillivy 发表于 2021-02-14 21:33

谢谢,希望对大家都有用!
b
bipoppy
谢谢lz,投了上千份简历,那说明相关职位很多啊
C
Clairemom
谢谢楼主分享!
c
caling
Mark Mark! 多谢楼主分享!
m
miss_cheerful
mark mark mark
L
LQLOVENK
谢谢分享
d
driftyy
mark~~~~~~~~~
c
commander
谢谢楼主真诚分享,天道酬勤一点不假
e
emmay
mark mark 谢谢
s
seashoregirl
谢谢分享!
h
hrwhy
mark mark , lz 好人
橙色天空
mark
A
AzureOcean
thank you so much for sharing!
s
sunshine35
赞! 楼主真的用心准备了!
w
williamzwly
Mark mark
s
supermuyes
恭喜恭喜, 很用心的总结, 多谢!
y
yyx.xxy.2005
mark
y
yaya_yiyi
Mark!
n
nface
好贴
8
8楼半的花城
感谢楼主的总结!最近也在找这几种岗位,看了总结,感觉自己的刷题和深度学习还需要加强。请问楼主系统设计方面是怎么准备的呢?谢谢!
h
happyvs
mark...谢谢。
t
theonlypanda
谢谢lz,投了上千份简历,那说明相关职位很多啊
bipoppy 发表于 2021-02-14 23:24

赞赞
d
danhuang7
感謝
s
summerwharf
1. 前记 在历时半年、投了上千份简历的求职历程结束后,我总结了一下自己的心得和经验(参见)。当时的职位目标主要是Data Scientist(DS), Applied Scientist(AS)和Machine Learning Engineer(MLE)。在准备和面试的过程中,我发现很多公司对这三种职位的要求大方向是类似的,但是各有侧重。现在我们就聊聊其中的异同以及针对这三种职位所考察的知识点应该如何准备面试。
2. DS, AS和MLE的区别 每个公司对这个三个类别的职位定义不同,有的公司就是把DS就是当AS和MLE用,有的是分工明确,我们这里要聊的区别是根据那些分工明确的公司标准来说的。 DS: 以数据分析和机器学习或统计模型开发为主,对编程有一定要求但是不高,模型开发完一般交由软件工程师团队转化为实际的产品。 MLE: 以机器学习架构(MLOps)为主,需要熟悉机器学习从开发到上线的整个过程,更多是机器学习系统的架构,对编程要求最高。 AS: 可以认为是DS和MLE各50%,既要会机器学习模型开发,又要懂得如何将开发好的模型放到生产线上,对编程要求较高。 简单来说就是DS负责模型开发,但不负责模型上线,MLE负责模型上线,但不负责模型开发,AS是两者都干。当然,根据公司的不同,这些职责在大多数情况下是有重合的。
3. DS, AS和MLE的面试知识点准备 这三类职位的所需要的技能基本包括概率统计、机器学习和编程三大类,不同的职位对这三种技能的侧重有所不同。 DS: 概率统计>=机器学习>编程 MLE: 编程>机器学习>概率统计 AS: 机器学习>=编程>概率统计 三个职位所考察的知识点也各有侧重,我们用三个级别来代表对应知识点的重要性(3代表最重),其重要性如下: 概率统计(DS-3, MLE-1, AS-2): 基本知识: 贝叶斯公式、常见统计分布、基本概率计算、大数定律、中心极限定律 模型相关: 统计假设检验、实验设计、模型准确性评估、参数估计 机器学习: 基础知识(DS-3, MLE-3, AS-3): overfitting, undefitting, regularization, gradient descent, cross-validation以及常用的模型评价方法。 常用库(DS-2, AS-3, MLE-3): scikit-learn, xgboost, tensorflow, pytorch 基础机器学习模型(DS-3, MLE-3, AS-3): linear models, Lasso, Ridge, Random Forest, Gradient Boosting Trees, Neural Networks。 深度学习模型(DS-1, MLE-2, AS-3): CNN相关模型, RNN相关模型, GAN, Transformers, Encoder-decoders,以及其他经典的深度学习模型。 MLOps(DS-1, MLE-3, AS-2): 常用框架和库比如 AirFlow, MLFlow, ONNX等 编程: 常用数据结构和算法(DS-1, MLE-3, AS-3): 查找、排序、递归、动态规划、堆、栈、列表以及相应的时间和空间复杂度。 SQL及数据库(DS-1, MLE-2, AS-2): 基本的SQL用法,数据库的基础知识, Spark相关知识。 Leetcode: DS-easy, MLE-medium/hard, AS-medium。 系统设计(DS-1, MLE-3, AS-2): 机器学习系统的设计、架构等等。
4. 不同类型公司对于求职者背景的要求 DS, AS和MLE都是这几年新兴的职位,除了CS和统计这种相对对口的专业之外,很多公司也开始接受有其他专业背景的求职者。不同类型的公司对待“转专业”的人的友好程度也是不一样的,我个人的经验是越大的公司包容性越强也越看重个人的能力也越愿意花时间培训新人,越小的公司越要求专业对口越希望新人来了就能出东西。以下是我面过20多家公司后的总结 :(更多内容请参见https://measurespace.netlify.app/cn_posts/ds_as_mle_interview_requirement/)

bigbright 发表于 2021-02-14 21:07

谢谢分享!
w
whohh
总结的很到位,希望楼主工作顺利
l
loveocean
干货!谢谢楼主
m
marie
谢谢楼主分享!很有价值的总结! 可否根据你的经历,列举一下哪几个公司是分工明确的,哪几个公司是分工模糊的?
x
xiaomaixian
谢谢lz分享!好人一生平安!
r
revivie
谢谢分享!
这三种方向的收入差别怎么样?大吗?
l
landscape_Blue
mark
A
AkanaRika
学习学习
s
swmw
Mark Mark
s
shangwangwengweng
為你點贊,感謝分享
l
lala_2009
回复 1楼bigbright的帖子
lz这个总结头脑清晰,条理清楚,将来在事业上肯定会有建树的
z
zhaoxiaoxi
mark mark
E
Emerxu
我这边有爬的这几个岗位的数据,大家要看可以私信我