腾讯实习生笔试到面试总结 腾讯实习生笔试

腾讯实习生笔试(腾讯实习生笔试到面试汇总)
导读:快放暑假了,很多读者还是学生,找实习 。好的公司只能说是好的起点,但不能代表全部 。公司强大不代表个人一定强大 。小公司也有大牛,不羡慕,虚荣,踏实 。今天我想分享一下我获得腾讯实习生offer的经历 。
个人信息我是武汉大学计算机学院2014届本科生 。写这篇总结的时候我大三 。本来我们班规定有固定的实习,但我还是想在国内顶尖的互联网公司有所影响,于是抱着试试看的想法参加了几家公司(腾讯、阿里、华为)的暑期实习招聘 。腾讯申请的是后台开发实习生的职位,阿里和华为申请的是Java开发实习生 。
本文的目的在这里,我想记录几个公司的暑期实习生招聘流程和一些常见问题 。首先,我想总结一下我的经验,为将来可能的面试做准备 。二是想给弟弟妹妹们一个参考,让我在准备面试和笔试的时候有的放矢 。【文末有总结面试资料,记得收藏!】 。
先简单介绍一下华为和阿里的情况 。(如果你只想看腾讯,就跳过这一节 。)
华为:华为在武汉的实习招聘面试是在华为武汉研究院(离三环很远的地方) 。前期需要在华为校招官网填写简历,过一段时间(两周左右)就会收到书面通知 。
华为笔试是三道编程题,总分600分 。分数好像分别是100,200,300,时间一共两个小时 。我觉得个人题的难度不是很大,但是好像不是那么容易就能把所有的都做对的 。我在完成笔试后一周内收到了面试通知 。(不过也有同学没有参加笔试就收到了面试通知 。如果系里推的话估计可以免笔试 。)个人觉得华为的笔试好像没刷人,因为我同学只要填了简历就有面试资格 。
笔试结束后,华为只有两轮面试 。第一轮是技术,第二轮好像是HR面试 。然后时间就在同一天(大概是考虑到地方确实比较偏僻) 。我花了大约30分钟完成了两轮面试 。技术面试的时候,主要问了一些关于项目的问题 。主要问题是:
哪个项目给你印象最深?跟我说说 。
能给我演示一下hashmap的结构吗?
你用过Linux吗?你通常用Linux做什么?有哪些常用命令?
你通常使用什么数据库?
你用过云服务器吗(我说用的是腾讯云...)
你没有什么想问他的 。
反正我感觉技术方面比较简单 。如果我做过项目,对自己的项目真的很熟悉,问题应该不大 。而且我感觉技术方面好像也没问太多技术细节(相对于腾讯和阿里) 。
接下来是HR面试 。刚开完技术会,坐下前通知我去HR面试 。HR面试个人感觉主要是做一些背景研究 。主要问题如下:
告诉我你最近的项目 。
你的成绩怎么样?你的班级是特殊班级吗?
你是哪里人,在哪个高中,高中成绩怎么样(不知道为什么非要问高中...)
家里有人在华为工作吗?
你认为你个人最大的优点是什么?
总的来说,我感觉华为的面试比较简单,涉及的技术问题不多,更多的是让我谈谈项目相关的事情 。腾讯和阿里的技术方面会涉及到很多技术问题,下面会一一介绍 。
文末有总结面试问题,记得收藏!
阿里:阿里的推送和面试早在3月份就开始了 。然后阿里的内推也是最多的,不过,我还是跪了(无奈 。wf)
阿里还需要在阿里的校招网站上注册,填写简历,申报职位 。然后过一段时间,我会收到一封邮件,要求我完成综合素质测评和编程测试 。这个综合素质评价测试真的什么都有:阅读理解,逻辑推理,管理协调,其他都有 。总的来说是智商情商和领导沟通能力的综合测试 。时间大概一个小时 。
然后,大概过了一个星期左右,从杭州打来了一个电话 。我以为在淘宝买了东西,接电话才知道是面试 。没有做太多准备,所以没有给出一个理想的答案 。上午接电话,下午官网状态显示已被拒绝 。提出的主要问题是:
介绍一下你的项目中使用的这个Dubbo框架 。(这是我实习期间的一个项目 。事先没有做任何准备,也不太了解,只能说不知道 。。。)
解释Hashmap是如何实现的 。
你之前的项目有哪些缺陷,如何解决?
如果给你足够的资源和技术,如何优化你之前的项目?
如何实现快速排序?
由于阿里的采访时间太长,记不太清楚了,但通过这次采访总结了一些经验,也对我后来的采访帮助很大 。
简历上的东西你一定很清楚 。面试前一定要过一遍你做过的项目,你负责的部分,你有什么创新,你有什么问题 。这些都需要重新审核 。
要知道一些基本的算法和数据结构,比如快速排序的思想,链表结构,哈希原理等 。,这些都有可能被面试官问到 。
文末有总结面试问题,记得收藏!
腾讯最后,说到腾讯,腾讯的招聘给我的感觉是骄傲 。好像腾讯为了面试租了一整个酒店(光谷君悦酒店),而且好像每年都是同一家酒店 。据说酒店还是五星级的 。
先说简历投递 。腾讯的实习生招聘是从我们年级组了解到的 。大约是在三月中旬 。当时一个学长把我推进了里面 。我把简历发到学长邮箱,然后在腾讯官网填了个人简历和各种信息,但是一直到4月4日都没有人打电话给我面试 。(这通常是因为简历在推送阶段被刷了 。我们班两个大神三月份接到电话面试然后顺利拿到了offer 。)
在推送阶段被刷的时候,我不得不老老实实的做笔测 。腾讯的笔测好像用了两个小时 。在正式笔试之前,有一个模拟测试,让大家熟悉试题和环境 。
腾讯考试题型分为两类:选择题、简答题和编程题 。选择题范围很广,数量好像是30个,一个小时内做完好像有时间限制 。包括c++,Java,数据结构,网络,Linux,计算问题,还有一些我记不太清楚的东西 。
反正我感觉有很多事情是我做不到的,但是我个人感觉做这种笔测的时候有时候真的做不到很难的数学,有时候推理放电就能做到,不然我感觉在有限的时间内基本不可能做完 。然后是四个大题,两个简答题,两个编程题 。一个是关于盘间计算空 。我好像没做成,只是瞎写的 。那么第二个问题就是一个简单的算法问题 。我直接写了代码放上去 。第三题是一个二叉树排序平衡的问题,不过好像当时题错了,后来就没写了 。最后一个问题好像是打印格式字符串的问题 。比较确定的是,有两个问题2和4 。问题1和3就写几个字然后交上来 。
不过感觉笔试没考好,但是一周后拿到了面试通知 。(好像笔试不会刷人,我认识的同学好像大部分都是参加完笔试才拿到面试机会的) 。
面试分三轮,一轮是技术,最后一轮是HR面试 。
另一边的面试官是个男的,个人感觉像个领导,因为穿着正式,但一般应该是个技术员 。首先让我自我介绍,然后问我如何实现一个C++多态性 。然后告诉面试官我不太懂C++,平时用Java 。然后面试官开始问我关于Linux的问题:Linux进程和线程的区别,Linux进程之间的通信方式,Linux的文件系统,Linux进程的创建以及创建后父进程与子进程之间会发生什么 。
问完Linux,他问我Java:我来介绍一下Java的垃圾收集机制;在纸上写一个服务器通信的例子程序 。我写的时候还写了一个处理线程的类,然后加了一个条件符号终止程序(感觉面试官可能更看重你考虑问题是否全面);然后他问我关于hashmap在Java中的实现(好像经常出现这个问题) 。
接下来我问了关于网络的问题:TCP的三次握手四次挥手画个图并解释一下,说http头中的四个属性,说Http有什么方法等等 。写作篇幅过长,影响阅读 。有兴趣阅读的朋友可以私信【采访】获取完整信息!
后来面试官让我10分钟内在纸上写一个阶乘程序 。当时想到不能直接用int或者long,必须是string才能输出结果,然后就关于如何计算的问题僵了大概一分钟 。后来突然想到之前写的一个大数加法程序,然后想把所有阶乘转换成加法循环 。详情请参考我的代码 。(如果测试过应该没问题)
为了不影响阅读,可以私信【面试】获取代码!
【腾讯实习生笔试到面试总结 腾讯实习生笔试】
没想到的是,两天后,我竟然收到了两份通知 。
二是比较胖的面试官,一般是部门领导,但我觉得他更像一线程序员一样随和,哈哈哈 。上去的时候,他给了我一张纸,让我写一个双链表,删除一个节点代码 。在合理的纸上写代码的体验真的很差,总觉得这么简单的问题可能会有些漏洞...我想了一分钟然后想不出有什么漏洞,然后就写完了给面试官看 。面试官让我解释一下我的代码,然后问我有什么要补充的 。通常,这意味着代码中存在我没有考虑到的错误或情况 。果然我只关注了被删除的节点是头节点的情况,没有考虑被删除的节点是尾节点的情况 。加了一个判断条件后,我给面试官解释了一下 。然后他给我看了一个关于C语言中变量分配的问题空 。是关于union中int,double,char几种类型的数据,然后问sizeof(union)是多少 。
当晚不久,我收到一条短信,通知我第二次去HR 。我真的感到很幸运 。HR面试基本不涉及技术问题 。他主要问了我其他方面的问题:你觉得自己有什么优点和缺点,从你的项目中学到了什么,有没有例子证明你刚才说的个人特点 。然后他给我介绍了腾讯的文化和价值观,然后给了我一些建议和面试时应该注意的问题 。总的来说,我感到轻松愉快 。最后他起身送我出了面试室,让我感动 。他还问我是否得到了另一家公司的实习机会 。我不知道怎么回答这个问题,但是我如实回答了我参加了华为的面试 。
腾讯的面试完成了,给我一种比较人性化,比较轻松的感觉 。面试官也觉得亲切友好,一些小细节真的能打动人 。
最后放上我自己的一些见解和总结,分享一下我总结的采访资料:面试时尽量保持轻松的心态 。最好能表现出一点自信 。最好不要侮辱自己,贬低自己或者说我连一个问题都不会想 。你应该尽力去思考和解决你不能遇到的问题 。如果实在不行,可以老老实实告诉面试官,我没学过,记不太清楚 。同时,不要太纵容或者和面试官开玩笑 。室友只是和面试官开了个玩笑,然后就挂了 。毕竟我们是在面试,不是饭后聊天 。
面试结束时,如果面试官问你有什么想知道的,如果你真的没有什么问题要问,可以让面试官给你对你之前面试的评价和建议,这也有助于你的提高;或者请面试官就一个你之前没有回答过的问题进行指导,可以说明你更渴望学习;或者你可以问面试官,你申请的职位除了技术能力之外,是否还有其他要求,这可以说明你对这个职位感兴趣,并且愿意为之努力 。
只是感觉面试官让我在纸上写代码的问题大部分都不是很难,但是可能会有漏洞 。比如大数的阶乘溢出,双向链表头尾节点的特殊处理等等 。感觉面试官主要考察你的代码和算法能力,同时也考察你考虑问题是否足够周到,面对真实的开发环境,代码的健壮性是否足够强 。
对于应聘开发岗位(尤其是Java开发)的同学来说,Linux的基本原理,数据结构,网络中的TCP和UDP,hashmap,Java的垃圾回收,Java的内存模型,Java的多线程安全,http的相关知识,在准备面试和笔试的时候几乎都是必修的,大家要认真重点复习 。
并且试着对面试官诚实,因为一旦你被发现说谎,那就注定了,所以不要假装知道你不知道的 。
最后,保持平常心 。如果能通过面试,就继续为下一步努力 。如果不能,就坦然接受 。然后继续尝试其他机会 。毕竟世界上不是只有一条路,机会总是留给有准备的人 。
很久没有手工打这么多字了 。今天到此为止吧 。可能还是有一些不完善的地方 。想到了再补充 。希望能给后面的同学带来一些帮助~记得多关注!
面试获取方式:
转发+关注我,后台私信回复【面试】获取面试资料(助你面试无忧)
合理利用自己的每一分每一秒来学习和提升自己,不要再用“没时间”来掩饰自己的懒惰!趁年轻,努力拼搏,以后给自己一个交代!

    推荐阅读