一不小心过了腾讯的笔试。明知没有戏,但想到当初简历写了一半懒得写直接关了页面,最后竟然邀请我笔试。怀着报答这份尊重想法,于是参加这场面试。处女面还是有些紧张,紧张到findviewbyid说了好几遍都说不出来,findview说了好几遍,就是想不起来后面是什么了。这里就不献丑了,总结一下面试的收获。
第一题,看我是做Android的,出了一个二叉树寻路的问题。鄙人确定是寻根到叶子结点是否存在value值后,告诉他我都是用c写,刷刷刷写出来了,好快,后面就糗了。确实很快,思路正确,忘记判断根结点是否为空了。另外他用JAVA给我写了函数名,用c的话在node类型后面要加*,我没注意到,他说的时候我迅速反应过来了。然后扩展了一下。这题就过了。总结就是,简单的二叉树寻路,考察了我是否熟悉数据结构方面的知识,考虑是否周全。还好没用JAVA写,用JAVA肯定会忘记写异常处理。可以看出考官的心有多细。
第二题,你有没有做过什么大型项目,用的什么架构。详细说一下你写的一个模块。如果问框架,我可以用mvc,mvp水,问架构一下子把我问蒙了,too youny too simple. 我说不知道,这里就过了。我说人员采用的可展开列表。马上就被抓住问题,详细讨论了。问我是怎么控制列表的折叠与展开,我傻啦吧唧的说是用的系统自带的,不需要我们管。我回答通过一个值来判断状态不就好了吗,too youny too simple。然后问我怎么优化的,viewHolder,一时想不起来,说一个最终类。想起来全是泪。然后讨论了一个viewHolder用在group和child里面的时候会混乱的时候怎么解决的。反正在这一块讨论了好久,东西我知道,没能表达清楚,都是减分项,顺便问题一下人员详情界面的优化由于时间不够,很快就进入下一个问题了。总结,用的什么架构其实不就是问用了那些框架吗,再细点可以问用到了哪些设计模式。我当时怎么没反应过来呢???抓住一个view,第一个问题他是想问我实现吗?显然不是,他在考我对用的view,有没有了解过源码!对用的东西是不是很清楚。问我优化也问的很细,基本上就是把源码解析了一遍。考的十分的细,也可以看出他们对代码优化上是非常重视的。
第三题是通用题,你有什么要问的吗?有啥好问的呀,啰嗦了几句,问题一个傻逼问题,是关于腾讯培训的。考官给了我回答,显然是对我问的问题,问我还有想问的吗,我嗯嗯嗯,又啰嗦几句问了一个差不多的问题。我已经不好意思见人了。他告诉我腾讯有非常完备的培训机制。。。总结,我自己都不满意我的问题。还不如说没什么要问的。这些问题可以问吗?可以,我觉得至少要到HR面,才适合问。这里我觉得应该问些技术方面的问题,结合到项目中来,问他对你项目的一些优化建议与指导那样的。一来面试官可以展示自己的才能,二来可以让人觉得你谦虚学习。
=====add=====
问题三总结补充:不要乱说话,别什么都说,例如不喜欢腾讯啊,简历写了一半懒得写呀。嘘,当我没说。
最后总结,非常失败的面试。欢迎大家发表自己的想法,总结面试经验,指出我分析的不够好或者我没能想到的地方。
最后留一句话与君共勉:无知很可怕,我和你一起无知更可怕。