字节 + 快手 数分岗日常实习 123面 面经
字节跳动
字节 一面 2.16
刚回来隔离第二天就面试,感觉很多东西都没准备好。不过字节第一面的面试官是研发背景,没太考数分的东西。
- 介绍下之前在腾讯后台开发的工作内容。
- 介绍下简历里的Hadoop和Spark调优的经历涉及到的主要内容。包括一些HDFS和YARN常用参数的设置和解释。
- 介绍下简历里的结合社交媒体数据预测楼市的项目,细节聊的比较多,包括NLP里面的词典构建,模型选择。
- 一道代码题,序列中满足三角形条件三边的组合个数,简单题,其实只要排个序很快就出来了,当时没反应过来,用的递归,复杂度爆炸。
- 反问环节,简单聊了下部门业务和会涉及到的工作。
感觉简历的东西聊的比较多,没怎么考技术,面试官很nice,我和他说代码题没写好,面试官一直说没事没事。
字节 二面 2.18
第二面和第一面的间隔很短,中间也没有什么准备时间,其实数分的东西我自己除了SQL的准备还是挺少的,尤其比较担心统计知识和业务逻辑。
- 实习经历,问了下大概工作内容是什么。
- 还是聊简历。面试官比较关心一面里的那个预测楼市的项目,感觉可能会和数分比较相关,但是面试官一直和我聊模型评估的各个指标,不过项目里唯独爬虫和模型评估我参与的部分比较少,所以熟练度确实不够,所以还是建议要把简历里写的东西的每一个点都研究清楚再去面试。
- 两道SQL题,形式是给了个简单的背景,让我说两段SQL分别做了什么。两段语句的内容难度感觉中等,结构不算太复杂,不过因为涉及到要把select出来的东西表示成一个具体的指标,但是我说不上这个指标叫什么,只能解释了一下指标的含义,感觉这类题很巧妙,考SQL的同时也考了业务。也暴露了我业务不熟悉的问题。
- 统计知识。因为我没接触过ABtest,所以就问我假设检验的含义和P值,power等指标的含义。假设检验很多时候感觉就是数分的基础分析框架,一定要比较熟悉,推荐一篇文章,感觉对假设检验的idea解释的很好。
https://zhuanlan.zhihu.com/p/96666988 - 概率知识。一副扑克牌,抽5张牌是顺子的概率。很简单,不考虑花色总共九种顺子类型,5张牌每个位置4种花色,这是分子。分母就从52张牌取5张的取值数。
- 脑筋急转弯(?)。一根不均匀的绳子烧完一个小时,怎么衡量16分钟。一开始没说清楚,我以为只能用一根绳子。所以很符合统计逻辑地想说把一根绳子均等切成100份,然后随机挑25份拼在一起烧。感觉实在没思路所以这么说了。然后面试官提醒了一下从两头一起烧是半个小时,我问了下可以用几根绳子,说是不限制,所以很自然就想到再拿一根绳子,第一根两头一起烧,第二根从一头烧,然后第一根烧完的时候第二根再从两头一起烧这部分时间就刚好是15分钟。
- 业务类题。
- 先是问了下平时用什么APP比较多,我说看微信公众号比较多。
- 然后了解到我自己也运营个人号,所以就问我认为最影响账号运营是否成功的指标是什么,感觉这道题就是考sense,我说一个指标可能说明不了问题,我就说了很多个指标,比如从账号质量来讲单篇阅读量和关注数的比率,从绝对的用户基数来讲绝对用户量绝对阅读量啥的。面试官问只说一个指标,就说了阅读量/用户数的增长率。
- 现在有一个策略去运营账号,通过什么指标去判断策略是否成功。现在反应过来是标准的AB测流程,不过问的是指标选择。感觉是很经典的面试题,考业务理解的同时也考分析逻辑。当时没答好,随便说了两个指标,面试官就无语住了。其实比较好的流程是按照一个top-down的分析框架拆解指标,比如内部外部,供求关系等。
- 反问环节。问了下数分平时会接触到的业务,如果进去会参与到什么工作。(其实每次面试之后我最关心的是面试反馈,但是都没太好意思问,一方面不知道合不合规,一方面害怕太烂了会很尴尬。但后来才知道其实可以随便问的,而且我觉得每次面试能和面试官聊面试反馈对自己的提升也很有帮助。)
面试官这回是数分背景的,感觉很健谈,整体面试下来压力也比一面大了很多,一个多小时问了挺多问题。同时也暴露了很多问题,面试之后自己去看了很多业务相关的分析框架,包括一些面经。
字节 三面 2.26
星期六上午的leader面。比较紧张。准备了很多业务知识。leader人很好,一直微笑,压力也小了很多。结果进去之后leader就开始和我闲聊,聊发展聊职业规划,聊了部门的工作内容什么的,可能因为看我之前在腾讯是后端的实习,然后说进来的话能不能先做数据研发类的工作,再慢慢接触数分。我本来有点犹豫,不过听leader的描述部门的业务还是很多维的,是中台的UG,所以想了下也没啥问题。本来以为就这么闲聊就结束了,leader突然说那现在正式面试一下。
- 实习经历。不得不感叹leader水平之高,两下就把我问住了,没有太问技术细节,不过问了很多项目逻辑。然后问我这段实习学到了什么,我说不能闭门造车,要主动和人沟通。同时在新环境的适应能力,包括对新技术的学习能力很重要,有待提高。
- 随便写道题,不用任何函数实现python的乘除法。题本身不难,O(n)的遍历或者递归一遍就行。比较有意思的实现可以是位运算。我写了三种,本来想试下UCB的SICP作业题里很经典的一道用lambda表达式实现non-numerical的四则运算,有点想不起来了就没写。想惊艳一下面试官没成功。
- 反问环节。还是好奇工作内容和职责。不过这次我说可不可以问下前两面的反馈(他闲聊的时候和我简单聊了下二面面试官说我业务和SQL都不太熟,我还狡辩了下是业务不熟所以感觉我SQL不熟),leader直接说你到时候进来直接问他俩就行了。有点开心,感觉算是口头通过了。
可能看我写代码还算熟练就没往下问了,协调了一下两边的匹配度就结束了,整体面试体验很好,不过感觉之后实习的话会有很多挑战,确实没接触过的内容比较多,自己的知识储备也很有限。
字节 HR面 3.2
3.2号的HR面,基本没什么问题,应该算是口头offer了。
快手
快手 一面 2.16
这面感觉体验并不是很好。面试官找的地方很吵。一直有人在聊业务(还听到“这里是不应该left join”),而且面试的时候面试官一直在和别人聊天,偶尔还会在我做题的时候看着屏幕笑。
- 在腾讯实习的工作内容。
- 简历里预测香港楼市的项目介绍一下。(感觉面试官一般都会问一个数分相关的项目经历,所以可以准备一个非常熟练的,感觉说得好的话会比较加分)
- 三道SQL。因为太久不面试,犯了超傻X的错误。因为当时害怕有的函数写错名字,我平时写代码也是把文档放在一边去写的,就问面试官可以不可以写SQL的时候查doc,面试官愣了一下说可以,结果考的SQL三道题都很简单,面试官也没仔细看,也没关注我写了啥和别人聊天去了,我写完面试官就直接说行。
- 介绍一下假设检验的内容。两类错误,假设检验想解决的问题。
- 反问环节。没啥想问的。
总体而言体验一般,当时hr和我确实面试时间工作时长啥的时候态度也一般,可能是我遭遇小概率事件了。
快手 二面 2.24
二面的体验就好很多了,是位女面试官。感觉很认真在和我聊,态度也很好。
- 在腾讯实习的工作内容。
- 简历里面预测香港楼市的项目。虽然感觉真要被问吐了,但是不得不说,每次都有新问题。这次就卡壳了,面试官问我模型的指标选择,我就说是政府的公开数据。结果面试官强调问为什么选这些指标,选的原因解释一下。这个问题当时确实没怎么想过,不过看得出来很明显在考业务理解,对指标的理解。没答上来,随便说了点很intuitive的想法。
- 两道SQL题。忘了题的内容了,不过感觉整体不难,还是维持中等题的难度,所以写的也比较顺利。但是记得好像要取第二个数,没想好,我就和面试官说我的想法是先取出第一个数然后做差再取第二个数,说比较复杂可能要写一会儿。然后面试官提醒说你刚才不是在窗口函数用了rank()吗,就反应过来取rank值就好了。
- 业务题。
- 第一题是指标分析。北京烧烤店第二季度销售额增长30%怎么分析,按照外部因素内容因素分析的,外部的比如天气变化,竞品调整,内部的比如新产品推出等。没答太好,反问环节才理清楚。
- 烧烤店烧烤类订单增加了10%,非烧烤类增加了5%,整体订单增加了20%,问是否合理?合理,很简单的辛普森悖论。
- 反问环节。聊了下业务题的分析框架,也是在这次面试的反问环节更加理解了一些分析逻辑。
快手 三面 2.28
三面感觉流程和前两面还是很像。不过面试官严肃了很多。是位女面试官,不知道是因为中学时代女老师比较多还是怎么,感觉面对严肃的女性就会紧张很多。
- 在腾讯实习的工作内容。(被问吐了,不过还是不知道说些啥)
- 简历里结合新冠疫情的股票选择策略的项目的介绍,当时参加挑战杯的项目,比较熟悉,介绍的比较细,从td-idf一直到因子分析都说了,说完之后面试官就没有反问。
- 一道SQL题,选择视频播放量最高的三个tag。第一眼以为巨简单的题,直接一个select,结果写完面试官表情十分奇怪,让我再看看,我也愣了,然后面试官说没说清楚,说是每个用户的三个tag,难度就提了一些,套三层select先group by再窗口rank解决。写了一会儿,中间也出了一些小错误,改了两次才完全改对。
- 业务题。
- 问我用什么视频软件。我说B站,然后问我看视频的习惯什么的。问我觉得B站的用户定位是什么,还可以有什么改进。感觉这块还是考sense。
- 如果B站引入母婴类的视频,想看看这部分引入会不会带来正向的效应。从什么指标入手去分析,从用户端,视频作者端,和B站的收益端分析了一下。
- 现在对这个引入策略做ABtest评估,能聊一下怎么评估吗。直接说不会,完全没做过ABtest,感觉只是看网上的介绍也记不太住。
- 那如果实验组的用户留存和播放量都不高,下一步应该做什么。我第一反应是数据可能存在辛普森悖论,但是没想清楚怎么解释。不过还是把这个想法说了一下。
- 反问环节。还是很好奇业务题怎么分析,面试官说第一题就是很自然的了解你对这些产品的一些理解。没什么框架。二三四题就考你的分析能力。还特意提了一下第四题其实我直接说应该终止实验也是没什么问题的,所以不要把问题想的太复杂,有的时候常识和直觉也是很有帮助的。
总结
因为是学校改网课了,所以回家上网课,刚好想找个实习充实一下自己,整个流程比较仓促,很多家公司的情况都还没来得及了解。不过很幸运第一个隔离期就确定可以去字节实习,感觉字节这边的业务也比较符合我的期望。
因为找这个实习,很大程度上得到了牛客网的帮助。所以我也在这里分享一下自己的面经,大家共同进步。
希望大家面试顺利,offer多多。