来回报论坛了,说说自己近期面试data scientist 的经验。 ps:如果大家觉得写的东西有帮助想来试试fb的话,欢迎找我内推~私信联系方式咯~提问的话 还是帖子里问 这样大家都可以看到 谢谢!背景:ms systems engineering + 2yr work experience in a small (not start-up) company, daily responsibility includes data analysis, modeling, machine learning, some text mining, some big data analysis. 不做任何reporting and visualization,也没有所谓的product analytics (experiment design),和flg要求的有较大差距。 Skill set (括号代表非常真实的工作时间分布): r (70%), sql(10%), python(10%), spark (specifically, pySpark, 10%). 坛里一定有很多比我牛的人啦,我只是新人一个。在这里我只想给出一个非牛人,但挺努力有目标的人会怎么准备。目标是想去湾区做ds。 先说结果: 投了40家左右 Offer: fb, google Rej: Linkedin and a startup (onsite rej) twitter (after 2 tech interview) Apple (不同组跟4个hm聊过,最终有被拒也有withdraw) Uber (failed first tech interview) Airbnb (failed on data challenge) 还有好多其他公司,有的跟hr聊聊发现不合适,有,有的默拒,有的好歹还告诉你一下被拒了。 总结下:就是太小的公司,投了也白投,直接简历悲剧。我大概投了25+小公司,只3个好歹给我电面。其他就是没消息。 所以觉得自己背景还不错的朋友,建议安排面试的时候,从不太想去的中/大公司开始,到自己最想去的大公司。找小公司成本很高, 投的时候麻烦而且又没面试。 【时间线】 17年2月,开始上JIUZHANG算法初级课,刷题,断断续续到6,7月吧。(***如果找ds,刷题没用,看后文) 期间,边玩边刷剧边复习,复习内容后面会说。 7月中,开始投简历,以小公司为主。开始断断续续的电面等等。 9月中,开始投最想去的一波公司(FLG等其他共10个左右吧)。 10月, 第一个onsite 小公司,fail。这段时间基本2周一个onsite,去了三次。 11月,确认offer,谈价钱,完事。 再说开始投简历之前的准备: 第一, 先搞明白自己到底想做什么。 最开始,在data scientist 和machine learning engineer 之间摇摆不定。MLE么,一来很火,钱多多了,还有也更偏技术点,我bf强推我走这条路。于是开始了刷题之路。 最后,没选择走mle,坚持了ds。一是虽然会编程,但是没上过正经的算法课,刷题基础不好,看题刷题很痛苦。二是,结合了自己的兴趣和能力,衡量下了之后觉得ds这种通才更适合我个人发展。个别公司给了面mle的机会,有的take了,结果发现自己水平也不够,有的就直接拒了。 关于ds 和mle的区别,每个公司定义不同,但可以参考这里:http://www.1point3acres.com/data-science-machine-learning-engineer-etc/ 小心提示下: linkedin的ds和mle不可以同时面,只能2选1。 Fb,apple可以同时面,面试结果互不影响。 第二, 列出公司列表,按自己想去不想去的程度,分出几个档次。然后倒着投。我还是建议把最想去的公司放倒最后。面试是一个学习进步的过程。前期不管是跟人聊自己的经历,proj也好,面tech聊ML的可以帮助自己找到知识点的查缺补漏等等,我觉得这对后来面大公司很有帮助。 第三, 心态调整。面试是个双向选择,互相平等选择的过程。表现在去面试的时候,要显得自信而不自傲。和面试官平等沟通。把面试当成去公司上班的一天,去和同事解决问题的一天就会轻松很多了。 【面试范围】 从简单到难,目前我观察ds面试主要有3块,一是处理数据的能力,flg都是靠考察sql能力为主;二是所谓的product analytics,这块比较虚了(很难复习),考察的内容很宽泛; 第三是统计,概率和machine learning,我复习的较少,认为基础还行吧,主要是上课学过。 根据我自己的情况,我花的时间大概是10% - 50% - 40% 吧。很多也在日常积累中。 【要不要刷题???】 我的回答,如果是面ds,真心不用。类似leetcode那种算法题,完全没考到! 如果你面的title是mle, 或者software engineer-data science/machine learning/data mining 这种的,一定一定要刷。 【Sql复习资料】 如果你连sql是啥都不知道,建议从这门课学起: https://lagunita.stanford.edu/courses/Engineering/db/2014_1/about 只看开头和relational database 两章足够。 https://community.modeanalytics.com/sql/tutorial/introduction-to-sql/ 如果你已经很熟悉sql,日常工作中有用到,稍微复习下这些题目足够了: https://leetcode.com/problemset/database/ 【product sense 复习资料】 1. 学习管理咨询那套解决问题的框架: 朋友推荐看的书是case in point, Case Interview Secrets (我都没看,没时间) 我推荐的是听后者作者的一个讲座,look over my shoulder,具体过8个case。每个case都有3个面试者,然后victor cheng分别点评,提出改进建议。这个我在喜马拉雅fm app上听的,免费: http://www.ximalaya.com/5269453/album/6414597/ 我一共听了3+次,开车听。 2. Product design: 我看了这个: https://classroom.udacity.com/courses/ud509 3. 一定要复习的是ab test. 我对ab test 是完全没任何工作经验的,所以从0 开始学习。我看了以下材料 (按顺序): 首先,系统学习下什么是ab test(个人完整看了3次以上,认真写了笔记,每次去onsite的飞机上都是复习这个笔记) https://classroom.udacity.com/courses/ud257 然后,我看了这个:A/B Testing for Business Analysts https://classroom.udacity.com/courses/ud979 看一次,主要理解了randomize design and paired design, 第一个课里没仔细讲的。还有这个课非常短,适合短时间看一下的。 最后上这个https://community.modeanalytics.com/sql/tutorial/sql-business-analytics-training/ 因为学习了很久,我一直的疑惑就是实际工作中到底怎么展开研究一个问题? 到底什么是正确答案?这个系列training解答了我很多疑惑,而且也结合了sql的处理,一定建议对每个图,打开右上角的view query in Mode,建立从提出问题到数据处理之间的联系。 4. 补充的资料,时间不够可以不看了的 Model building and validation: 理解所谓的QMV process, questionè model è validation. 以下这个课我是加速看的前3章。 https://classroom.udacity.com/courses/ud919 【stats, probability, machine learning 复习资料】 Stats 我复习的少,主要针对tests, hypothesis testing 看了一下这些: 1. Intro to Inferential Statistics:https://classroom.udacity.com/courses/ud201 主要看了estimate, hypo testing 这2个,其他也来不及了没看。 2. Penn state university的stats 414, 415. https://onlinecourses.science.psu.edu/stat414/ 哪里知识缺了就来补看一下。 【Probability】 我看了2个: 1. https://brilliant.org/courses/probability/ (强烈推荐) 我做了前面5个course的免费题目,看了解答。主要是Bayes rule, conditional probability, expection 这些概念的理解和灵活应用。 2. https://www.amazon.com/Practical-Guide-Quantitative-Finance-Interviews/dp/1438236662 一般是推荐给面quant的人的,我看了其中概率题的那章。忘记是哪个了。。。 【machine learning】 这部分我主动复习的很少了,在学校上过课+我bf是做这个方向的,他帮我复习了各个算法的情况,优劣势等等。具体到面试中,考察的内容比如是,提出什么问题,收集那些数据,用什么feature,哪些transformation, 如何data cleaning, 如何选模型?如何evaluate model etc。。。我自己写了个笔记,就写面到的,错过的,想到的知识点等等。要面试前会复习的。 如果对ml完全没经验,参考别人的帖子吧。。。 Overall, ds跳槽的面经推荐阅读: 这个面经写的非常好!!有很多我没cover的点,比如怎么写简历,linkedin, network,如何安排时间等等,请一定看一下~ 【我是刚毕业怎么办?】 建议第一份工作也许不能是dream job ,但一定要有一些值得你去的点,是和你的dream job 相关联的。衡量工作的内容,想想以后写在简历上会不会添彩?比如你想做ds,但如果现在一份工作要求你天天用sas,真心建议别去了。如果你想做MLE, 但现在一个工作要求你用tableau 做reporting?也别去了。 最后,有问题的话麻烦回帖,大家一起来讨论。不要私信。如果你非要私信我我也不回的,请尊重我的要求。 supermuyes 发表于 12/10/2017 11:03:18 PM
不知楼主还回来吗。。。。这句话不太明白,求解。。。没有找到图和view query in Mode“最后上这个https://community.modeanalytics.com/sql/tutorial/sql-business-analytics-training/因为学习了很久,我一直的疑惑就是实际工作中到底怎么展开研究一个问题? 到底什么是正确答案?这个系列training解答了我很多疑惑,而且也结合了sql的处理,一定建议对每个图,打开右上角的view query in Mode,建立从提出问题到数据处理之间的联系。” wuyue1990 发表于 3/28/2018 1:24:36 PM
“最后上这个https://community.modeanalytics.com/sql/tutorial/sql-business-analytics-training/
因为学习了很久,我一直的疑惑就是实际工作中到底怎么展开研究一个问题? 到底什么是正确答案?这个系列training解答了我很多疑惑,而且也结合了sql的处理,一定建议对每个图,打开右上角的view query in Mode,建立从提出问题到数据处理之间的联系。”
强贴mark!恭喜mm!超赞的总结和分享!!
https://community.modeanalytics.com/sql/tutorial/a-drop-in-user-engagement-answers/
必须是 answers的页面才有图啊。图里面 hover over 到图上,右上有三个点点点,里面就有 view query in mode
Mark
我想问一下machine learning的内容在FG有没有被问到?谢谢
简历上的项目除了工作经历,妹妹ab test 有自己在简历上列出项目吗?还是只需要skills里列出?
☆ 发自 iPhone 华人一网 1.14.01
不晓得楼主mm还有链接吗?
这个面经写的非常好!!有很多我没cover的点,比如怎么写简历,linkedin, network,如何安排时间等等,请一定看一下~
这个连接似乎失效了,lz能再发一遍吗?或者说一下题目,我按关键字找到的不知道是不是同一篇,谢谢!
---发自Huaren 官方 iOS APP