《数据科学面试40+真题讲解》,K神本年度最后一次开课


一亩三分地论坛

 找回密码
 Sign Up 注册获取更多干货
码农求职神器Triplebyte:
不用海投,内推你去多家公司面试
Airbnb 数据科学职位
in analytics and inference
天天打游戏、照样领工资,
你要不要来?
把贵司招聘信息放这里
查看: 41294|回复: 135
收起左侧

[找工就业] Data Scientist找工小记

    [复制链接] |试试Instant~ |关注本帖
qingbinlee 发表于 2016-4-18 14:06:26 | 显示全部楼层 |阅读模式

2016(1-3月)-[]CS硕士+3个月-1年 - 网上海投| 分析|数据科学类全职@其他其他

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

您需要 登录 才可以下载或查看,没有帐号?Sign Up 注册获取更多干货

x
今年1月6号公司毫无征兆的大裁员,整个Data组被裁,于是再次踏上找工作的道路,3月4号正式签下卖身契,结束今年的找工季。由于去年没有抽中h1b,比较着急在抽签之前签了offer,结果就是近两个月的时间里疯狂的投了200多份简历,聊了五十多家公司,搞了近百场面试。拿到了Servicenow, Hulu, Yelp以及湾区一家Startup的Data Scientist offer,最后从了ServiceNow。趁着最近记忆还鲜活,唠叨一下自己这两个月面试的心得体会,希望能够帮助有需要的同学。
简单介绍一下背景,本科是BJTU的信息与计算科学专业,MS是Georgia Tech 的Computational Science and Engineering专业,毕业后在一家Startup做Data Scientist,裁员的时候刚好干满一年。之前工作主要集中在两个方面,一是客户与产品分析(customer conversion / churn analysis, product analysis),二是数据分析产品的研发。这次找工目标是Data Scientist,另外也有面过Machine Learning Engineer, Software Engineer。面过的公司里面以high tech公司为主,少部分是传统行业的公司。

Data Scientist面试的基本流程包括了一到两轮电话面试,Homework Assignment,onsite interview(通常四到六轮面试)。电话面试主要是聊聊简历,问问机器学习概率统计,写写代码。Homework Assignment通常是给一个简化但与实际工作相关的问题,根据给出的数据进行建模、分析、完成报告。onsite interview里每一轮面试的侧重点都会有所不同,但是基本上是电话面试的扩展版。

面试内容可以归纳为简历,机器学习,概率统计,算法与coding,开放性问题五个方面。
  • 简历

由于目前数据行业从业人员背景千差万别,所以不同背景的面试官关注的点可以能不一样,有的侧重于具体的技术细节,有的更看重business impact,所以在准备简历的时候,最好能保证两个方面都照顾到。在聊简历到过程中,常被问到这些问题:一,为什么用某一种方法及与之相关的各种技术细节;二,如果有机会重新做这个项目,有什么可以改进提高的地方等等。
聊简历的终极奥义是引导面试官聊你最熟悉的内容,引导面试官问你想让他问的问题(能体现你的水平与思考的)。总的来说,简历从写到聊水很深,有机会单独再详细说。但是最基本的要求,必须熟悉简历上的每一句话,每一个关键字,了解每一个技术点。
  • 机器学习

机器学习是Data Scientist面试中非常非常重要的一个部分,因为这是Data Scientist看家吃饭的技能,所以机器学习的面试结果会很大程度上左右最终面试结果。一般公司会从广度,深度,经验三个角度进行考察。
从广度上讲,应该对机器学习各个方面(regression, classification, clustering, etc)的算法都有所涉猎,不要求精通,但是至少能够用几句话描述出算法是在怎样的假设下用怎样的步骤解决了怎样的问题,有什么优缺点。
从深度上讲,一方面,能完整的掌握几种机器学习的算法。不仅仅知道算法是干什么的,更要知道与之相关的数学推理、技术细节。比如Naive Bayes怎么利用Naive Assumption简化,比如AUC为什么对于数据不平衡问题不敏感等等。另一方面,能够对算法进行横向比较。比如什么情况下Random Forests 比Gradient Boosting好,什么情况下不如GBM,为什么会这样。
从经验上讲,侧重的是考察与实际项目有关但是在课堂或教科书里一般不会涉及的内容。比如如何进行feature engineering,如果数据量比feature量少怎么办,如何解决imbalanced data classification的问题,如果模型的performance没有达到预期应该怎么办等等。
  • 概率统计

面试中概率有关的都是一些很经典的问题,比如红白球取某种球的概率,计算条件概率,根据贝叶斯公式计算概率等。
统计相关的概念也经常会被问到,比如什么是p值,置信区间,最大似然估计,中心极限定理,大数定律等。如果职位对统计的要求较高,也会涉及一些统计检验方法,比如如何判断两组数是否来自同一分布。AB test也是一个统计的考察点。
  • 算法与coding

Data Scientist对于算法和coding的要求相对较低,不需要像Software Engineer那样要求bug free。能搞定leetcode medium难度,明白时间及空间复杂度,知道基本的数据结构,就能应付绝大多数Data Scientist的面试。与data相关的题目被问到的几率相对较高,比如find median from data stream, median of two sorted array等。另外,简化版的k-means, tf-idf等机器学习的算法也有被要求过现场写代码。
此外,SQL基本是必考内容,从各种不同的join,再到一些高级技巧都所涉及,基本上过一遍w3school就能解决绝大部分SQL题。
  • 开放性问题

我把开放性问题分为三类,一是实际问题的case study,二是“之前的经历中有没有遇到过xxx问题”,三是behavior questions。
Case study简单来说是对面试官提出的一个工作过程中可能会遇到的问题,要求进行分析建模。这个问题可能是偏技术的,如设计一个推荐系统,开发一个数据有关的功能,也可能是与公司产品、客户、运营有关的business问题,如怎样进行客户流失分析等。我个人的回答思路是首先明确问题并将其转换成建模问题,然后确定需要什么样的数据,之后进行feature的构建及选择,模型评估方法的选择,模型的构建与测试评估,最后谈一下结果的delivery。
“有没有遇到过xxx问题”也是一类经常被问的问题。这需要注意在工作过程中的积累,平时多思考。如果真的遇到不熟悉的问题也不要慌。这类问题典型的有:有没有遇到过数据不足的情况;有没有缺少可信的labeled data或者数据质量突变的情况;如果数据量太大不能放到内存或者一张硬盘中应该怎么处理等等。
Software Engineer面试中很少会涉及到behavior questions,大家都上来直接做题过招。但是Data Scientist面试中这是非常常见的,估计是因为Data Scientist工作中经常需要同时与技术和非技术的同事打交道。除了怎么进行团队合作,遇到意见不一致怎么处理,怎么进行日常交流等常见behavior questions之外,诸如如何向没有数据背景或者没有技术背景的同事解释模型,在business objective不明确或无法实现的情况下如何进行交流沟通这种与日常工作紧密结合的问题也会被问到。

以上就是我的一些小小经验分享,希望能够帮助有需要的同学。将来如果有机会,希望能再开贴详细说说上述的每一步。最后归纳一点我自己的心得体会:

拿面试看简历,拿Onsite看实力,拿Offer看沟通。

如果有什么问题或者需要内推,可以直接回帖或者给我发私信。


安利贴Georgia Tech MS CSE 请吃下这颗安利!!!戳这里

版权所有,商业转载请联系作者获得授权,非商业转载请注明出处。





补充内容 (2016-4-21 13:57):
在四十楼补充了一下面过的公司,如果斑竹有空麻烦帮忙移一下位置。
http://www.1point3acres.com/bbs/ ... 3&fromuid=40940

补充内容 (2016-9-12 15:11):.鏈枃鍘熷垱鑷1point3acres璁哄潧
补充了一些关于机器学习面试的问题:http://www.1point3acres.com/bbs/thread-201560-1-1.html

评分

34

查看全部评分

本帖被以下淘专辑推荐:

 楼主| qingbinlee 发表于 2016-4-22 05:51:27 | 显示全部楼层
补充一下我的面试经历,希望能给在Data Scientist求职路上的小伙伴们一些信心。虽然Data Scientist职位的数量比码农要少很多很多,但是只要努力去找,机会还是非常多的。. 鐗涗汉浜戦泦,涓浜╀笁鍒嗗湴


Phone Interview or Homework Assignment 挂掉:
Affirm, Apple, Avalara, Avant, Capital One, Coursera, EA, Facebook, G2 Web Service, GAP, Glassdoor, Goldman Sachs, Globys, Google,  Integral Ad Science, KIXEYE, Nvidia, Quantifind, Outerwall, Simply Hired, Slack, Stitch Fix, Support, Workiva, ZestFinance. 鍥磋鎴戜滑@1point 3 acres


Onsite 挂掉:. 鍥磋鎴戜滑@1point 3 acres
Redfin, SnapChat, Storm8


Withdraw(呵呵一下大公司的效率):
Amazon, AsperaLabs, Bloomberg, Ebay, IBM,  Indeed , LendingHome, Linkedin, Livongo Health, MapR, Microsoft, Milliman, Salesforce, Spotify, Upwork, Walmart, Wish
-google 1point3acres

Offer:
ClearSlide, Hulu, ServiceNow, Yelp

回复 支持 5 反对 0

使用道具 举报

 楼主| qingbinlee 发表于 2016-4-19 02:14:45 | 显示全部楼层
aojing 发表于 2016-4-18 09:17.1point3acres缃
非常有用
mark之。。。. Waral 鍗氬鏈夋洿澶氭枃绔,
lz能不能具体说说ML部分是怎么准备的呢?

你可以按照我上面提到的机器学习面试中三个角度进行准备。首先从你自己的简历出发,挑出几个核心的算法(不用太多两到三个就好),完完整整的弄懂所有技术细节,达到基本精通的程度。然后,找一个ml课程的大纲(Stanford,cmu或者其他学校或者自己学校的),看看里面都讲了什么算法,尝试着用几句话描述出算法是在怎样的假设下用怎样的步骤解决了怎样的问题,有什么优缺点。另外,quora是一个非常棒的平台,准备ml各种算法的过程中多浏览大牛的回答,面试毕竟不是考试,很多时候更需要用大白话来解释算法模型,quora就是最好的教科书和参照物。
. 1point 3acres 璁哄潧至于材料,我平时看elements of statistical learning和pattern recognition and machine learning这两本书比较多,Andrew Ng的cs229 machine learning的note也很不错(不是coursera的note)。.1point3acres缃
正在整理自己的ml笔记和酝酿一篇如何准备ml面试的文章,力争能早点写完。

评分

1

查看全部评分

回复 支持 5 反对 0

使用道具 举报

haoguoxuan 发表于 2016-5-24 01:40:16 | 显示全部楼层
qingbinlee 发表于 2016-5-24 00:38
不research的工作不等于简单的工作吧,另外,您确定知道data engineer是做什么的吗?

抱歉,我刚刚把你问的问题当成一个问题了,我现在意识到好像是个略带insulting的反问。这样,我也没有权利要求你学会尊重别人的观点。我只是觉得在美国社会生活,这是个基本意识吧。这个话题就此打住,恕不回复了,祝lz生活愉快。
回复 支持 2 反对 2

使用道具 举报

Yunou 发表于 2017-1-21 09:30:35 | 显示全部楼层
多谢楼主的总结。最近也是在找Data Science的工作,你的帖子很有帮助!!我要加油!!
回复 支持 1 反对 0

使用道具 举报

dangertrip 发表于 2016-4-18 14:56:04 | 显示全部楼层
Con!请问如果对于new grad也是这样的要求么
回复 支持 1 反对 0

使用道具 举报

demonhunter 发表于 2016-7-4 03:37:09 | 显示全部楼层
青菜炒香菇 发表于 2016-5-21 11:13
本科同是信息与计算科学,但是现在来美国读研改统计了,现在万分后悔没有学cs啊。本科的时候c,Java,数据 ...

Stat PhD表示统计很好的呀,有什么要后悔的。. 鐗涗汉浜戦泦,涓浜╀笁鍒嗗湴

编程这东西自己看看公开课刷刷题做做项目都能捡起来了。. more info on 1point3acres.com

rigorous统计项目训练出来的对data的intuition和sense不是随便几个公开课就能培养出来的的。很多没受过严格统计训练的人linear model都搞不清楚结果不少人面试都挂在上面。

而且统计出来不光可以去IT当DS,银行,药厂,保险,很多地方都好去的。

R很强大的,好好学好,千万不要小瞧R。。。感谢Hadley Wickham
回复 支持 1 反对 0

使用道具 举报

 楼主| qingbinlee 发表于 2016-5-11 00:37:10 | 显示全部楼层
Tsien 发表于 2016-5-9 21:48
LZ能不能分享下包袱的信息,不知道跟software engineer相比如何?

和software engineer区别不大,不过听说像fb,google这种,股票比sde要少
回复 支持 0 反对 1

使用道具 举报

taotaoxuyuan 发表于 2016-4-21 03:44:21 | 显示全部楼层
伤不起。。感觉ds更偏好cs出身啊
回复 支持 0 反对 1

使用道具 举报

demonhunter 发表于 2016-7-13 02:47:24 | 显示全部楼层
在Machine Leanring上面确实Python更胜一筹,特别是在building Machine Learning Pipeline上面。
. 鐗涗汉浜戦泦,涓浜╀笁鍒嗗湴
但是R的其他统计分析Package比Python多了海了去了,一个好的数据科学家必须R和Python都精通,No Excuse!
回复 支持 0 反对 1

使用道具 举报

ktmud 发表于 2016-4-18 15:34:17 | 显示全部楼层
感谢LZ分享!全都是实打实的干货呀
回复 支持 反对

使用道具 举报

solar12138 发表于 2016-4-18 15:46:00 | 显示全部楼层
信息非常有用!
回复 支持 反对

使用道具 举报

王小湾123 发表于 2016-4-18 16:17:38 | 显示全部楼层
感谢楼主分享!
回复 支持 反对

使用道具 举报

panda199393 发表于 2016-4-18 17:30:12 | 显示全部楼层
赞赞赞!绝对干货啊!而且学长我今年也录到gatech isye了,不过是sce的~之后我也想走data方向,感觉这篇帖子给了方向啊
回复 支持 反对

使用道具 举报

metootootoo 发表于 2016-4-18 22:04:06 | 显示全部楼层
顶楼主~当初在linkedin上加楼主的时候就感觉楼主就是我的努力目标啊,很full stack的data scientist
回复 支持 反对

使用道具 举报

ganqierwu 发表于 2016-4-19 00:31:44 | 显示全部楼层
写的非常实际,很多问题我面试时候也碰到过,要是早几周读到就好啦。
回复 支持 反对

使用道具 举报

 楼主| qingbinlee 发表于 2016-4-19 01:09:07 | 显示全部楼层
dangertrip 发表于 2016-4-17 22:56
Con!请问如果对于new grad也是这样的要求么

嗯,对于new grad要求稍微低一些,但是基本上也是这样。
回复 支持 反对

使用道具 举报

 楼主| qingbinlee 发表于 2016-4-19 01:09:45 | 显示全部楼层
panda199393 发表于 2016-4-18 01:30
赞赞赞!绝对干货啊!而且学长我今年也录到gatech isye了,不过是sce的~之后我也想走data方向,感觉这篇帖 ...

大赞哈,有什么问题可以再问我
回复 支持 反对

使用道具 举报

不想学通信了 发表于 2016-4-19 01:09:53 | 显示全部楼层
data science 看来真的不容易呢
回复 支持 反对

使用道具 举报

ganqierwu 发表于 2016-4-19 01:11:50 | 显示全部楼层
我有个小问题,楼主是怎么在面试的时候解释自己被layoff的,或者解释why you are looking for new opportunities 的?
回复 支持 反对

使用道具 举报

aojing 发表于 2016-4-19 01:17:33 | 显示全部楼层
非常有用
mark之。。。
lz能不能具体说说ML部分是怎么准备的呢?
上过tech ML的课,做过相关project,但是一被问起来发现知识面还是很窄
有什么推荐的书或者资料么?
回复 支持 反对

使用道具 举报

 楼主| qingbinlee 发表于 2016-4-19 01:48:14 | 显示全部楼层
ganqierwu 发表于 2016-4-18 09:11. from: 1point3acres.com/bbs
我有个小问题,楼主是怎么在面试的时候解释自己被layoff的,或者解释why you are looking for new opportun ...

layoff在美国这里很正常,被问到的时候都是直接说为什么被layoff。至于如何回答why look for new opportunity类似的这种问题,更多的侧重点还是在于为什么喜欢这个公司,这个职位,想要寻求什么样的机会
回复 支持 反对

使用道具 举报

 楼主| qingbinlee 发表于 2016-4-19 08:24:12 | 显示全部楼层
不想学通信了 发表于 2016-4-18 09:09
data science 看来真的不容易呢

主要是要求比较杂,什么都得懂点
回复 支持 反对

使用道具 举报

zjy312 发表于 2016-4-20 04:31:49 | 显示全部楼层
干货,非常好,多谢分享。最近正准备转行,比较纠结是往data scientist 还是 software engineer转。感觉data scientist 要求的技能比较多,software engineer要求更加专一点。请问相比于software engineer, 转data scientist是不是需要更多的时间?另外,在high tech 公司里面,data scientist 和 software engineer 哪个可能更加重要一些?
回复 支持 反对

使用道具 举报

sandy2015 发表于 2016-4-20 08:02:00 | 显示全部楼层
楼主写的东西绝对干货,太有用了。想问楼主servicenow data scientist onsite都会问些什么内容嘞?会考coding吗?因为我这周马上就要去onsite了,也是data scientist的职位,但不大清楚具体情况。我是统计毕业的,但面试官里居然有三个sde,表示好泪奔啊,我都不太会sde的coding,leercode啥的从来也没刷过。求楼主指导!
回复 支持 反对

使用道具 举报

dlstns 发表于 2016-4-20 08:09:10 | 显示全部楼层
谢谢楼主分享 很详细呀~
回复 支持 反对

使用道具 举报

攒rp的宁宁 发表于 2016-4-20 08:44:15 | 显示全部楼层
太厉害啦~感谢楼主,想咨询一下如果想转data方向应该上一些什么课呢,
回复 支持 反对

使用道具 举报

本版积分规则

关闭

一亩三分地推荐上一条 /5 下一条

手机版|小黑屋|一亩三分地论坛声明

custom counter

GMT+8, 2017-11-25 12:18

Powered by Discuz! X3

© 2001-2013 Comsenz Inc. Design By HUXTeam

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