面试了一波Java程序员,有好几位80后的。按理说,他们有将近十年的工作开发时间,无论经验还是技术都应该称得上老司机了。着重考察了Spring中bean的后置处理器相关问题,大概是这样问的:
我:简历上写了读过Spring源码,具体读过哪些部分?
面试者:比如Spring的启动过程源码,比如扫描包、执行Bean工厂后置处理器、Bean的生成过程等
我:你说说一个Bean是怎么生成的?
面试者:Bean的生成过程就是Bean的生命周期,包括Bean的实例化、属性注入、初始化等等
我:嗯,那可以再详细说说什么是Bean的后置处理器?什么是Bean工厂的后置处理器?
面试者: 这个...,我没认真深入过。
想着这个翻车了,就打算从实用性强以及和项目相关的技术点来下手,问了下数据库的事务,加个注解还是能答得上来,也知道是用AOP实现的。但是注解里面有什么样的参数,如何避免脏读、幻读、不可重复读?基本上回答得很糟糕。
然后感受到的是他们动手搭建一个ssm框架都异常艰难,追问下得到的回答是这些年从业的公司框架都是搭建好的,而自己只是写写读写删改的业务逻辑。
其中一个程序员跟我坦露,平时工作又忙,还要照顾老婆孩子,没有心思去学更多的技术呀