大数据实习面经(滴滴,头条,网易,微博,美团,360,数美)
1.前言
由于本人的计划和安排,一过完年就来北京马不停蹄地找大数据相关的实习岗位,这段时间也终于闲下来了,想把自己在这段时间遭遇和经验分享给大家,以下公司出现的顺序不分排名先后。
2.面试
由于每天基本都是跑在外面面试,所以具体的细节也没怎么总结,以及对某些问的问题也有部分忘记了,请大伙谅解。
美团
一面:
非常基础知识,比如 short i=1 i=i+1 会出现什么问题
java的设计模式,java的jvm ,gc操作,年轻代,老生代,java垃圾回收方式(还问了下增量方法)
spring,mybait,springmvc居然也问了(ps:因为投的是大数据岗,他们整个部门需要后端平台开发也要掌握,所以这个也问了)
问了两个基本算法
二面:
几个算法,比如100亿数据怎么找出第一个不重复的
一个数组中有两个不重复的数据,怎么找出来
随机的指针,如何复制(剑指offer的题目)
问了一些基础知识
三面boss:
项目,天池比赛,研究生研究的方向,主要是项目细节问的很多
剩下就是聊了整个部门的架构和职责,聊得挺多的
hr:薪资,部门结构,福利等
滴滴
一面:
是一个看起来很腼腆的小哥
一上来先两道算法:
1.汉罗塔(当时心里一惊,大一谭浩强c里面的知识,有点惊讶,因为好几年没接触了,然后就努力回想,还好当时学的扎实,凭借着思想解出来了)
2.一个矩阵,求起点到终点的路径条数,当时就很开心,正中我的优势--搜索,于是dfs加剪枝解出来了,但是面试官说我想要更低的复杂度再解,我当时想到排列组合,但是自己手动推的时候没解出来,然后面试官提了一嘴,o(m+n)复杂度,脑子灵机一动,记忆化搜索+dp,之前打比赛玩过,巧妙ac.
然后问了jvm的东西,问了一些java的基础
垃圾回收机制,hashmap等
boss面:
上来就问了一个地图搜索的东西,怎么判断一个点,经纬度,在一个不规则的图形中,是否存在,当时就有点蒙了,因为这种问题很明显就是研究生的研究方向,不过我我又立马镇静了下来,用了各种方法,比如数学微积分等等啊,可是他说我都想偏了,当时以为gg了,因为这道题磕了半天了,后来问了hdfs基础之类的,还有zk选举等等,然后最后让我问了一些问题就结束了,说会立马提交系统给我发offer(确实没骗我,第二天下午hr就打来电话了)。
hr面:薪资,福利等
头条
一面:
一开始就问了我研究生的方向的研究,问了好长时间
然后具体让我说了一下项目,并且问道如果日志中存在的数据有一些并不是你要的数据,该怎么处理
紧接着问了相关的天池的比赛,问了一些基础问题
二面:
上来丢一道算法,比如一个字符串AABCC。。。这样,怎么用o(1)的空间复杂度和o(n)时间复杂度去重(答案记录个位移即可)
然后对一个场景题目,在hash的过程中,如果发现哈希表冲突变大,如果再给他冲哈希,并且希望重哈希的情况下,不允许停顿(当时是回答用fimage来进行一个数据备份,然后在rehash完事的时候发送心跳来进行ack)
再问了一些其他的基础知识和场景题,二面也面了好久
hr面:
具体询问确认相关的学历,以及问了好多压力场景题目,比如,7天的活本来定好了让你一天来做,你怎么办;领导的意见和你的不同,你怎么办;平级情况下对方意见和你不同,并且强烈认为自己是对的,你又怎么办?然后巴拉巴拉问了好多,然后说了下自己部门的架构,人员配置(什么ACM金牌好几个人,什么核心领导从抖音调过来的的等等)。说了下薪资,然后什么福利,就近补助等等。
奇虎360
一面:
一个脾气比较古怪的小哥?
上来就问了pv.uv的相关sql语句优化,不过还算简单,然后出了一道题目,两个很复杂的sql语句,只有一部分不一样,让我合并,当时有点蒙,确实sql没怎么深入研究,卡了半天,但是把思路说出来了,并且表示sql确实不怎么用,然后就放过我了,紧接着问了我,关于hivesql是否能优化,我要变的更快怎么做之类,问了下数据倾斜
然后问了些基础知识
二面:
居然来两个人,
主要讲一下天池那个比赛,说了半天,说完以后,一个面试官轻轻说了一句:不错啊(心里就感觉稳了)
然后问了下hadoop的mr,我问了一句:可以说的细么,他们说可以,于是我就把从头开始的yarn提交开始整个宏观框架给他们打通,然后微观上说了mr以及shuffle,还有ringbuf的数据结构和操作和流程,当时讲的口干舌燥啊。
hr面:
因为之前在360实习的缘故,所以很欢乐地聊了下部门结构和日常任务,然后就很愉快的结束了。
网易
一面:
是一个小姐姐
开始讲了下大致的天池比赛的流程,中间也问了一些知识,讲了挺长的时间
然后让我根据业务求一个order订单表中1。新用户和老用户的百分比 2。求每天新增的用户数(第一个嵌套查询,第二个用了倒排索引的思想,其中还让我写了相关代码的具体流程)
然后问了我对数据分析是否有了解,比如ETL等,然后我之前打过一个相关的机器学习比赛,所以说了下当时的数据清理的流程等等
紧接着问我了数据仓库的东西,并且问我一个庞大的BI项目组,根据我的理解该划分成什么样的,由于是开放题目再加上对数据仓库只是了解,所以当时说了很多对这个方面的看法和理解,比如部门架构,数据挖掘的流程等等,然后小姐姐就让我走了,我当时很惊讶,我说就一面么?(后来打听可能是实习面的好??),她说是的,然后我说是否能赶紧给我发offer,她说可以,这周就给你电话,我以为没戏,然后第二天下午面美团的时候就收到了网易的offer
hr:说了下薪资,补助,班车,聊天,扯淡等。。
微博
一面:做试卷
比如,归并排序的时间复杂度,怎么构建索引最快,linux上的负载指令,然后二叉树的中序遍历,各1亿条的数据如何求交集和并集,20亿数据如何最快取前10数据等等。
二面:
问了一些java的基础知识(JVM,hashmap,类加载机制等)
重点把试卷上的知识问了下,问了挺多,就不一一细说了,然后就让我回去等消息了。
hr:薪资,待遇等
数美(一家创业公司,拿了百度,360等的A轮融资):
这是唯一一家在年前的时候,并且电话面的公司
一面:
具体说了下研究生的研究方向,以及阿里天池比赛的流程,问了个最小生成树算法,还有最短路径
二面:
问了下mr的具体流程,问了一些java的基础知识,然后还问了别的东西,具体没什么印象了,
0.总结
除了上述的一两家,其他的都拿到offer了,总体来说还可以,因为计划的时间的紧迫,所以本人曾经连续4天面了5家公司,当然,最主要的还是想说说自己的面试感受。
滴滴,网易,360这三家给我的感觉还是不错的,比如滴滴面试的时候两个面试官都和蔼可亲并且很温柔,我最后走的时候也亲自送我出门,网易的hr在通知我面试的时候还顺便祝我元宵节快乐(因为面试那几天正值元宵节),360的面试也和蔼可亲让人没有压迫感,其他的公司也都还可以,头条的面试体验不怎么好,一下午3个面 ,从2点面到6点多,他们语速还快,等于你全身心专注打游戏了4个多小时,中间吃了3个士力架,喝了两杯水,可想而知体力的极限,晚上回去整个人都累完了,并且感觉面试官给人面试是那种压迫性的,可能也是企业文化吧,同样是4面,美团就轻松许多了,中间只喝了一瓶水。。
关于知识方面,个人感觉java这块得掌握不错,linux常规指令你得了解,并且大数据生态圈,离线和实时你都了解最好,比如基础的hadoop,hdfs,mr然后就是spark,storm,kafka,hive,flume,flink等,并且重点掌握一个,算法也得掌握,多刷刷算法题吧,别的应该没什么了,除了头条和美团的面试,感觉其他的面试难度都没达到校招面试难度。
综上,从前段时间的面试也了解到了自己在哪方面的不足,并且也了解了上述公司关于大数据部门的职责和任务,因为2月份就投了,BAT的系统还没开,所以很遗憾没去面,希望大家能对我写的东西有所收获,还是那句话,stay hungry ,stay young!