腾讯面试杀到了最后第三面,差不多也死在上面了,死不瞑目啊……
早想把面试的经过记录下来,现在差不多结束了,就写一些吧。
一面:
一面的题目主要都是技术方面的,大数据处理的比较多,面我的人是输入法组的,主要问了2道题,第一道考察的是分治的思想,第二道题是多模式串匹配,AC自动机啊,KMP+TRIE 树都可以做。一面还比较顺利,同学放水了,第二题说了个自动机,也不算错。
二面:
二面就不怎么涉及算法了,问了一下参加比赛的分工和困难这样的问题,问了一些项目的问题,我把GAME THEROY写了上去,他让我详细讲讲,我还真不知道怎么讲,详细地讲那岂不是要把书给重复一遍,随便扯了些,主要讲讲和老师都研究了些什么,没讲GAME THEROY的实际内容。还问我了自己做网页游戏的事,问我在其中扮演一个什么角色,遇到了哪些困难,还问了我好多网络通信的东西,O NO,我就会最最基本的socket通信,阻塞和非阻塞还分不清呢……然后还问了一些关于C++方面的,没有问语法,而是问我有没有考虑过C++底层是怎么实现的,像多态这样的东西。我说,没考虑过,确实是不会,不过很想猜一下,差不多应该是查表和函数指针。后悔没去猜一下。还算顺利,虽然很多不会的。精力有限,不可能会那么多。
三面:
很失败,至今那个尖锐的问题还徘徊在我脑中,问我为什么你在比赛中不敲代码?!因为在二面时候,我说我比赛的时候不负责敲代码,主要负责数学问题。然后竟然!!因为感觉对方的语气不算友善,然后,完了,我的心情全无。好个解释,说比赛的时候我们是三个人一台电脑,最多同时开两题,其中有个人去负责想题这样的战术是比较好的,然后我当时负责的又是数学问题,这样的问题想的时间比较长,所以我来当那个想的人比较合适。也不知解释清楚了没有,当时应该把我们TEAM是当时大连理工最 TOP 的TEAM说了好了。然后又问了最擅长什么语言,我说C/C++,原因是因为竞赛的时候就用这个,我也不好意思说JAVA,API用得还没C++的熟悉。当时2了,是不是把自己想得太菜了,怕被问到不会的所以就说了个“因为竞赛的时候就用这个”。最后问我平时都看什么书,关于IT的,我还一时半会儿想不起来,就说主要都是,上课教的那些课程的书,事实也是这样,软件工程专业的课课程已经比较全面了,上课的那些书完全够用了,如果能融会贯通,那差不多是神级的人物了。又想了想,手边一本,ActionScript高级教程,又把这本书说了,啊啊啊,悲剧啊,书看得虽然不多,但是课本之余的也是像有的,看过《自己动手写操作系统》、《MPI并行程序设计》等这样的、稍微“高级的书”,如果细算,什么NASM汇编,编程之美也看过几页。
然后,估计三面很容易挂。
总结一下,首先准备不是太充分,关于非技术性问题完全没有防备。心理上显得不自信,没有把优点展示出来,反而暴露了一大堆的缺点。做人诚实的有点儿过分,太实事求是了。缺少项目,这不是主要原因。
缺什么补什么吧,没能进,很可惜,虽然感觉自己不必在腾讯研究院的学长差多少。人这一辈子总得来点儿遗憾,我这么悲剧的人不能活得太自在。