Data Scientist 面经
面试过的公司
google, facebook, amazon, ebay, disney, Dow, hertz, target, lyft, Ford, starups, etc.
目标职位
主要是data scientist和machine learning engineer的职位,但是各个公司也有不同的叫法,比如decision scientist, research scientist, operations research, senior analyst, AI scientist 等等。
背景
Fresh PhD, 只有一次实习
先说一下职位之间的区别:大概可以分为两种,一种是偏向business, 平时工作主要是运用各种technique去解决business problem, 我个人比较倾向这种, 基本上每个公司都有这种职位;另一种是偏向engineering的,以编程为主,大部分只有高科技公司才有这样的职位。
基本流程
Step 0:
简历准备,几个简单原则,(1)尽量用一页,实在放不下也可以多放(我用的三页,因为publications就有一页半),但是用多页还是要让人觉得你是真的做了很多,而不是很空的两页,这样第一感觉就不太好,多页简历记得标页码。(2)重要的放在最前面,我的顺序是:personal information(github, kaggle link, linkedin 都可以做个链接放在这这,因为很多pdf的,面试官可能会点,这样就能让他们看你做过的项目和代码),availablity(什么时候可以上班),objectives, education, working experience, publications, conference proceedings, presentations。education这个可以放到最后,如果觉得不是很重要的话。(3)做过的项目尽量具体,网申可以搜搜别人怎么写的,不要只写我用XGB做了个classification这种,公司更关注你发觉了什么insights,整个process是什么,结果怎样,你是怎样解释结果的(分为专业听众和非专业听众),可以问的很多,绝不只有技术细节。
Step 1:
内推, conference carrer center/carrer fair, 网申(推荐indeed.com)
Step 2:
recruiter screening,这个比较简单,就是简历被选中面试了,简单聊一下背景
Step 3:
电面,记得用耳机,找个安静没人打扰的地方,简历打印放在手边;视频面试记得准备白纸,以免面试官问问题需要写出来,也可以帮助自己理清思路,具体内容下面会归纳
Step 4:
code challenge, 这个不是CS那种coding test,而是给你一个case study,然后十小时的时间,用python/R去完成这个case study,估计这个是专门针对data scientist的面试,并不是所有公司都有这个环节。
Step 5:
电面,这个和之前的电面差不多,有没有这一轮取决于之前的面试表现
Step 6 onsite:
大概是4~6轮不等,也是最累的
面试题总结:
统计,概率,机器学习,operations research 基本上所有概念要熟悉,考的五花八门,从基础的(本科专业课)到高级的(研究生专业课)都有可能考
建议去刷几门公开课,我两个月基本上把能看的公开课都刷了一遍,一定要很熟悉,而且得有一定深度。
coding:湾区的公司都要考,leetcode简单或者中等水平,会分析time complexity。面过Facebook machine learning scientist,这是个纯马工职位,基本上就是coding,如果面这个一定要刷题
SQL: 大部分考, hackrank (感谢C神告诉我这个网站)
R/Python: 至少精通一个,因为data science challenge需要在很短的时间做出来,类似kaggle,不过数据可能更dirty,而且有很多open questions
behavior question:都是一些常规的,网上搜搜都有
具体的问题实在记不得了,反正啥都有可能问
编者的话:Steven是小编的好友,最近顺利找到了工作,在这里把面经贴出来,给大家共享一下。本文同时发表在米群网。
本文发布经Steven同意