我本来报的岗位是企业事业群,后来把我分配到了技术工程群
希望对明年找工作的朋友们能有一点帮助
一面
21号 大概1小时 面试半小时 聊天半小时
1 二叉树的查找
我大笔一挥,在纸上写下了下面的的代码
面试官看了一眼说,恩,左边不是空就去找左边,恩..恩..好,然后就把代码放到了一遍,开始聊后面的问题。
但是等我回来一看,感觉还是不好,看下面的代码:
2 都用过什么数据结构
队列,说了一下阻塞队列,还有循环的实现方式
hashmap,说了entry数组,hashcode与equals方法还有头插发
3 hashmap有什么作用
这个问题当时把我给问傻了,我没听明白面试官的意思,他看我没听懂就补充了一句,如果没有map那数据岂不是得一排一排一个一个的放?
4 性能提升上具体怎么做
我把李智慧老师的<<大型网站技术架构>>里面的性能篇说了一遍
5 只能看下级的问题-->
这是我另一个项目的小问题
6 家在哪? 腾讯在深圳是否愿意来?
7 java c++问题 腾讯都是java,你怎么看?
强调语言只是工具,不要限制自己,我能写java不代表我只能写java!
然后我给面试官看我我做的ppt
话说这个ppt,只是一个小东西,是面试官说:OK,我的面试就到这里了,你还有什么要问的吗?之后我才拿出来的,这个东西不可喧宾夺主。
我的ppt下载地址,
http://pan.baidu.com/s/1pLwARQN
然后面试官又和我闲聊了一会
1 精细 粗放
在工作中,有时候最先考虑的是怎么赶紧把项目做完,只要性能,扩展性还有所使用的技术的核心原理,往往不是那么重要。
2 关于语言
我们聊了一会语言的问题,面试官的意思是说,我们要发现问题,分析问题,解决问题,而语言只是最后的实施,当你的级别高了之后,你就不会太关注具体的实施了
3 要站得更高 发现还没有出现的问题
发现问题,分析问题,解决问题,最难的其实是发现问题,特别是在还没有问题的时候,自己探索出新的需求,发现未来的问题,例如若干年前张小龙提出微信这个项目,例如现在google的无人驾驶...我们要提高自己的见识,或者说眼光。
经验:
可以做个小ppt展示自己,但是切记,不要舍本逐末,哗众取宠,
李智慧的<<大型网站技术架构>>一定要看一下
二面
23日 40分钟
1 项目技术难点/或者说印象深刻的地方
我提到了
然后说,这就是单例模式在逻辑层的一次应用。
又问我怎么没有实习过?
2 负载均衡的分类
我基本上吧
我的这篇博客口述了一遍(刚好前几天复习过)
然后我在讲的时候 就边说边画图,面试官还一直在问我各个解决方案的不同
3 说说负载算法?
我当时其实并没有理解他说的负载算法指的是什么。就按我的理解,说可以平均分配,也可以按比例分配,还可以看那个服务器比较闲,就给那个分配。然后我就自己提到了,把session单独放到一个服务器里的想法,和redis,同时告诉他我集成过apache+tomcat+redis。
4 怎么知道tomcat没死
我说zookeeper
5 你知道令牌环么?
说实话,我真不知道。就跟他扯了一下一致性hash,就是那个hash环
6 聊了一下我自己设计的 lt分发系统
1 把面试官给你熟悉的领域拉,他问一个点的时候,你首先有一两句话直接回答他的问题,然后可以适当的往边缘扩展一下,如果你看面试官对你的扩展有兴趣,就继续聊呗。
2 然后就是边说边写,有点时候一图胜千言,特别是在分析一下复杂问题的时候,要记得画图说话。
三面
二面结束后5分钟就开始三面,大概20分钟
1家庭情况
2女朋友问题
3还有什么offer
4愿意来深圳么
5腾讯主要是c++,我自己比较熟悉java,问是否有问题