pa 2018-1-14
谷歌家面的是product analyst,一开始说是general hire,但好像面的时候直接见到了hardware team的一个年轻hiring manager,所以应该就是直接面那个组了。
一开始一轮电面,是个youtube的老印面的,主要是问简历,让挑一个觉得最满意的项目介绍一下,中间问了一些关于Selection bias,怎么sampling之类的问题,然后问了一个sql,记不太清了,大致是先按照一个feature来Aggregate一个table,然后找出count最大的那个feature值对应的所有人,其实就是group by跟subquery的合用,然后问为什么不直接用order by,然后limit 1来找最大值,当然是回答说最大值有可能有很多个。
onsite四个人,两个是hardware team member,问的大都是关于组里做的工作,怎么去检测用户喜欢喜欢google手机硬件和软件的更新之类的。另外两个是别的组的analyst,大体是先简单问简历,然后问一个中等难度的Sql题,最后问一个他们领域的实验设计和建模题,比如一个新游戏出来了,怎么去估计下载量,一个新软件更新了,怎么衡量这个更新对软件用户使用的影响,应该大体是考察你的逻辑能力和能不能在有限的时间内尽可能多地想到更多多的影响因素。我在回答时有意地多提了提要注意selection bias,sampling方法要正确等等。
统计问题不会的一般的我就往confidence interval, p value, type 1 or 2 error之类的上面去靠,Sql一般是group by和join交换着用,可能同一个表join回自己好几次,再加上window function(row_number, rank之类)
1. case study:假设你是一家new app公司的analyst,马上要去给ceo作汇报了,你会怎么做?主要就是围绕汇报些什么key metrics,用哪些graph,怎么解释等等。然后问了一些A/B test相关的问题,比如说这个app可以track location进而提醒用户要不要check in,怎么样衡量这个feature好不好?
2. case study:你最喜欢google的什么feature?我说的是google map,然后就围绕着google map狂问,比如说你觉得google map还有哪些地方需要improve,你能想到什么新的feature啊之类的。如果要去一个新的国家推广google map该怎么做?然后还问了google self driving car,你觉得google做这个self driving car有没有前途啊?主要可以用于哪些方面?怎样compete竞争对手等等。。
3. SQL,很简单的一个问题,也是用partition by就可以解决的。case是关于gmail的,比如说gmail里某个按键是灰色的,现在想要改成红色的,怎么去比较哪个好。
4. 围绕着简历问,不记得特别的case了,主要就是关于之前做过的project的,问的很细。
觉得题目不难,但是要想答到点子上也不容易。product相关的题,没有标准答案,答的怎么样真是很难说。反正面完没几天我写信去催结果,告诉我挂了,不给feedback,问过多久能再申请,说是非Data Science内的可以马上申请(编程牛的还能试试码农?),类似职位的建议过一年到一年半再申请,因为他们觉得至少需要一年的时间才能有所改变和提高。当时听到非常地沮丧,第一觉得挂得不明不白,第二觉得自己是不是面得特别差啊,怎么freezing时间那么长。Anyway,现在move on了,当前的工作很flexible,就是学不到太多东西,准备打持久战,常常来版上来学习学习。祝大家都能去自己想去的公司!
pa 2018-1-19
具体的问题记清了无法详细罗列 不过大致是这样子的
第一个人问了我一堆android phone的问题 比方说如果launch了一个new phone你会如何evaluate success -baidu 1point3acres
或者说如果有个phone有某个metadata有缺失 你怎么去predict its value把它补上之类的
我记得他面了一会儿说 哎呀不过你对phone这个产品和周边数据也不一定熟悉就是了 那要不你说说你对google哪个产品比较熟悉并且感兴趣呢?当时我就知道我肯定是答得不好了...
第二个人问了我sql 不难 left join几次就够了 然后问了些简历上的project的问题
好像还问了一个如果有两个不同的engagement metrics 都有各自的pros and cons 你怎么决定是分开report他们呢 还是combine 然后如何combine
第三个是lunch 人挺nice的也非常坦诚 我感觉得他觉得自己组做的东西挺无趣的 他估计也觉得我隐隐的赞同着他的想法... 后来想一想我觉得我是不是表现的太明显了...
第四个人虽然还是用了某个product相关的setting 但其实就是linear regression的问题 把那些diagnostic怎么做搞清楚就不难
第五个是面的最差的一个 也是围绕着messy data 大致就是有个网站你知道每天有这么多访问量和各种各样的acitivity但就是不知道谁是谁 你如何尽量准确的估计这里面有多少真实的个体 然后就不停的追问你 我答到一半发现思路错了 最初的assumption根本就是有问题的 浪费了好久时间才转换另一种思路...
总之我觉得事先对公司的产品,然后online 各种engagement metrics多熟悉绝对是很有必要的 然后多思考如果某些data/metric unavailable的时候如何用另外的办法做proxy
纯技术的问题我自认为都答的挺好(毕竟当初可能错误的把绝大部分复习时间放在这一块了...),但是感觉在产品相关的问题上思维发散的不够快 需要提醒才能想到可以这样那样
好了~说多了都是泪啊~大家加油共勉吧
master 2017-10-3
技术题是自己写code计算曲线下面的面积,就是把它分成很多个长条条然后把所有长条条的面积加起来,图都给你画好了。
产品题是问你,Google地图上很多商家的信息不全,导致他们的客流量没有那些信息全的商家多,请问现在要不要去找他们补全信息?补全之后发现他们的客流量并没有上来,如何判断信息和客流量之间的关系?
pa 2017-6-27
onsite的时候完全没考sql,全部都是business case,题型基本就是让你说一个你喜欢的google的产品
video interview,面试官考的case问题,时间太久有点记不清了,大概就是google movie要发布一个coupon,问怎么run test去看这个coupon是20% off还是10% off产生的利润大,以及coupon发行几天比较好这样子,这个题就是考AB testing的,让你说一个流程然后模型用什么说说(anova这些)。然后面试官又问了几个behavior,有一个lz记得就是工作的时候你的customer来找你request一个project,你应该问customer什么问题(lz回答的是问project的big picture什么的,然后举了个lz自己的例子)。video基本就这样了,几天之后拿到onsite通知,onsite是四个人+一个lunch,基本就是business case +各种behavior。business case基本就是product metrics方面的问题。面试官说一个产品,问你怎么去define metrics,怎么做model分析。没考sql,但是lz感觉这个考什么完全看面试官心情的、、、、而且跟组也有关
2017-11-6
如果我能取得任何方面的DATA,如果判断谷歌下面各种平台上出现的广告,如何判断大家喜欢这些广告,用哪些feature比较有效之类的,这些广告是否有效一类的。这方便聊了可能得有接近半个小时吧,建议大家看看能不能找到相关的信息看看。
ds/qa new graduate 2018-4-20
1. open end question
forecasting 2022年的Google # of search queries in country A, assume all data vailable. check 1point3acres for more.
因为是开放式题,所以各种思路都说了一遍,各种model都大概讲了讲,然后对方follow up了一些问题,不难,但是最好想清楚再说。
推荐看看下面的link, 里面有讲Bayesian time series的流程,虽然我没记全,但是也大概说了说
http://www.unofficialgoogledatascience.com/
让我用易懂的非专业语言讲了一下Baysian sturcuture models.
2. ols regression y=x1+x2+....if x1=x2怎么办, perfect multicollinearity, correlation都讲一讲,对方会根据你的回答问一些问题
3. 在ols中,absolute 和 square 的区别, mean and median 的区别
Google cloud support team下面的data scientist 2018-6-27
第一轮电面是组里一个三哥ds面的,都是technical相关的问题,也不难:先简短自我介绍,然后详细介绍一个我做过的ds相关的项目,一些follow up问题,然后一个sql,top n within each group,然后同样的问题用python或r做一遍。然后是有关imbalanced classification的问题,为什么重要,怎么处理,怎么评估performance等,然后一个open question,如何预测demand?time serious还是linear regression,怎么处理时间季节等变量。
这个答的很好,我也问了几个问题跟面试官聊的非常好。面试官直接说虽然他不能当时跟我说结果,但是我应该马上会收到回复,然后就知道肯定有onsite了。
onsite的technical是组里另一个ds(欧洲人)面的我:也是上来先介绍一个ml的项目,一些follow up 问题;然后是case study之类的问题,如果想重新排序case handing order based on predicted satisfaction,如何approach?基本思路是根据历史数据建一个predictive model预测每个case满意度,如何定义Y,举例一些features例如等候时间,需求类别,agent group之类的,然后我问道Y的distribution(class imbalance),他说下一个问题就是打算问我这个,果然Y是heavy imbalanced data,然后就又是问如何handle这类问题,跟之前电面一样。然后问如果implement这个新的ordering algorithm,如何设计实验,要考虑什么因素。我就说AB test以及相关的如何选metric to measure,根据significance level,power,practical significance等计算sample size等(都是跟Udacity AB testing学的一套)。 然后问我如果algorithm implemented in real time,如何检测这个算法是否会在某个时候给出一些crazy得结果?我开始没答到点子上,但面试官提示了我一下,赶紧想到了除了看Y变化大不大还得看X variable的distribution会不会变化太大。然后最后一个问题就是如果他们想把这个新的算法应用到不同的agent segments,如何在real time中检测到结果会不会crazy,也是基本类似还要看X variables distribution。之后我问了几个问题,聊的也恨高兴。面完感觉很好。
之后是一轮case study主要考察general cognitive ability(本来安排的是director面我,因为hiring manager休产假了,结果面试时候临时换了一个,我也没听清具体职务):描述一个项目我identified and made significant improvement,准备过了答的顺利。然后都是scenarios: 如果google glass open to enterprise,how to build a support team? what if globally? is it necessary 24/7 with multiple languages? how to evaluate performance? 下一个问题:choose a free google product to consumer, what would happen if start charging? cost and benefits of keeping it free? 这轮答的也不错。
然后就是转折点,四个onsite里面唯一一个外组的人,一个纯non-technical的人(是个欧洲人,看linkedin此人之前做过职业男模,做过几大牛逼的国际时装秀),问的问题全都是如何handle conflict with colleagues and manager, different opinion with the majority, 不光如何handle conflict,还要如何encourage一个跟你有conflict的人高效的工作,等等。我知道这类问题要根据star原则讲一些自己的亲身经历,但我实在是没有这类经验,就说了一些加入我在那种环境下会怎么做,答的不是很好。雪上加霜的是,刚开始面这个人的时候,comcast维修我家附近的网络,导致断网(事后才知道),改成电话面试了。
最后一轮也是纯behavioral,是组里一个三哥technical program manager面的,还算比较常规的问题,基本都是念题,tell me a time when 。。。大概有:made a change, given a task that is not clear, worked on somthing close to finish but your manager ask someone else to take over, false impression your manager have on you, why and how did you overcome? 还有好几个记不清了。这轮感觉还凑合吧,基本都用了star原则套上了一些以前的例子。
contractor
在这里需要感谢一下我上短期班时的学长,我project不会选题,他帮我定了这个题,恰好和这个team相关,真是好幸运。
然后sql,问select, where, haveing, order等等的执行顺序,where 和having的区别,left join和join的区别,有没有null value的情况
具体的题不难,两层join,需要注意group by的处理。
然后python,用到一些pandas基本语句,加column,选column,加condition,用到一些aggregate function。。。
coding 部分都不难,hackerrank这样的网站刷到中级难度就足够了。
然后这个team需要用到 Amazon的mturk,需要html设计,怎样分析结果,如果结果和预期有很大差别,可能的原因是什么,怎么调整问卷
case study部分问的是ab test,从基本概念到sample,设计,分析结果,提建议。
Revenue Innovations Developer 2016-3-24
第一个面试官是一个白人女,是一位Revenue Insights Analyst。首先让我过了一遍简历,我挑其中有意思的part给她描述了一遍,她貌似还挺有兴趣。接着问我她们工作中的问题了,问题大意是怎么样减少Adwords的销售代表打电话给客户时出现cold call的次数。lz觉得是一个如何更好地target客户的问题,涉及到你需要哪些数据,怎么建立模型,怎么利用模型的结果来采取行动等等。lz答了可以用decision tree或者logistic regression来建立预测模型,还列举了一些应该用到的attribute。回答时间略长,有些超时。
第二个面试官是berkeley博士毕业的白人男,是这个组负责technical部分的组长。上来之后直接问了两道sql的题目,lz竟然在最后一道sql卡住,让选出最大值时竟然把order by + limit + offset这个组合给忘了。接下来他又问了编程的题目,有一组长方形,如何判断里面是否有重合的长方形?lz刷题少,后来才发现这个原来是leetcode的简单题。。。。。。lz是编程渣,用了四个角的坐标来定义长方形,用array来定义一组长方形,然后写了判断两个长方形是否重合的方法,最后在判断一组长方形是否重合时调用前面的方法。这一轮lz观察到面试官直皱眉头。。。
第三轮是远程用google doc面,面试官是干了几十年编程的须发皆白的白人老头。第一个是system design的问题,要lz设计一个从back end到front end的交流机制,即在一个客户购买某商品之后向他推荐“购买此商品的客户也购买了XXX”。lz之前完全没碰过这类问题,整了半天没弄出来,老爷爷看不下去了说你应该用Restful API design。。。然后就下一题了。第二题是sql题,接上一题的意思让找出50个商品推荐给客户,lz也是憋了好久先从sub query开始写慢慢写出来。不用说这一轮也是妥妥地跪了。
第四轮是犹太人男,也是一位Revenue Insights Analyst,是这个组负责business analytics的组长,所以问的主要是business的问题。第一题是lz之前电面遇到的题目,给你两个string让判断是否为anagram,让在白板上写出来。第二题是关于A/B testing的问题,
phd 2018-4-5 machine learning consulting
非典型DS面试,组里直接面的,没问算法概率coding,问了无数behavior问题和open question
behavior例如举例过去失败的项目,最成功项目,举例遇到难搞的同事怎么处理,为什么选择本科的学校,
未来两三年的职业规划,为什么选择做DS,这些年的职业生涯有什么成长和收获等等
开放性问题例如怎么预测YouTube 2020年的销量,如果不知道目前销量,怎么估计;
汽车制造公司怎么优化dealer库存量;
电视制造商怎么去改善营销策略,增加销量。。
怎么向不做技术的人解释统计概念这种
etc.
onsite是Office面三轮,hangout 1轮。Office三轮是Hiring manager,product manager,internal client,没问具体的技术。 第四轮hangout是DS, 问了统计,ML,coding, 问的都不深,没深挖机器学习算法
补充内容 (2018-4-6 22:18):
列了十几条问题,统计都是基础问题, e.g. normal distribution, bayesian model, 机器学习有处理overfitting, feature selection, unbalanced data. coding是用python/R做data processing、list comprehension
phd 2018-8-6
选2道比较有价值的:
Q1:抛硬币N次,得n个正面,求得正面概率(point est., CI)
Q1.1:再抛同一个硬币,求得出第一个正面所需要抛掷次数的数学期望。
Q2:捕捉——放回——捕捉模型,第一次捕到N只,标记a只;第二次捕捉M只,b只有标记。求population size的point est.
Q2.1:求population size的CI
bonus:
如何比较两个search engine的优劣。(很多人见过了吧)
phd
假设我们有一些小白鼠,然后想要测试两种药分别的影响。如何设计实验,分配sample number。
一共四轮,把记得的题目写一写吧,写以常用分布generate density 为f的r.v. 的code, 用bootstrap 计算two sample mean difference的confidence interval,需genenrate 同样分布但>c的时候code要怎么改,白板写。 logistic regression及test。各种 a/b test,每轮都有,用什么metric,怎么test, 怎么design experiment。 很多面经提的捕捉-标记-放回-再捕捉估计熊数目的题,注意这题要考虑总数不够大,用无放回来算。介绍自己的一个project,怎样估计手机电池还能用多久,多久需要更新一次model(这样的open ended question也很多,怎么样估计xxx,需要什么feature什么model需要自己想)。有一个给人做survey的app,怎么预测这个人是不是bad user (每次都瞎填)。问怎么Measure一个地区 不同人种mixed/seperated程度。听中午带吃饭的小哥说有时需要四轮都positive feedback, 有时三个觉得非常好,一个觉得不行也能过。。下周出结果,来攒攒rp,
来源:oschina
链接:https://my.oschina.net/u/4298168/blog/3745241