登录站点

用户名

密码

我终于面试上了腾讯Ir,给大家分享下经验

已有 900 次阅读  2017-08-17 09:19

我正式收到了腾讯offer,马上我要去深圳的腾讯总部了~

  从开始想到申请腾讯工作,一直到接到lily通知我拿到offer,过程还是挺曲折的~我只是想记录下这段经历~

  腾讯的面试是我第二次的正式面试。第一次是以前写过的51job.com重庆200强选拔赛中的面试,那次貌似碰到一个不搞技术的人来问我很多非技术的问题,我比较郁闷,他比我更郁闷。。。

  网申

  按我的记忆,以前网页上写明了,在全国招30名技术类到深圳的腾讯总部实习。我看到这个要求,感觉自己还蛮符合的(至少不像msra的要求那么高,在此羡慕一下sixsix),于是我进行了网申。在线填完简历之后,迟迟没有提交,因为面对繁多的职位不知道选哪个好。于是我想到了在腾讯工作的晖哥,咨询他老人家当然是必不可少的~

  牛人都是很忙的,晖哥也不例外,不过晖哥仍然愿意在繁忙的工作中为我出谋划策。在网站上可以看到腾讯的招聘计划中,没有任何一个职位是在重庆招聘的,这让我感到希望渺茫。如果这个时候我仍然执着地等待网申的结果,可能我就与腾讯无缘了。。。于是我选择了:

  https://www.likeshuo.com/Landing/P/L301?utm_from=pwm98

  内部推荐

  事实证明,网申也没有任何回音。晖哥让我把电子简历发给他看看,耐心地看过之后,晖哥说希望我能来他的组工作。我也想啊。。。不过这件事不是晖哥就能说了算的。。。晖哥把我的简历交给他们部门的hr老大,然后让我等消息~

  二面

  6月4日,晖哥告诉我,一面通过了,等端午节过了准备二面。我跟晖哥说,看来腾讯对实习生的技术要求不高啊,一面还是比较简单的。后来才知道,bt的在后面。二面过程是我目前见过的第二bt面试(第一bt的当然是msra的面试)。幸好我还是认真准备了的——我在网上搜以前腾讯招实习生的笔试面试题,结果一个都没有,只有招员工的时候的笔试面试题,我就按这些题准备,思考腾讯可能考察哪些方面,后来确实派上了些用场。这告诉我,无论认为多么简单,面试一定要有准备。

  6月17日,一个陌生的女人闯入我的生活,她就是lily。她打电话告诉我恭喜我通过了初试,希望我能参加在成都进行的复试。我问了一下lily,为什么要去成都,不来重庆面,她说因为重庆地区通过了一面的就我一个人。。。我彻底绝望了,看来不得不去一趟成都。我问二面是谁来面,她说是一个部门的主管。我又问二面主要是什么问题,她说还是以技术面为主。晖哥建议我准备一下算法。

  6月19日早上,我在川大旁的一个酒店12楼的客房里面试,lily给我的schedule是9点到9点半面试,实际上从9点面到了 10点45分。在这1个多小时内,面试官的问题密度灰常大,覆盖面之广,技术难度之深,在本人短暂的职业生涯中史无前例。他问到了unix/linux 或 windows 开发平台下的 c++,cgi,jsajaxcssaspflash,java ee网站开发,java me手机开发,嵌入式,3d渲染原理,3d游戏引擎,网络分层,tcp/ip协议的原理,winsock编程,服务器集群,分布式,web服务器原理,数据库设计,数据库压力测试,搜索引擎技术,基于.net/c#的web开发,大并发访问网站的架构设计,软件工程,算法和数据结构。基本上把我熟悉的,我了解皮毛的,和我听说过的,我没听说过的,全部问了一遍。面完出来之后,我的头都是晕乎乎的。。。

  二面的面试官人很好,我没回答好的问题,他有时候会给我解释一遍。他把我的每个项目都看了一下,针对每个项目都有至少一个的比较有深度的问题。因为问题太多,具体的印象比较深刻的问题能想起几个就写几个:

  让我把dreambook软件的系统架构图画出来,问我系统架构图、功能模块图、用户流程图的区别。(这个比较简单)

  哪个部分是dreambook的核心,为什么?

  下载一本书的所有网页后,生成一本书的目录、每章、每节之间的链接,这个树形结构分析的算法是怎样的?

  去除每本书的网页的广告内容时,如何判断哪些是正文,哪些是无效信息?(模糊匹配算法)是否是基于html标签的?(是,但是不全是)是否是精确匹配的?(不是)

  如何做用户需求分析?是不是需要准备什么?举例说明。

  对baidu和google搜索引擎的原理了解多少?我们的搜索是搜索全文还是搜索摘要?(搜索全文,举了lucene的例子说明全文搜索原理)搜索量很大时,如何保证性能高效。

  有没有在linux下做过c++编程?开发平台是什么?写出该开发平台编译一个test.c文件的命令。

  有没有开发过3d游戏引擎?做了一个什么样的游戏?这个游戏的特色在哪里?

  osi 网络7层结构是什么?详述tcp连接3次握手的过程,如果在vc下开发,这个过程分别对应调用哪些windows api?(我发现这个问题是腾讯对所有人必考的问题)设计一个异步传输模式下的数据包结构。

  对java ee框架下的spring、hibernate、struts了解多少?对一个 web服务器的原理机制,比如apache服务器的原理机制了解多少?iis呢?

  叙述当一个用户登录qq时,与腾讯的服务器进行连接的过程。需要经过几层的路由?如果要自动选择最快的服务器进行连接,应该用什么方法实现?测试用户与腾讯的多个镜像服务器之间响应时间,是由用户发起测试还是由服务器发起测试?(服务器)采用什么协议测试?(icmp)

  对于一个访问量很高的网站,性能瓶颈在哪里?可以做哪些优化,架构如何设计?

  如何探测一个网络协议漏洞?发出的探测数据和接收到的响应数据是怎样的?如何判断是否存在漏洞?

  最后一个问题印象最深,他说最后一个问题很简单(他笑),就是让我写一个双向链表的插入删除操作,要求1:每次插入删除之后,链表里的元素 ——假设是int——是按升序排列的;要求2:必须用c++实现 2个类cnode和clink,clink类里面封装add()和delete()方法。时间是20分钟,他要求我在这20分钟内,从12楼坐电梯下到1 楼大厅,在大厅找个桌子,用纸笔写好,然后上12楼交给他。

  我在xxy寝室里写模拟文件系统写到4点睡的,写了一晚上的指针操作,这个问题我还是比较熟悉,按时交给了他。代码有优化的余地,不过没来得及优化,跟他说明了一下。注意的地方有2点,一个是指针操作的时候,删除哪个,连上哪个,操作顺序安排容易出错,要细心,还有就是添加和删除的结点位于第一个和最后一个时,处理方式有些不同。

  最后他问我有没有什么问题,我问他什么时候给答复,他说下周内。然后他就叫下一个面试的同学进去了。

  面完了才知道,这个面试官是晖哥所在部门老大的老大。。。大大牛啊~

  结束,新的开始

  回来之后跟李祺讨论了一下面试题,李祺和潘玉云都说bt。其实msra的面试题才bt,举个例子,这是李朋的一个电话面试题,比如 1~1000这1000 个数存在计算机中,随机删除其中一个,让你找出删除的是哪一个?这个问题是不是更bt?之所以举这个例子是因为我能答出来,李朋电话面试的其他问题我是一个都答不上来。。。可见msra面试的bt程度~

  感谢:晖哥(宇宙无敌霹雳感谢);超人、李7、sixsix(这个都不用说了,无敌的 dreamx小队,呕液);爹娘;xxy(自己对号入座);szd(自己对号入座,too);518寝室的兄弟伙们。

  希望能够早点去实习,深圳,海边。。。哎,还是先把课程设计做了吧。。。

  面试官提的问题:

  一面首先说看过了我的简历,让我从做过的项目里选择一个来谈谈。我选择了 dreambook,这是我们dreamx小队最引以为豪的项目,经历过msra大牛们的提问,已经向不知道多少人展示过。他问了我一些很常规的技术面问题——介绍一下这个项目,我们开发团队有几个人,开发了多久,如何分工,我在这个项目中担任了什么职责,用到了一些什么技术,软件的架构和某些流程是怎样的,软件的缺陷和前景在哪里。

分享 举报