面试时,当你有权提问时,别客气,这是个逆转的好机会(内容摘自Java Web轻量级开发面试教程)

前些天,我在博客园里写了篇文章,如何在面试中介绍自己的项目经验,收获了2千多个点击,这无疑鼓舞了我继续分享的热情,今天我来分享另外一个面试中的甚至可以帮助大家逆转的技巧,本文来是从 java web轻量级开发面试教程从摘录的。

--------------------------------------------------------------------------------------------------------------------------------

1 问题的背景

我在做技术面试时,当问完所有的技术问题后,一般会说“我这边没问题了,你有什么问题?此时就进入到“角色转换”的阶段,你问我们答。

我们遇到不少人直接就说没问题了,然后面试就结束了。但也遇到不少人,通过这个阶段让我们改变了对他的看法,了解更多的加分项,或者干脆直接逆转面试结果。

2 通过提问,大家可以进一步展示你和职位的匹配度

你可以问,如果我成功应聘,我将进入哪个项目组?在这个项目组里需要哪些技术?

当面试官告诉你后,你就可以说,XX技术是我以前用过的,然后谈点在以前项目里用这个技术的细节。

或者面试官说的项目你以前有过类似的经验,你也可以说一下你的经验。

如果面试官听到有类似的经验,并确认核实发现是真实的,就会再加上“以前做过类似项目”的评语,这可以起到锦上添花的作用,能帮助候选人拿到更多的工资。

有一次我们给一个保险项目招人,有个候选人刚开始的时候可能是紧张,回答问题很简单,我们已经写了“技术一般,属于可用可不用的,请后继经理斟酌”这种话,但在这个阶段,或许是因为他说到自己比较熟悉的方面,因而比较顺畅,而且知识点也展示得比较全面,我们就立即修改了评语为“技术可以,有过相似经历”这种话了。

这里给大家的建议是,你面试前还是请了解一下公司的项目,想办法套近乎,你可以适当修改你以前的项目经验,使之与公司未来要做的项目有一定的相似度,这样效果会更好。

3 通过提问,说出你没被问到的亮点

这里不建议直接说“我其实还掌握XX技术,但你刚才没问”,因为有些直接,此时你还是可以通过问项目情况来说。

比如你可以问,这个项目是不是用到Spring MVC框架?当得到肯定的回答时候,你就可以说,“我以前还在项目经理的帮助下搭建过框架,有XX的体会”。

或者说,你XX项目里某个需求点是不是涉及数据库调优?我以前有类似的经验,然后说一些。这里的建议是,你在面试前准备好一些你有把握的亮点,这里的有把握是指你非常熟悉、了解细节,而且能结合项目的实际来举例说明,想好切入点,然后就可以找机会在面试中说了。

这里给大家的建议是,你面试前还是请了解一下公司的项目,想办法套近乎,你可以适当修改你以前的项目经验,使之与公司未来要做的项目有一定的相似度,这样效果会更好。

4 可以展示一些非技术的特长

除了技术外,你还可以问,你们公司加班多吗?客户是谁?项目紧不紧之类的非技术问题,你问这些问题的目的有两个:

①展示自己吃苦耐劳,善于沟通,善于和比较认真的客户打交道,如果你到外包公司面试,这个能力相当重要。

②看一下这个公司是不是血汗工厂,会不会没日没夜连轴转,会不会压力过大,如果是这种情况,你就需要酌情看了。

另外,一旦你感觉自己的面试有可能不成,那么你还可以在提问阶段说如下亡羊补牢的话。

5 坦诚相对,说明你的擅长点,让面试官给次机会

我们遇到过个别候选人,他技术点知道一点,并非什么都不知道,属于可上可下的。比如项目是要Spring MVC,这方面他只有学习经验,没有商用项目经验,但他的Java Core和数据库方面很不错,他就直说,Spring MVC确实不行,但亮出了他的长处,比如举例说明他学习能力很强,或者很能吃苦,沟通能力很好,然后表达出强烈想入职的愿望,我们一般都会给出“技术可以(或技术勉强可以),能参加后继面试”的评语。

大家在面试的时候,回答问题好坏自己能估计出来。如果太差,属于一问三不知的,即使说这种话也没用。但如果你感觉回答的时候并非一无是处,那么就可以找机会说出这种话。在下表里,列出了一些补救措施。


补救因素


可以列出的证据


虽然没有XX项目经验,但在平时学习过,自己动手写过代码


我看过XX书,自己了解过这种技术,或者了解过同类技术,同时说出对这种技术的理解


学习能力很强,有强烈的学习新技术的愿望


我本来不熟悉毕业设计用到的技术,但我用了很短时间就掌握了,或者以前在公司里我属于什么都不懂的,但我肯问,用了XX时间就知道了

或者,最近比较热门的XX技术,虽然在我的项目里用不到,但我自己已经学过了,然后说说学习情况


肯吃苦,能加班,能出差,能适应大压力下的环境


列出以前公司加班,压力大的一些情况


很擅长和别人沟通,在项目里遇到不熟悉的,肯问别人


在以前公司的时候,遇到问题我不会积压,有需求上的问题找XXX,技术上不懂会找XX,遇到有Bug能找测试


事先了解到这个公司的项目背景,然后说自己知道这方面的知识


比如XX公司做云计算的,你即使没有项目经验,甚至没有动手写代码的经验,但你可以说,了解过这方面的知识,知道开发流程,知道入手点


说明你对Java里某个技术点研究特别深入,肯钻研


比如很了解Java的内存管理,说明你是通过看文档或者看底层代码自己研究的,那么面试官想想即使你没他需要的技能,但有自己的一套研究方法,肯钻研,也会适当考虑


说明你的责任心、稳定性比较强,肯在一个岗位上钻研下去


这个自己想办法说明

6 展示你以前的亮点,让面试官相信你的潜力和能力

如果你的实际工作经验少于3年,那么面试官其实对你不会要求太苛刻,而是更关心你的学习能力、工作责任心、承受压力的情况。责任心和稳定性这些,刚才提到的补救措施你一定要有证据说明,记得用事实讲话,毕竟空口无凭。

下面列出一些我们面试过程中听到的别人说出的一些亮点,大家可以举一反三,灵活掌握。

①“我虽然对您刚才说到的Spring MVC技术了解不深入(事实上,他是会在项目经理搭建好框架的基础上开发,还能知道一点,如果一点也不知道,说了也没用),但我对MVC框架了解过,我以前做过的项目是用JSP+Servlet+JDBC实现的,也单独用过Struts的框架,所以我很快能上手”。(这样我们会适当地问他JSP+Servlet+JDBC里MVC的流程,如果他能说上来,我们就会在评语上写“了解基本的SSH,了解MVC框架,知道MVC的开发方式”。但如果他不额外说明,或许我们就会写,“只会在项目经理搭建好的基础上了解SSH,不了解框架细节。”这样即使他通过了技术面试,后继的项目经理看到评语也不会对他有太多的好感)。

②“最近的项目我是在做前台,没用到SSH,,但一年前用到过(这样回答有些危险了,最好是在半年前用过这个技术或者相关类似技术,不过话说回来,你即使最近没用SSH,但在简历上说用过,只要你能回答出基本问题,面试官也没办法核实),但我对SSH框架了解很深,我知道Spring里MVC的底层实现,感觉Struts的MVC有一定的缺陷,也在商业项目里搭建过SSH,所以我能很快上手”。(这样我们会细问他提到的SSH的底层细节,如果他确实对底层细节了解得不错,那么我们会写上“最近一年没用过SSH,但对SSH底层有一定了解,在商业项目里搭建过SSH”。否则,我们仅仅会写“最近没用过SSH,SSH的项目经验仅限于一年前”,大家可以对比一下两个评语之间的差别)。

③ (为一个保险项目招人)“我在Spring MVC方面的经验不多,所以有些问题没回答好,以前大多是用JSP+Servlet+JDBC这套模式开发的(这是大实话,不过如果他面试前好好准备的话,那么就不应该说出这种话),但我以前做过保险相关的项目,客户是XX,实现了保险项目里的XX流程,而且我知道一些背景的业务“。(这样我们会把决定权交给二面的经理,否则,我们将直接写“不了解Spring MVC,没法通过面试”)。

④“我对框架技术了解一般(确实一般,根据问题的答复我们能感觉出他自己没搭建过框架,只能在人家搭建好的框架上被动开发),但我知道怎么让我的代码效率更高,我通过看文档和底层代码,知道Java内存管理的细节,知道多线程的实现细节,知道SQL调优的方法,了解过一些设计模式,思路是相通的,所以我能很快上手,而且能很快了解SSH的底层”。(这样我们会逐一确认他说的,是否真的对这些加分项有了解,如果是,由于这些亮点比写代码本身更重要,我们甚至会掩饰他SSH一般这个事实,会在评语上写“知道SQL调优,Java代码调优的一些方法,学习能力和学习意识比较强,个人的综合能力可以”)。

⑤“我对Java技术了解一般,(确实一般,只会用语法,不能融会贯通),这是因为我在上个项目里压力很大,需要直接和客户交流,直接了解需求,自己开发,自己测试,最后打个jar包给客户,所以我感觉我的综合能力很强”。(这样我们会关于这方面问一些细节问题,比如怎么打jar包,测试的时候是怎么做的,如果确实能说上来,我们会在评语上写“Java能力一般,但知道整个开发的流程,能独立完成某个模块的任务”。否则我们只会写“Java能力很一般,不了解一些深入的知识点”)。

⑥“虽然我没有商业项目的经验(是个应届毕业生,简历上的项目被我们问出是毕业设计或者是课程设计项目,但他如果直接把这些技术写成在读书时在外面公司里做的,我们是没法核实的),但我自学能力比较强,我学习的时候走了不少弯路,这也让我现在很了解JDBC的底层实现,我知道最近热门的一些技术,所以你们公司的一些技术我能很快上手”。(这样我们会在评语上写,“没有商业项目经验,但学习能力很强,请后继面试官斟酌”,这总比“没商业项目经验,不建议通过面试”的评语要好)

7 记下所有的面试题,迎接下次面试

当你感觉你成功应聘这个岗位的希望有些渺茫时,你需要做如下的事情。

①记录下所有的技术面试题,回家查资料,为下次同样问题做准备。

②举一反三,回家以后要赶紧学习了,最好通过动手实践,通过运行代码来了解相关的知识点。

③找出没成功的原因,比如这个岗位需要有项目经验的,你所描述的项目经验最终被认为是非商业项目,那你就要更新项目描述,下次面试的时候,也要更改说辞,想办法证明你的项目确实是商业项目。

如果是因为你没有回答好具体某个技术,那么一定要去找一个真实的项目,看看这些技术在项目里是如何实现的。

即使一些工作经验5年以上的资深者,在刚开始换工作的几家面试公司里,也未必能回答好,因为他即使做了很多准备,也不知道面试会问些什么,所以面试前你要做好“不成功”的准备,成了最好,一旦没成,积累经验,下次或许你就成了。

时间: 2024-10-13 14:44:25

面试时,当你有权提问时,别客气,这是个逆转的好机会(内容摘自Java Web轻量级开发面试教程)的相关文章

(java web后端方向)如何让你的简历为你争取到更多的面试机会,内容来自java web轻量级开发面试教程

我们在做培训时,会发现一个不合理的情况,一些程序员能力不错,在公司里也是技术牛人,但发出去的简历往往会石沉大海,没有回复.对于刚毕业的大学生或工作年限在2年之内的程序员,这个情况会更严重. 这种情况下,其实不是你的能力有问题,而是简历筛选人(往往是人事或技术面试官)无法从简历上看出你很牛,或者即使能从简历上感觉到你能力很强,但会感觉到你的能力和公司的需求不匹配.不管是哪种情况,结果都一个,你甚至得不到技术面试的机会. 笔者在这里,将根据面试多个候选人(至今有100以上)的经验,来向大家展示准备简

根据实践经验,讲述些学习Java web能少走的弯路,内容摘自java web轻量级开发面试教程

在和不少比较上进的初级程序员打交道的过程中,我们总结出了一些能帮到合格程序员尽快进阶的经验,从总体上来讲,多学.多实践不吃亏.本文来是从 java web轻量级开发面试教程从摘录的. 1  哪些知识点可以延后了解 在Java Core方面,下表中的知识点你可以不学习或者到用的时候再学习. 知识点 学习的时机 界面开发方面的知识,比如Swing等 Java主要用在Web方面,很少有项目会用到这些UI部分的知识点.大家可以等实际用到时再学习 Socket编程方面 可以先了解概念,等有项目需求时再学习

Hibernate(或其它ORM)里的inverse用法详解,内容摘自Java web轻量级开发面试教程

本文来是从 java web轻量级开发面试教程从摘录的. Inverse的英文含义是反转,在Hibernate中用来决定是由哪方来维护两个业务实体类之间的关联关系,具体而言,就是由哪方去设置这个被外键约束的字段值. 它的默认值是false,也就是说,本端(比如inverse=false写在学生端,那么本端是学生,另外一方是课程)不"反转控制权",这句别扭的话的另外一种说法是,本端维护关联关系.如果两边都不写,那么两端都维护.这样会造成问题,即新时因为两端都控制关系,因此可能会导致重复更

数据库面试技巧,通过JDBC展示自己专业性,摘自java web轻量级开发面试教程

这篇文章是我之前写的博文 数据库方面的面试技巧,如何从建表方面展示自己能力 和 面试技巧,如何通过索引说数据库优化能力,内容来自Java web轻量级开发面试教程是一个系列的,通过面试官的视角和大家分享在数据库方面的面试经验,这些内容都来摘自  java web轻量级开发面试教程. 之前的两篇文章点击量都还行,也感谢管理员放入首页,这鼓舞到了我,也让我更有信心和大家分享我的经验. 我们知道,最终我们是要通过jdbc来连接并访问数据库的,也就是说,最近面试官一定会通过JDBC方面的技能来考核候选人

面试技巧,如何通过索引说数据库优化能力,内容来自Java web轻量级开发面试教程

上星期写了一个篇文章,数据库方面的面试技巧,如何从建表方面展示自己能力,承蒙管理员抬举,放入首页,也承蒙各位厚爱,两天内收获了将近770个点击,也一度进入48小时热榜. 为了感谢管理员和大家的支持,再根据我的面试经验原创一篇关于索引方面如何推销自己的文章.这内容也来自我写的书 java web轻量级开发面试教程. 如果我们需要招个Java方面的高级程序员,一方面看年限(本科3年),具体到数据库方面的技能要求,包括如下三个方面: 第一,是否会基本的增删改查,存储过程等技能,是否会用些group b

java web轻量级开发面试教程读书笔记:建索引时我们需要权衡的因素

场景一,数据表规模不大,就几千行,即使不建索引,查询语句的返回时间也不长,这时建索引的意义就不大.当然,若就几千行,索引所占的空间也不多,所以这种情况下,顶多属于"性价比"不高. 场景二,某个商品表里有几百万条商品信息,同时每天会在一个时间点,往其中更新大概十万条左右的商品信息,现在用where语句查询特定商品时(比如where name = 'XXX')速度很慢.为了提升查询效率可以建索引,但当每天更新数据时,又会重建索引,这是要耗费时间的. 这时就需要综合考虑,甚至可以在更新前删除

Java web轻量级开发面试教程读书笔记:数据库方面,如何准备面试

如果在面试或与资深人事交流的过程中,你能有效合理地展示出本章所给出的一些知识点,那么对你的评价就会是"对数据库有深入了解",甚至能加上"有设计数据表的经验",即便你说有过3年商业项目数据库操作的经验,那么别人也能相信. 相反,如果一个工作经验满3年的程序员或许动手编程能力不差,但无法在交流沟通过程中证明这点,或者干脆不知道怎么证明,那么对他的评价往往可能是"数据库层面,有过商业项目的经验,但只会些基本的增删改查(顶多再加上会视图存储过程等技术),无法独立担

Java web轻量级开发面试教程的前言

本文来是从 java web轻量级开发面试教程从摘录的. 为什么要从诸多的Java书籍里选择这本?为什么在当前网络信息量如此大的情况下还要买这本书,而不是自己通过查阅网络资料学习?我已经会开发Java Web程序了,有没有必要买这本书? 笔者有12年的Java经验,目前是某大型公司的架构师,知道软件公司对高级程序员的实际需求:而且笔者在大公司里有过5年的技术面试经验,面试过的人数上百,所以知道毕业生和初级程序员的普遍情况.笔者更有过5年多的Java培训经验,知道如何在短时间内把有毅力.有决心,但

java web轻量级开发面试教程

最近面试java后端开发的感受:如果就以平时项目经验来面试,通过估计很难——再论面试前的准备 在上周,我密集面试了若干位Java后端的候选人,工作经验在3到5年间.我的标准其实不复杂:第一能干活,第二Java基础要好,第三最好熟悉些分布式框架,我相信其它公司招初级开发时,应该也照着这个标准来面的. 我也知道,不少候选人能力其实不差,但面试时没准备或不会说,这样的人可能在进团队干活后确实能达到期望,但可能就无法通过面试,但面试官总是只根据面试情况来判断. 但现实情况是,大多数人可能面试前没准备,或