腾讯2016实习生面试经验(管理员让我发原文)
忐忑了好几天,今天终于收到深圳总部的电话,同意录用我为2016年实习生,感觉整个天空都放晴了。坐标:武汉大学,给大家说说我的面试经历吧,我投的是软件开发——应用开发方向。
一、校招流程
投递简历->在线笔试->一面技术面->二面总监面->HR面->offer
每个环节都有可能被刷,今年HR面也刷了很多人,如果你通过了HR面还是有很小的几率拿不到offer的,因为腾讯会根据面试情况给所有通过面试的人做一个综合排名,总部批审会根据排名来发放offer。这个原因可以查看腾讯实习已完成所有面试,为什么没拿到offer?
二、具体流程
1.简历
简历一定要重点突出主要项目,技能部分一定要是自己擅长的技能,C++/ Java 等一定要写详细,如果是不擅长的技能但又知道可以写了解,比如了解设计模式,了解网络编程。不会的一定不要写进简历,最终会给每一份通过的简历评一个等级,这个都会算到最终的综合评分里面的。一般情况下211以上的研究生都不会被刷简历。(我是双985,所以这一关很轻松)
2.笔试
笔试涉及到的内容很多,所以一定要准备充分,腾讯喜欢出C++的题目,继承多态,内存分配和管理等,还有很多计算机网络的知识都要掌握。最重要的时算法,推荐刷牛客网和Leetcode上的题目,《剑指Offer》这本书上的每一道题都必须要能在五分钟之内手写出来,记住是手写,不是在IDE下编译调试。笔试会有一小部分人被刷。
3.一面技术面
这一面会刷掉大多数人,我是在4月14日参加一面的,坐标:武汉光谷凯悦酒店。一面的时候人好多啊,吓死宝宝了。排到我的时候进去看到的是一个胖胖额面试官,做下来之后他让我自我介绍,下面是对话(括号里面是内心活动):
- 我:面试官,你好,我叫XXX,来自武汉大学计算机学院,我本科和研究生都是武汉大学计算机学院的,然后我是我们学院研究生会的副***,在校期间参与过XXX项目,做过XXX课题。(一分钟左右,然后向面试官点头示意自我介绍完毕)
- 面试官:好,你说的这个XXX项目,你能跟我简单介绍一下么?
- 我:好(下面是介绍项目时间。。。。。。。。)
- (面试官会针对你的项目提出很多有针对的问题,研究生一定要有拿得出手的项目,而且一定要是自己做的,有自己的深刻的见解)。
- 面试官:你跟我说一下你在研究生期间学到的最有用的一个知识吧。
- (有点懵逼)我说了一下自己选修的《高级人工智能》课程的大作业,A*寻路算法在游戏中的应用。
- 面试官很满意,让我说说STL中如何进行内存管理的。
- 这个我事先早有准备,用vector的例子来跟他说明(我看过SGI STL源码,这个内存管理模块叫空间配置器,有两级,第一级是通过C语言的malloc()等分配内存的;第二级利用了内存池技术)
- 面试官点点头,问我TCP协议的相关知识,TCP三次握手,TCP和UDP的区别等等。
- 我对答如流。
- 面试官又问:Linux进程间的通信方式。
- 我几乎是秒回的,然后我告诉面试官,这些问题我都有准备。(下面是作死环节,大家不要学我。我把自己准备的小本子给面试官看了,告诉他我为这次面试做了充足的准备,涉及到计算机的各个领域:网络,操作系统,Linux,STL源码,海量数据处理)
- 面试官翻了一遍,对我说:字写得好工整啊,那这样吧,这个本子上写得我都不问了,我问别的。
- (请叫我作死小能手,我当时的表情一定想哭)
- 面试官:请说下数据库中事物的特征。
- (原谅我没有认真复习数据库,早知道就不给他看本子了)我如实回答:这个我不知道,因为没有准备数据库的,因为我不是研究这个方向的,没有在这上面花太多时间。
- 面试官:不会啊,这个是每一本数据库课本上都有的啊(原谅我早已经把数据库忘得***净净了,建议大家还是要把数据库花个一两天时间复习一下,很有用的),那这样吧,你说一下数据库索引有几种类别。
- 我:顺序索引,B+树索引。
- 面试官:还有么?
- 我再次解释自己没有在数据库上花时间复习,所以面试官也勉强让我通过。(后来知道还有hash索引,也就是散列索引等)
- 面试官:HTTP返回码你知道哪些?
- 我:200,301,302,400,404…一口气说了好多。
- 面试官有点惊讶:这个你也准备了么?
- 我:是的啊,都在本子上记着呢?
- 面试官:你最近都看了些什么技术书籍啊?
- 我:《Effective C++》《More Effective C++》《SGI STL 源码剖析》《深入理解计算机系统》(这地方是个坑,一定要自己掌握好,因为HR面的时候还会问这个问题,我记得腾讯的价值观里最重要的是“正直”,这个应该是用来检测的)
- 面试官看了看表告诉我,这次面试到此结束。
- 我向面试官鞠了个躬,说了声谢谢。
- 面试官看了看我:下次来不要穿这种裤子啊,我是没有意见哦,其他面试官肯定有意见的。
- (下次来,面试官的话很有戏啊)我:谢谢您的提醒,谢谢,拜拜~
当时我穿的裤子是这样的:
建议大家穿正装,会给自己加分,不要以为技术类的就不用穿正装了,当通过很多人的时候,着装和颜值都是一个重要元素。
离开的时候看了看手表,一个小时,挺长时间的了,别人一面才40分钟,我硬是聊了一个小时,很有戏。回来才知道一起来的小伙伴都被刷了,好像这次实习生,腾讯想招C++研发的,不太想要Java的。一回到宿舍, 微信 查看状态显示:处于复试环节,就是初试通过了。当晚就收到短信,让我4月16日上午参加TRD二面。
4.二面总监面
做好充足准备,早早来到酒店,进入面试房间。
- 我:(双手呈上简历)面试官,您好。(坐了下来)
- 面试官看着简历:先自我介绍一下吧。(这里重复不再多说)
- 面试官又让我说我的项目,跟一面差不多。
- (这时候我又开始做死了)我主动问面试官:我听说很多面试官会让写代码啊?
- 面试官:这个我觉得是基本功啊,没必要在这里让你写,而且每个面试官都是随机问的问题,没有固定的题目。
- (现在想想都有点害怕,我当时怎么就那么***呢?真让你手写代码,你能写出来么?)我点点头,说我准备了很多常见代码,还以为要手写代码呢?
- 面试官:现在我们有一个问题:腾讯公司每个部门会经常开会,需要借用会议室,但是会议室的数量明显不够用,你能根据你学到的知识来设计一个方案解决会议室不够用的问题。
- 我不假思索的告诉他:可以用提前预定的方式,制定一个时间期限,比如七天,可以预定七天之内的空闲会议室。
- 面试官:那如果定了会议室不去怎么办?
- 我:不会的话,就把会议室释放掉,让别人可以预定。
- 面试官:你能有什么技术手段知道预定了会议室的人没有去么?
- 我问了面试官可不可以给会议室装监控,然后如果预定的会议室半小时内没有人来,就释放会议室。后来想了一想,觉得不好,就告诉面试官:这样可能有些会议是机密的,装监控不好。
- 面试官告诉我:预定了会议室由于种种原因不能去的很多,你如何用技术手段解决?
- 当时第一个反应就是:监控会侵犯隐私,传感就可以了吧。我告诉面试官:可以用红外传感器,这样如果半小时内没有检测到人的活动就释放会议室,让会议室变成空闲可以借用状态。
- (其实到这里,已经很明确了,就是操作系统进程问题,生产者和消费者问题,同步互斥)
- 面试官:那如果每次都有人这么做,借了会议室不去,资源利用率还是没法提高啊?
- 我:公司可以规定,如果借用会议室不去次数超过3次就强制一周内不能借用会议室。
- 面试官:你的这个办法是通过行政手段来解决,这个办法在华为也许很有效,因为华为都是上行下效,但是腾讯公司是个非常宽容的内部环境,对员工没有那么多约束。
- (这是我在找实习的过程中第二次听到别的公司在黑华为了,哈哈哈哈,为什么那么多公司喜欢黑华为呢?还好我拒了华为的offer,23333333333)
- 我面带微笑告诉面试官:必要的行政手段也许比技术手段更有效,也更节约成本。
- (从各方面因素考虑,面试官对我的回答还是很满意的)
- 面试官问我在校园内有见到过什么未被开发的但有利可图的商业价值?
- (我的天啦,这真的是压力面么?怎么感觉像是面产品经理而不是软件开发啊?)后来的聊天过程都很开心,因为涉及到保密,这里不再多说。
当面试官告诉我面试结束时,我还没反应过来,还沉浸在自己的话语中。面试官对我说了声:谢谢你。当时感动到哭,腾讯这个公司真的很Nice,到时候我会一一说明的。我给面试官鞠了个躬,说了句:谢谢您,谢谢您对我的面试。
自己的感觉是二面比一面还简单,而且这个面试官对我的态度让我也更加坚定自己可以过这次面试。等待总是令人焦急的,晚上睡不着觉,迷迷糊糊在4月17日凌晨1:18收到HR面试通知,看到短信就睡不着了,熬到六点多就起床了。
5.最难熬的HR面
起的有点早,我就去学校门口的星巴克买了一杯咖啡,顺便看看书,主要是把自己的笔记翻了翻,然后上网搜一搜HR会面的问题。终于遇到一个女的面试官啦!
- HR微笑地看着我:你好,很高兴这次来面试你!
- 我:您好,很高兴接受您的面试。
- 先自我介绍一下吧。
- (不再重复,期间问了很多问题,等会列出来)
- HR递给我一张纸:你最近看了哪些书?
- 这个就是一面的面试挂问的问题,一定要回答一样的。
- HR:不介意一遍写一遍接受我的提问吧?
- 我:不介意。
- HR:你最近都看些什么论坛,网站?
- 我:伯乐头条,CSDN,我在SCDN写了100多篇技术博客了。
- HR:写几个你最长逛得技术类网站。
- 我:写好了。
- HR:你写了这么多技术博客,一定有很多人评论吧?说一个最近写的感觉最好的博客?
- (这个环境一定要如实回答,因为这个太重要的,HR非常有可能去逛你写的技术博客)
- 我:C++BItmap实现,我感觉我写的挺好的。
- (差不多就结束了,过程半小时,有点心虚,因为感觉HR的城府都好深,自己看不出来)
HR常见问题:
1.工作地点
2.城市比较(北京,深圳,上海,家乡城市)
3.为什么选择上海(我首选城市是上海)
4.愿意接受调剂么(愿意,被调剂的深圳)
5.有女朋友么?(这个问题肯定会问的)
6.性格优势和缺点
7.未来职业规划
6.offer发放
HR面试之后两天状态才变成“您已完成所有面试”,等的过程非常煎熬,几乎每隔几分钟就刷一次微信查看状态,每天刷牛客网看看有没有HR面挂了的,确实有挂了的。然后终于在4月19日晚上六点状态从“HR面试中”转变。之后就是等待Offer通知了,4月21日部分小伙伴都接到了腾讯总部的offer签约电话,地点还是武汉光谷凯悦酒店(宝宝没有收到啊,宝宝心里苦),然后周四是武汉站的部分签约。
我都快要认为自己拿不到offer了,每天刷牛客网,知乎看看有没有类似情况。就在今天4月22日晚上六点半的时候接到电话了,手一直在抖。
三、面试总结
1.腾讯是个nice的公司
- 一面面试官提醒我不要穿那种随意的破洞的裤子。
- 二面面试官面试完后对我说“谢谢”。
- HR在凌晨一点还在工作,给我发了面试通知。
- HR面试完之后跟我握手了。
2.C++研发推荐书籍
- 《深度探索C++对象模型》
- 《SGI STL 源码剖析》
- 《Effective C++》
- 《剑指Offer》
- 《深入理解计算机系统》
- 《More Effective C++》
- 《深入理解C++11》
- 《TCP/IP网络编程》
- 《编程珠玑》
- 《程序员的自我修养》
这些书我都仔细看过,如果有一定的基础的花,两个月看完肯定够,期间对象模型我至少看了4遍,STL源码看过3遍,Effective系列都是当成参考***下来的。
最后,自己这段时间的努力终于有了回报,写下这篇面经希望对大家都有帮助,也祝愿大家都能拿到自己心满意足的Offer。