最近看书没有动力,公司里面太闲了。想给点压力给自己,如果有好机会也可以跳一下。只投了A和B。结果B家的没有回音,A家面试官打电话过来约面试。
总共面了三次,都是电话面试。我靠着回忆把还记得面试问题和答案记录下来吧。
一面、
一面主要考察技术细节,追着简历上的工作项目一个一个问。关注点基本都在技术上面,而不是业务。当然业务我也都记不清楚了,让我回答肯定也回答不好。总共用时一个小时二十分钟。
rabbitmq作为rpc交互的过程。
项目中thrift和zookeeper作为服务治理的解决方案是怎么做的。
数据结构有没有自己学习一些高级的部分。
ConcurrentHashMap和HashMap,Hashtable的区别。
有没有看过开源组件或者框架的源码。说下spring中IOC的实现。
synchronized和ReentrantLock的区别。
synchronized的使用方式有几种,有什么区别。
redis和memcached的区别。
volatile的作用。
说下JDK中concurrent包下的类。
AQS有了解吗。
二面、
二面主要考察技术的广度。着重于架构相关的。总共用时一个小时二十分钟。
打车过程中从乘客下单到司机接单的整个流程。
项目中订单主键如何生成。
项目中有哪些觉得还行的技术点。哪些技术点是你了解的。哪些是你觉得不行的,如何改进。
项目中redis集群怎么做的。
项目中redis分片怎么做的。
项目中mysql读写分离怎么做的。
项目中mysql分表怎么做的。
项目中分布式锁怎么做的。
如果对redis中的数据进行迁移。
你怎么去学习的,看过哪些书,简单的说下书里面的内容。
有一亿的关键字有中文有英文,从一篇文章中找出关键字。
设计一个有一亿次访问的网站,网站有图片展示。
三面、
三面是一位总监面的问的很简单,主要就几点,总共用时二十分钟吧。
有没有带过人。
项目有多少人,每个人分工是什么,在项目中负责哪一块。
前端能不能搞定。
已经过去将近一个月了,还有好多面试问题都记不得了。暂且写下问题,回头把答案补充下。
总结:
其实有些问题回答的不是很好,磕磕绊绊的。从面试中能够看出自己欠缺的还很多,还需要加强学习,耐心钻研细节方面,加强代码工程能力。虽然面试过了,心里还是很虚的。2013年7月份毕业后考研失败这件事情对我的打击很大很大。直到2014年3月份独自一人来到上海开始我人生的职业生涯,在学习和码代码的过程中找回了自己。工作到现在基本上两年了,成长的还是挺多的,虽然有些时候自己偷懒,但是总算是入了门,有了方向。希望以后能够在技术上有更大的提升吧。