一面2015年09月21日

面试的地方在武昌区的纽宾凯,一个酒店,面试在一个小的房间里进行,有沙发。面试的时候面试官和你坐的很近,他面前是一台苹果。大众点评的面试官很有亲和力,看我坐的很端正还叫我不要紧张。

自我介绍

首先是自我介绍。我的自我介绍很简短,主要是因为不知道如何才能得体的介绍自己,然后一紧张,就说,自己建立比较拿得出手的是一个外包项目和阿里的实习经历,然后就没有了。恩,面试官问我,介绍完了? 然后我尴尬的说恩,介绍完了。

项目/实习经历

然后开始聊经历。首先问的是阿里实习的经历。我本来是做的java后台开发的,但是去天猫之后学习iOS了,现在报的也是大众点评的java后台。问了我在阿里做了什么,我就简要介绍了自己的一些工作。

另外就是问我的外包项目,这个问了很长的时间。因为是一个机票系统,我简要的说明了一下我的工作,同时,因为我是接手老的工程,所以要我说明老系统和新系统有什么区别,还要我花网站的框图。。。。然而我不知道怎么话。。。就开始扯淡啦。。。功能结构啥的。后来介绍的时候我提到了缓存系统。因为查询机票,如果每次都要调用第三方平台查询机票,会有很长时间的等待,所以为了机票信息能快速获取,可以采用缓存系统。所以就缓存系统的必要性讨论了一段时间。幸运的是没有讨论实现之类的。

笔试题

两个项目谈完了之后,面试官对着笔记本说,我笔试有道算法题错了,然后问我有没有查查这道题。我表示没有查。题目是,一个无序的数组,时间复杂度o(n)实现在一根数轴上求两个点之间最大的间隔。

我想了一会儿,还是找不到答案,面试官开始引导我思考,分析这个问题,找到这个的难点是时间复杂度o(n)。然后问我知不知道有什么排序是o(n)复杂度的,我说我只知道最优情况下的快排,然后问我知不知道外部排序,基数排序。。。。然后我说我不知道。。。。被鄙视说数据结构没学好→_→ 其实我数据结构在面试的同学中确实算不好的。

其他技术问题

然后让我问单例有几种,我之前看的Java面试的书上写的两种,于是回答两种。然后我就开始动手写了。写完之后面试官看了看,发现有问题。。。。。啊啊啊当时简直崩溃,,好不容易问个会的问题,结果还出这种幺蛾子。面试完之后搜了一下单例的实现,有5种。不过当时面试官说我写的两种是一样的,其实我实现是不一样的,我实现的是懒汉和恶汉两种,面试官引导我思考另外的一种实现方式,我说,难道是用synchronize?然后面试官问我volatile和synchronize有啥区别。我说volatile是防止编译器自动优化掉一些语句。其实面试官想引导我写出双重校验锁,但是最后还是没有写出来。

还问了spring的Ioc,然后让我简述什么是ioc,为什么用ioc,有啥好处。回答这个问题很挣扎,借用了spring in action的骑士和任务的例子,但是似乎还是没有讲清楚。然后问我spring是如何实现依赖注入的。我说是反射实现的。然后要我将在xml配置的时候具体是如何反射实现的。我回答的是setter注入。然后我解释了下具体如何setter注入。然后问我还有没有其他注入方式。我扯了扯淡,后来发现其实还是setter注入,答案应该是接口注入(interface injection)、Set注入(setter injection)和构造注入(constructor injection).

一面总结

一面是技术面,同样,二面也是,三面会是Hr面。 总结就是虽然准备了这几天,但是完全不够。基础方面还是太薄弱了。 这次考察到了自己数据结构(排序),算法,设计模式(单例),spring的一些理念和底层实现。 同时也发现了,自己拿得出手的也就是项目经验,缺点是基础。希望在之后的面试里能扬长避短。基础得花时间补补。

结果

晚上收到通知,说一面过了。第二天二面。

二面 2015年09月22日

面试环境和一面的时候相同。也是在一个小的房间里。这次和面试官是面对面。

自我介绍

又是自我介绍。然后我的自我介绍和一面的时候讲的大同小异,也是很快的介绍完自己。个人觉得自我介绍在是需要在保证信息充足的情况下尽量简短,而我因为没有充分准备,所以只是简短,但是很多有亮点的地方没有介绍到。

项目经历

面试官大致的看了看我的简历,然后顺着我的简历开始问项目相关的。首先是问的大二的项目,使用的是ssh。其次问了天猫的实习经历,最后问了大三下做的机票相关的网站。

在问到天猫实习经历的时候,我扯到iOS挺有趣,然后扯到什么页面的渲染。然后面试官问我objective-c和java有什么不同的地方,又问我渲染有什么差别。当时大脑有点乱,没有想到自己把自己坑了。只有支支吾吾的回答了自己的看法,比如java是自动gc,objective-c是引用计数。总之自己坑自己啦。幸好我没说自己懂,只是说有点看法。面试最忌讳装逼了。

问的问题其实和一面大同小异,纠结点也差不多,无非是遇到的问题和如何解决问题,比如如何解决响应时间长的问题等等。然后要我画网站的结构图。恩,一面也画过。然后我在一面的基础上,画了网站的结构图,然后跟面试官解释一下结构图。

至于其他技术问题,根本没有问。

三面

二面完之后等三面,等了好久,因为好多人都在排队等hr面。

三面无非是问你对大众点评的理解,对工作地点的偏向之类的。然后还问了我大众点评和美团你觉得有什么区别。

“你有没有女朋友?”

“没有。”

“那对工作地点也没太大要求了对吧?”

单身狗受到伤害。

总结

这次大众点评的面试感觉难度不大,没问难度高的技术问题,面试的重点放在了项目经验上。对我而言还是有点点优势的。然而问难一点估计我就跪了吧。→_→