#程序员BUG#我是这样甄别大忽悠的,在做技术面试官时( 二 )


所以如果我在简历中看到有候选人写 , xx教务系统 , xx财务系统或人事系统之类的 , (它们一般和网上能下载到的案例名很相似) , 这就很明显是课程设计的项目 , 因为这类系统都有现成成熟的 , 公司一般不会开发 。 或者是xx电商系统 , 除非是某公司亏钱推广自己的产品 , 否则一般不会自行开发 , 这类项目我也会在面试时着重甄别 。
3在项目中提到的技术都是过时的 , 而且出现明显会亏本或应用场景明显不符合的技术.
比如还在用StrutsMVC , 或者明明流量比较大需要分布式部署的系统 , 在项目里还仅仅用到SpringMVC , 没有用到Redis等分布式组件 。 又如 , 一个明明工期比较短而且访问量不大的维护项目 , 还大量用到了SpringCloud等成本比较高的技术 。
4在某个时间点 , 某培训学校有大批学生毕业时 , 我就经常会看到不少简历里的项目描述很相似 , 这往往是培训学校里的学习项目 , 而不是商业项目 。
我会认可该候选人在培训学校里的学习经历 , 但毕竟学习项目的含金量要比商业项目里要小 , 所以我会把这部分的项目经验排除在实际的相关技术年限之外 。
5简历上的项目经验里 , 描述某个技术的文字和上下文非常不匹配 , 感觉像是后来加上去的 , 这类技术我就要详细问些细节 , 因为有可能候选人其实没在项目里做过 , 而是只有学习经验 , 但拼接在现有的项目里 。
#程序员BUG#我是这样甄别大忽悠的,在做技术面试官时
文章图片
3如何从发问中判断候选人对技术的掌握程度
在我面试前 , 我一般会通读候选人的简历 , 在发现有第2部分所述的可疑点的时候 , 会通过如下的问题来确认 。
1针对候选人的相关技术年限 , 比如java3年 , 我会预先给候选人划定个应该达到的程度 , 比如得熟悉虚拟机熟悉多线程等 , 然后在面试时 , 就围绕这个尺度来问 , 一般来说 , 能甄别出夸大相关技术年限的情况 。
2如果候选人在简历中出现类似学习项目 , 我就会问些在项目里一定会用到的技能 , 比如项目如何通过ant等工具打包 , 如何通过jenkins等来打包和部署 , 或者问项目的细节 , 比如多少个人做了多久?客户是谁?然后再提出自己的质疑:这个产品市面上有现成的 , 为什么你们公司还要掏钱再开发?如果候选人想用学习项目来冒充商业项目经验 , 这些细节一定答不上来 。
3如果我看到候选人简历上的某些项目里 , 出现了比较突兀的技术 , 那么我就会盯着这个技术问 , 比如明明用单个Oracle实际即可完成的项目候选人说用了集群 , 那我就会首先核实集群的配置细节 , 然后再问 , 为什么要用集群?这时候 , 候选人往往只能尴尬地说 , 这是由项目经理安排的 , 他也说不上 。
除了上述情况之外 , 如果候选人在简历中写了一些比较热门的技术 , 或者是亮点 , 我就会对此深入提问 , 如果问题也回答非常好 , 那绝对是个加分项 , 反之就还不如不写了 。
比如 , 某候选人在简历上写 , 掌握数据库性能调优的技能 , 也在项目里用过 , 那么我就问怎么用的 , 采用了哪些技术 , 用的前后大概能提升多少性能 。 也有候选人能很好地回答上 , 比如说用执行计划看性能耗在哪方面 , 然后对应地改 , 或者分库分表 , 或者用with等语法改善SQL语句 , 这就能证明他确实掌握这块技术 。 但有些候选人只能停留在建索引的层次 , 那么这就不能说是熟悉数据库调优了 。
又如 , 有些候选人在简历上写 , 在某某项目里用到了Kafka做消息中间件 , 这也是个亮点 , 这时我就会问 , kakfa如何做消息持久 , 如何实现消息分组等问题 , 总之只要做过kafka , 一定能知道 。 这时就有些候选人说不上了 , 再一细问是只配置过 , 没用过 。 也有些候选人只会泛泛而谈 , 没法结合项目说 , 这样的话 , 只能证明候选人有理论经验 , 而没在实际项目里用过 。


推荐阅读