6个问题,验证2年Java面试者的真实性
作者:爱海贼的无处不在
一、背景
最近团队也开始面试几个后端开发人员,在面试前其实已经发现某些简历可能存在一些包装水分和或者不合适,但是还是抱着试一试的态度,万一人家有一些可以让我们感觉还行的条件呢,比如沟通能力、思考能力、协作能力、理解能力等。而在这个过程中,持续了10年+的现象,到现在依然还存在,就是在2-3年这个区间内的程序员,存在一些水分包装的现象,可能并没有实际的干过企业的核心的开发工作就来面试了,本文分享的也是这个,也给一些处于求职面试的小伙伴,一些参考。
<或者现成的一份,大厂外包岗 ☞这里 ,前 / 后端 or 测试,尤其东莞、深圳等地 HC 挺多的,考虑的伙伴可以直接试试>
二、简历筛选
面试前团队收到了8份求职者的简历,已经经过了HR的初筛,然后到了我们这里,认真仔细分析和看了一会儿,我发现这个社会还是老样子,招聘3年的,收到的简历明面上是3年,实际7个是22年毕业的(还差3个月满2年,很多公司都是以毕业时间为准的),1个是21年毕业的,不得不说2-3年的出来找工作的,还是和过去10年一样,水分很大的占了一定的市场。所以真实的情况下可能不止我遇到这个现象,可能其他企业的面试官也遇到了类似的现象。这8个算不是优秀简历,也暴露了很多问题,我总结的如下:
(1)、2个人可能存在培训机构项目包装水分或项目没做过的包装水分
(2)、2个人的简历上不认真,毫无价值和存在错误技术名称和汉字
(3)、2个人的简历项目技术栈老旧,居然还写struts2,非目前主要核心java技术
(4)、2个人的简历,中规中举,比较一般,但是项目应该真实,但是入职后可能需要人带一带
这几份简历共性的问题也不少,比如真的没有体现出来自己简历是认真打磨过的,自己花时间整理的,有的空白区域很多,有的负责的描述依然是使用XXX技术实现aaa,有时候会经常看到有1-4年的小伙伴投递简历说找不到面试,其实这个区间水分非常大,如果想脱颖而出,用心找工作还是非常重要的。以前有位大佬说过:同样的简历,肯定会选那个更加细腻的,排版好看的。也更愿意相信,对自己有严格要求的,写出的代码质量也很高。
最后我们选择了一个可能存在包装的水分的求职者,毕竟他的技术栈和内容与我们公司的需求匹配度更高,万一是包装者中的顶尖梯队的人呢。
三、面试问题
面试开始了,我可能会从几个问题来验证他的真实性和能力,然后再深入问一问。
先来看下简历截图吧大家:
1、问题1:请说说你最做的这个项目组的人员情况和项目微服务的数量吧?
求职者回答:他自己的把研发团队的所有角色都说了一遍,产品经理、项目经理、前端、后端、UI、还说了架构师,同时介绍项目是共享打印机,介绍项目业务的说的时候也是共享打印机,同时微服务的数量是30个。
当他说出团队人员中存在架构师和数量是30个的时候,我开始有些怀疑了,感觉他这个体量和经验和公司环境应该不足以支持他的描述,有架构师的团队不应该是这样的简历和描述,同时自己口述的项目名称和简历上的不一致
2、问题2:既然你们微服务拆分的这么细,这么多,那你说说如果1个接口中,调用了A/B/C三个服务,C失败了怎么办?
这个问题回答的并不好,通过他的回答可以分析出来,他可能没做过一个接口中,调用多个服务的情况,即使有,可能也没有考虑过失败的业务处理方案等
3、问题3:说说你对集群和分布式的理解?
这位兄弟前期说的不清楚,后期突然说的很八股话了,此时我对他产生了一点怀疑,开始在远程视频会议中关注他的行为和动作,我之所以问他这个,我觉得是很多真没有工作过的人,对这个问题的理解有些不清晰,果然让我产生了怀疑。
感觉当面试官问到对XXX理解这种类似的问题的时候,确实很多人对于这种简单的问题说的不太明白,毕竟没有实际企业项目历练,不太容易用别人能够听懂的方式讲述出来,同时自己也没有阅读和学习大量的理论,就出去面试了。
4、问题4:为什么要用RabbitMQ不用其他的消息中间件,MQ重复消费如何解决
这位兄弟始终没有回答出来重复消费兜底的策略:用数据库唯一索引保障幂等性和兜底。
他说了用redis判断、数据库里面加个字段、说用行锁,期间我也问到并发情况下是否安全,一直没有想到数据库的唯一索引。
此时从心理和行为学上看,哥们的手放在了头上,出现了明显的不会和思考,同时眼镜中出现了一点反光和白色的内容,我开始关注他的接下来的行为。
其实,我感觉很多人都在简历上写RabbitMQ,尤其是没有过工作经验的新手或低经验的同学,我始终觉得这个价值不大,面试官也不太容易问到原理和源码类的内容,既然是面试Java工程师,为啥不谢谢RocketMQ呢,只要稍微看下源码和原理就已经能够在面试中领先大多数人了,看下源码后,不仅面试能提高通过率,还能对自己的技术有提高。
5、问题5:我看他写了订单和支付的功能和业务,我问请说说回调接口和预支付单创建接口如何保障安全问题、并发问题、重复支付、重复回调问题
这位兄弟的这个问题彻底的让我觉得他写的业务确实没怎么深入做过,很多写支付订单的业务的面试者的简历,我可能都会问他类似的问题,这个问题如果说的足够透彻,那应该是真的做过,开发者做过支付和订单相关业务的,应该会比较理解,为了保证支付回调、取消订单、预支付相关接口的安全并发问题,通常可以用分布式锁来解决,很多人包括这个兄弟一直没有说出来,我也想引导他。应该是自己开发或者学习的时候,只调用API走了个流程而已。
在之前学习支付和订单业务的时候,看到这个很有价值的图,很多没有做过企业级支付开发功能的小伙伴基本不知道用分布式锁解决支付回调、支付预支付、支付取消阶段需要用分布式锁进行控制,同事很多IT培训机构的老师在讲课的时候,也基本不会太关注真实的企业工作中的各种细节问题
图片分享给大家:
其实,我觉的这个问题的有一部分在于,很多面试者和开发者无法申请个人的支付平台商户,导致一直没有去主动性的学习支付业务和功能,其实国内已经有一些支持个人签约的支付平台了,比如蓝兔支付,云狗支付。
6、问题6:问他微服务注册nacos下,A如何调用的B服务和C服务
此时他真的说不清楚了,表达的意思就是A服务如果调用B服务和C服务需要通过网关来调用,然后我在会议中发现他的眼镜又存在白色的闪光,反射的闪光中存在了明显的下拉框的数据加载,我在仔细一看这位兄弟竟然边说边百度搜索,然后哥们最终也答出来OpenFeign了,瞬间回想起相关的话术回复了,面试到这里我就结束了,这位兄弟到了面试结束后,也不会知道,我一直能通过远程视频会议看到他的眼镜反光出来的自己屏幕的相关信息,殊不知早已在我的掌控之下,被我发现了。
在面试前,我就非常确信是有问题的简历,但是还是面面看吧,果然不太合适。他的这个简历的非常明显的问题在于:
1、个人经验和项目经验的技术栈过于新、豪华,存在包装风险
2、项目使用了某IT培训机构中的出现的自研框架elegent,个人怀疑他是搞的那个培训机构的项目包装的(不过这个自研框架也是值得探究一番的,地址如下:gitee.com/myelegent/p…
3、其次就是简历中,描述职责的时候,没有用STAR法则或SMART原则来量化来描述,而全是技术类的使用XXX技术实现AAA这种。
四、简历共性问题
最近面试别人的过程中,发现的简历共性问题如下:
1、包装的面试者或者低经验的面试者,确实对自己做的项目业务说不清楚或者缺少自己的想法,面试问问什么选这个,为什么用这个,经常回答是leader搞的,Leader选择的,同事做的,简历上用纯技术描述项目职责,即:使用XXX技术实现aaa,回答的时候也确实过少结合业务来描述
2、常年感觉自己做的项目都是CRUD类型的面试者,有些在项目职责中基本没有表达任何技术名称和解决思路,一股脑的介绍自己介绍的功能和模块,面试官一问,问题更大。
3、简历上的排版明显有问题的面试者,本周公司收到的几份简历中有2-4分都存在很多的错别字之类的,比如mongodb写成manogdb\mangdb的,大小写也看着不舒服的等等,简历上能明显看出来之前做的业务都是边缘功能的,老旧的技术依然写的,没有任何包装的,这样的简历确实不想给面试机会,因为和别人的对比一目了然
4、我觉得更多的是这种情况比较危险,就是1、2、3、4这个年限经验段的,感觉有些人的水平就是很相似的,只是年限不同而已,简历也很大差不差,这也是现在的IT界的工作城市、公司环境、个人认知不齐影响的,再加上2-3年是最容易出现一些包装着,让2-3年这个区间段的不容易找工作,面试公司也不容易筛选出好简历。AI出现一年多了,现在的大部分简历非常明显都是没有经过AI润色的,感觉很多人确实都不怎么用AI呢。
后来面试别人又发现,有个小伙子真胆大,当着远程会议的面,现场鼠标单击和键盘敲击明显的搜索结果的,殊不知他的鼠标声音我这里也能听到,还边吃东西边面试。
五、AI建议的简历内容
现在AI大火,但是很多人写简历真的没有体现出来自己的价值和经验,写的水平还是以前的样子。没有用心认真打磨的简历,既然如此那么企业看到你的简历后,为啥要为你的价值和经验买单呢。
对于简历中的描述项目职责应该着重描述技术实现点还是结合实际业务描述呢?
我最近也问了下AI,感觉挺有道理的,参考如下:
平衡技术与业务描述:简历中描述项目职责时应该既关注技术实现点,也结合实际业务描述。通过平衡技术和业务描述、突出技术亮点、结合实际业务场景、简洁明了地表达以及量化成果,你可以更好地展示自己的能力和价值,增加面试成功的几率。 简历应该既展示你的技术能力,也展示你对业务的理解。你可以从项目的业务需求出发,描述为了解决这些业务需求,你采用了哪些技术方案和实现细节。这样既能体现你的技术实力,也能让面试官了解你对业务的敏感度。
突出技术亮点:在描述项目职责时,可以着重突出你在项目中使用的关键技术、解决的技术难题以及实现的创新点。这些亮点能够体现你的技术能力和解决问题的能力,是面试官非常关注的部分。
结合实际业务场景:除了技术实现点,也要描述项目在实际业务中的应用场景、解决的问题以及带来的效果。这样能够让面试官更好地理解你在项目中的角色和价值,也能展示你对业务的深入理解和实践经验。
简洁明了:在描述项目职责时,要注意言简意赅,避免冗长的句子和复杂的词汇。用简洁的语言清晰地表达你的职责和成果,让面试官能够快速了解你的能力和价值。
量化成果:如果可能的话,尽量用具体的数据或成果来量化你的贡献。例如,你可以描述项目上线后带来的用户增长、性能提升或成本降低等具体成果,这样更具说服力。
希望通过本文的分享,让面试者可以更加注重自己的简历编写内容,面试时避免做的事情。以及面试官应该具备一定的简历筛选能力。
“爱码士” 集结号,唤醒 “猿” 气超能力 —— 福利暖冬 [免费] 派送活动火热进行中
代码工具 VIP 会员、文创 “爱码士” 礼包、开心麻花门票等,➡派送** ~
程序员狂欢继续~~~