腾讯面试经验介绍
我有计算机科学硕士学位。我的研究方向是三维图形与建模。我对游戏非常感兴趣。我是游戏玩家(不是网游),所以准备方向是腾讯游戏的工程师。
第一轮:笔试
Qq的笔试题目还是很有特色的,侧重于数据结构。Unix,智商,数据结构都是很基础的知识。如果不能,那就是你该检讨自己的时候了。Unix部分比较陌生,但也不是很难。在Unix中这是一个非常基本的东西。这些事情在采访中被反复提及。智商,比较难,尤其是最后一个。题目大家应该都知道。通过笔试应该是50分左右,分数还是很宽松的。笔试其实很重要,因为最后的笔试试卷和你的个人材料是装订在一起的,每个面试官都会看到。所以成绩差的即使进了面试也很难走远。
第二轮:技术面
这个和你具体选择的方向关系不大,主要分为研发、测试、基础研究等方向。我面对的是研发方向,感觉是纯软件,所以对计算机专业的学生,尤其是从事网络、应用软件、数据库等上层软件的学生,还是挺有好处的。面试官把问题和代码结合在一起。
我的问题是:自我介绍和项目介绍,两者都是必须的。在介绍项目时,面试官会深入提问,会问一些关于某些细节的问题,比如数据组织、算法复杂度、数据库连接等。其次是专业面试,题目都挺经典的,大致是:流程和线程;Unix和windows进程间通信的主要方式和系统调用;描述TCP/UDP协议,它们的应用,TCP的三次握手,滑动窗口,超时重传;HTTP协议和COOKIE机制以及一些COOKIE问题(这个我就不做了);让你设计一本关于PDA的交流书籍。你将使用树还是散列?从这个问题会衍生出一系列关于哈希、平衡数、红黑数的问题。什么是面向对象多态?设计一个多态的例子。C++的虚函数实现机制。这个问题并不难,
但是你的答题手段和技巧很重要。几点经验:自信,敢说精通,熟悉这些词,一定要毫不犹豫的说精通自己的强项。回答问题之前,把语言组织好,不要说的头头是道,逻辑不清。问题必须全面回答。你说得越多越好。如果能告诉相关方面就更好了。
做技术工作的时候,很重要的一个问题就是你要清楚的知道自己的优势和特长,尽可能的把面试官引向你的方向。我的专业是应用软件开发和面向对象建模,所以每次自我介绍的时候,我总是强调我的软件工程师很优秀,对软件开发流程很熟悉,所以在软件开发过程中有很多问题要和很多面试官讨论。你必须表现出你的技术专业素养(你是技术型的)以及对公司和职位的热情。
一方面,我向面试官展示了我在软件开发方面的很多技能,以及我对游戏的热爱。于是,当面试官祝贺我说“我相信你应该能进腾讯”的时候,我就知道这个offer应该有希望了。
第三轮:团队合作
这个问题大家应该都知道。四副扑克在塔里放鸡蛋。我认为这一轮只是形式。只要你技术表现好,就不会刷这一面。八个人一组,我们做的很成功,两个实验都完成了。但最终,只有两人进入了第三轮。而且上次HR面试的时候,我偷偷看了一下我的面试记录单,第二面是空的,一点用都没有。
第四轮:继续做技术。
经理的技术面很硬,腾讯的组织很烂,很多人等了很久才开始开会,也有面试官因故离开,结果这边很多人都很郁闷。我的脸据说是互动娱乐部的一个经理(HR说的),问题很无聊:进程和线程,TCP/UDP,排序算法(我把我知道的排序算法和它们的时间复杂度都告诉他),Windows的内存寻址方式,Socket中的阻塞方式是干什么用的,你认为的软件开发模式和对你项目的一些评价。最后,程序问题,写代码,很重要。如果做不到或者做错了,估计就没机会了。题目给定一个字符串,比如abc123de4f67,找出其中所有的数字字符串并存储。比如你要找出123,4,67,把它们放在三个char数组里。这个话题很经典,相信很多人都知道。
第五轮:HR脸
保罗决心做坤,淘汰率很高。据说是一半。HR面无非就是谈工资,谈你的家庭,给你发offer,你来不来,可能根据你个人情况谈点别的。我和Paul聊了很多网游的事情,包括网游的发展前景,一些成功的网游,一些有竞争力的公司,一些游戏引擎,介绍了我要去的部门和岗位。总之你要更专业,更自信。
之后,发盘,签合同。确定截止日期是xx,xx。
技术公司的一些总结:基础全面,重点突出,专业对口,满足这三点,就一定能找到好的技术岗位。如果你能对自己想从事的行业(主要公司、现状、发展趋势)有清晰的认识,那么你在求职中就会立于不败之地。
首先感谢腾讯给我这么长的面试过程,很好的锻炼了自己。谢谢你给我这么长的期限,让我可以选择和思考。
感谢面试时认识的很多朋友。