腾讯实习生web前端JS开发工程师面试经历
在腾讯面试之前我申请了淘宝的前端,可是笔试就被淘宝鄙视了。这之前还有一个百度内推的,二面已经结束了,不过还真的不知道结果,人家给我答案是这周之内,如果没有过的话,还有三面,如果过了的话,直接就可以拿offer。
相比之下腾讯是很人性化的,不放过一个有才能的人。
从笔试就可以看出来,我当时网申了,但是没有申请岗位所以最后只能去霸笔。到了那里以后才发现霸笔的人真的不少啊!笔试完以后晚上就听说有同学收到面试的通知了,我那个心里着急啊,不过后面一个牛人告诉我说大家都过了,那时候开心啊!然后去网站上查看了一下自己的面试时间和地点,唉那个悲剧啊。我本人做一些兼职给一群中学生上课,每次星期天都要上到下午六点回来,面试时间居然是下午5点,我也顾不了多少了,直接请假,唉!被那个负责人批了一大堆。由于去那里的时候在路上我一直用手机看面经,有时候看着我都想吐了。下午四点多我就带上了笔记本(这里强调一下,如果是技术的最好带上自己的作品,那样可能面试的时候主动权会掌握在自己手里)赶去了华工。
腾讯一面
一面的人还真的很多呀,在面试地点看到了很多牛人,比如说我的研究所师兄,我们班的百度牛人。签到完以后我就走到了一个房间门口,乍一看,哇那么多人在排队,最后一个MM告诉我她们面试的是产品的,幸好,不然会等死人的。我面试的是前端js,大概5点左右的时候一个gg把我叫了进去,进去以后就感觉一种亲切感没有之前的紧张感,然后面试官叫我等等,估计他还有些事情处理,之后我看到我的笔试成绩丢人啊(不好意思说了)!然后面试官叫我自我介绍一下,然后我就balabala的说了一下自己对web开发的兴趣以及一些自己开发的项目,然后我就把笔记本带来的项目一一介绍给他看,似乎他只看我运行的结果。然后就开始问我一些简历上的问题.
面试官:你讲一下你的学生实践工作吧。然后我就说了一下自己担任过学生处助理、院的团委副部长,然后就是讲了一下自己的学生工作的体验和感受。
面试官:你有学过数据结构是吗?那我就问你一些问题。
然后他问了我一些基本的:二叉树是什么、平衡二叉树是什么、有哪些排序算法、讲解一个你最熟悉的排序算法、还有就是二分查找。
然后我就向面试官借笔,给他说了上面的问题比如说什么是二叉树等,然后在讲解快排的时候我囧了,自己给自己出难题,我列举了一组数据然后有两个相同的数字,忽然忘记相同数字怎么处理了,最后我就说去掉相同的,然后给他讲解了一下基本思路。他说:嗯嗯,最后就那样说了一下,这些还是很基本的东东的,最后就没有问其他方面的问题了,大概整个面试时间为40分钟,然后我就很安静的走了。
腾讯二面
一直都在等二面,等的我好着急,大概是第二天晚上左右吧,听到有同学说收到了二面的通知了,我那个心里着急啊,难道又被鄙视了,感觉自己还行的,我就一直等到晚上11点30左右,看到手机来短信了,一打开那个高兴啊(下午17:20华工大学城酒店),然后又是一阵翻看面经。27号我怕路上堵车就早早的到了华工,一直在门口等。在外面的时候偷窥了一下里面,发现那个面试官好严,而且一看就是那种技术总监类型的人。门口遇到两个华工的同学,他们有一个同学被刷了,另外一个同学也来面试前端js方向的,听他们说我们这个岗位方向的二面的同学只有6个人,顿时感觉压力好大啊。差不多4:30的时候忽然接到一个网易的电话,叫我去网易大厦笔试,当时看到电话还以为是百度的呢。当时在外面的时候很紧张,刚开始听里面华工同学介绍还以为这一面不是技术面,不过后面告诉我这就是技术面,而且很严格。里面有两个同学,一个同学在面试,另一个同学一直在写代码,似乎他做不出来一直被面试官压着。5:30左右我进去了,开始很有礼貌的寒暄了几句。然后他告诉叫我自我介绍一下,这里我就是根据一面的时候的介绍说了大概3分钟。他就开始问我技术问题了。第一个,PHP是怎么跑起来的。刚开始我那个纠结呀,难道是问我PHP在历史上是怎么跑起来的?应该不会吧,然后我就问了他说:您说的是PHP是历史吗?然后他就说我问的是:如何运行起来的。这下我明白了,我说:通过配置本地服务器apache+wampserver,然后这个问题就大致过了,很囧的是这里的apache读错了。第二个问题:你认为java和javascript有什么关系吗?这些我还是明白的,我说:java和javascript是两种完全不同的语言,例如javascript数据类型只有number、string、object、array而java就有int、folat等等,javascript是一种web前端开发的脚本语言,与java完全不同。第三个问题:你有一个项目是“中山大学三余社网站”,能不能介绍一下。这个东西,这个项目我还是很清楚的,毕竟这个项目是我和另外两位大牛做的,然后就balabala的说了一大堆。最后他就要我写代码,题目是这样的,如果有一个双相链表,你如何确认这个双相链表是否断链。对于这个问题我还是真的有些糊涂,然后就问题,断链的意思,是不是说,这个双相链表断了一条还是两条都断,他说:不知道。唉,当时那个囧啊,那只有自己好好想了,开始我认为断链了就很有可能是指向了NULL,所以我分别从左和右遍历链表,找到最后一个指向空的指针,如何是从头开始遍历那么最后一个如果不是双相链表的最后一个元素那么就说明断链了,从右边开始遍历,如果最后一个指向空的指针不是head那么也是断链了。给他看了代码以后,他说:你怎么知道,断链了就一定指向空的呢。当时我好纠结啊,最后我想到了,分为三种情况,1,next指针断开,指向其他指针;2,pre指针断开指向其他指针;3,next和pre同时断开。分为这三种情况以后问题就得到解决了。最后就是问了我一个数据库的问题,他说如果海量数据的时候你应该用什么方法来处理查找的问题。然后我就说:使用hash表存储。他就说:怎么用hash存储和查找。我说:使用一种相应的规则定义hash,然后根据输入插入到数据库中,查找的时候也使用hash查找。然后他问我:如果遇到hash冲突的话应该怎么办。我就说:如果两边没有记录那就插入到两边。显然他对这个不满意,然后我就说可以再次使用hash,然后他就没说什么啦。最后他就说:那就这样吧,你们是不是还有三面的?但是那个心里挺高兴的,我说是丫。然后就很安静的走了出去,第二天下午5点就收到了三面的hr面试通知。
腾讯三面
很纠结,三面的前一晚上一直到3点都没有睡着,早上6点钟就醒了,不过人还挺精神的。差不多10:20左右到了华工参加三面。三面是HR面试,大家都在想HR会不会刷人,都很担心,我自己也是非常的担心。在门口也遇到了很多熟人,比如说嘉聪、沛轮小俩口、二面的一个华工的同学、信科院的一个同学。进去HR面试的同学出来以后都是满脸的轻松愉快,当时紧张的心里倒也平静了许多。大概11:00左右吧,两个面试产品的同学在三面挂了,想参加HR面试,可是前台签到的JJ不告诉他们产品的面试地点,当时也觉得他们产品的真不容易啊,1000多个人笔试只招个位数,那个竞争压力真大啊。11:30的时候轮到我面试,我进去以后,轻轻的把门关上(这个细节大家以后也稍稍的注意一下,是看以前师兄师姐面经看到的)。之后他同样让我自我介绍,我又是根据一面、二面的经验简单的介绍了一下。然后他就开始问我,你对腾讯了解多少?我就借用腾讯的Webqq发展过程,简单说了一下现在的webqq已经深入人心,而且由最初的基本功能上升到现在PC化的web网页,实在是令web开发的技术人员佩服。他继续说:你还了解腾讯的哪些产品?我说:腾讯的QQ空间,有一个板块专门显示一些和你相识度非常大的用户,可以很方便的让用户联系到那些同学、朋友,另外一个就是腾讯的输入法(这个也不是很清楚,只是简单给他说了一下)等等。他说:你开电脑的第一件事情是干什么?我果断的说:登qq。HR:你上qq隐身多还是在线多。很果断的说:隐身多。HR:你上qq都隐身,为什么还要登qq呢。我:首先因为我经常的会使用腾讯的微博,偶尔发一下微博,还有就是经常的会逛逛qq空间,查看一些同学的签名啊,日志啊,还有就是因为隐身的时候会偶尔有人找我。HR:你是哪里人?我:江西人(很干脆说完了)。HR:那你在大学期间,兴趣爱好是什么呢?我:我喜欢玩玩qq游戏(四国军旗、斗地主)、打篮球、看看格言、听听音乐等等。HR:那你为什么要来腾讯呢,是不是腾讯工资很高啊?我:不是的,我主要是想通过实习能够学会更多的知识,来提高自己的能力,能够通过在高技术的公司学会更多技术方面的东西。看着他点头,感觉应该回答的还行。他还问了我一些技术的问题,HR:你是不是开发了一些项目,能简单介绍一下你们的分工是怎么样的吗?我就简单的介绍了一下。HR:你上网的时候经常做些什么事情呢?我:经常的看一些最近的新闻,比如说qq就会经常的弹出一些最新关注问题,还有就是查看一些资料啊,看一些论坛发布的最新的技术问题。然后大概就是这么多,他还问了我有没有女朋友,女朋友是干啥的。差不多20分钟的面试时间吧,感觉总体来说还是比较轻松的,不过在面试的时候最好就是不要说假话,因为HR阅人无数,就不要在他面前显示什么啦,最好就是有什么说什么。基本上不会问你技术问题,大部分都是一些你的性格爱好,以及对于腾讯的了解之类的问题。
虽然offer还没有拿到,不过这些天真的很不容易。写出来只是希望大家以后有个参考,并不是显摆,说我有多厉害。我们班的牛人是很多,不过我真的不是牛人,我只是菜鸟一个。你们都懂的。