平安科技java面试
题主于2021年6月份即工作5年,都说3年是一个坎,5年是一个坎。本着在平安银行做了将近2年外包的经验,想着面试科技的内部问题应该也不大,结果确惨遭滑铁卢。今特此记录,以此为鉴,与诸君共勉。
问题分析
题主的5年也就做过4-5个管理系统类型的项目,技术应用也就ssm+相关权控框架 类似于shiro, 或者涉及一些微服务框架dubbo+zk,还有一些中间件,redis rocketMq 之类的,中间还应用过一些设计模式,做过几个插件,自认为对这些都有过一些应用经验。不过在面试的过程中才发现这些远远不够。
面试题
- map 的数据结构? 答:数组加链表,map 里边加一个值的时候内部是如何将K,V 添加到数组和链表里边去的呢?map 又是如何扩容的?
- 说说对线程池的了解,线程池的内部实现原理?
- redis 的集群知道吗?redis 持久化呢?如何做的?
- rocketMq 消息发送和消费流程?在服务器里边是怎样的?
结果
题主这四个问题差不多每个也就答出了第一个问题,第二个基本也就答不出来了。大多数中间件也就在应用程度,但是说其内部原理这些,个人在翻阅源码的时候,认为这些源码较为晦涩难懂,看懂已是不易。但是现如今大公司面试,基本都会要涉及原理方面的问题。所以在个人平时学习提高方向这块,除了自己平时多写多思考之外,多看书了解Java 的相关原理。或者网上买课程,了解其组件的原理。但是这种也属于授之以鱼的方式。对于面试来说还是能有效。