目录

一、如何准备项目介绍?别惧怕,面试官什么都不知道

二、准备好项目细节,一旦被问倒,说明你没作过

三、不露痕迹地说出面试官爱听的话

四、主动出击,面试官没有义务挖掘你的亮点

五、低级错误可能致使直接出局

六、引导:准备加分点,在介绍时低调抛出,但别说全

七、你能够引导,但不能自说自话

八、总结

在面试时,通过寒暄后,通常面试官会让介绍项目经验 。常见的问法是,说下你最近的(或最拿得出手的)一个项目。

根据咱们的面试经验,发现有很多候选人对此没准备,提及来磕磕巴巴,甚至有人说出项目经验从时间段或技术等方面和简历上的不匹配,这样就会形成以下的后果。

1 第一印象就很差了,至少会感受该候选人表述能力不强。

2 通常来讲,面试官会根据候选人介绍的项目背景来提问题,假设面试时会问10个问题,那么至少有5个问题会根据候选人所介绍的项目背景来问,候选人若是没说好,那么就无法很好地引导后继问题了,就至关于把提问权彻底交给面试官了。

面试时7份靠能力,3份靠技能,而刚开始时的介绍项目又是技能中的重中之重,因此本文将从“介绍”和“引导”两大层面告诉你们如何准备面试时的项目介绍。

好了,以下是正文内容。

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

1 在面试前准备项目描述,别惧怕,由于面试官什么都不知道

面试官是人,不是神,拿到你的简历的时候,是无法核实你的项目细节的(通常公司会到录用后,用背景调查的方式来核实)。更况且,你作的项目是以月为单位算的,而面试官最多用30分钟来从你的简历上了解你的项目经验,因此你对项目的熟悉程度要远远超过面试官,因此你一点也不用紧张。若是你的工做经验比面试官还丰富的话,甚至还能够控制整个面试流程(笔者在面试方面成精后也常常干这种事情,你们必定也能行)。

你面试官

对你之前的项目和技能很了解只能听你说,只能根据你说的内容作出判断

在面试过程当中的职责在很短的时间内防守成功便可若是找不出漏洞,就只能算你之前作过

准备时间面试前你有充足的时间准备通常在面试前用30分钟阅读你的简历

沟经过程你能够出错,但别出关键性的错误不会太为难你,除非你太差

技巧你有足够的技巧,也能够从网上找到足够多的面试题其实就问些通用的有规律的问题

既然面试官没法了解你的底细,那么他们怎么来验证你的项目经验和技术?下面总结了一些经常使用的提问方式。

提问方式目的

让你描述工做经验和项目(极有多是最近的),看看你说的是否和简历上一致看你是否真的作过这些项目

看你简历上项目里用到的技术,好比框架、数据库,而后针对这些技术提些基本问题仍是验证你是否作过项目,同时看你是否了解这些技术,为进一步提问作准备

针对某个项目,不断深刻地问一些技术上的问题,或者从不一样侧面问一些技术实现,看你先后回答里面是否有矛盾深刻核实你的项目细节

针对某技术,问些项目里必定会遇到的问题,好比候选人说作过数据库,那么就会问索引方面的问题经过这类问题,核实候选人是否真的有过项目经验(或者还仅仅是学习经验)

2 准备项目的各类细节,一旦被问倒了,就说明你没作过

通常来讲,在面试前,你们应当准备项目描述的说辞,自信些,由于这部分你说了算,流利些,由于你通过充分准备后,能够知道你要说些什么。并且这些是你实际的项目经验(不是学习经验,也不是培训经验),那么一旦让面试官感受你都说不上来,那么可信度就很低了。

很多人是拘泥于“项目里作了什么业务,以及代码实现的细节”,这就至关于把后继提问权直接交给面试官。下表列出了一些很差的回答方式。

回答方式后果

我在XX软件公司作了XX门户网站项目,这个项目作到了XX功能,具体是XX和XX模块,各模块作了XX功能,客户是XX,最后这个项目挣了XX钱直接打断,由于业务需求我不须要了解,我会直接问他项目里的技术

(须要招聘一个Java后端开发,会Spring MVC)

最近一个项目我是用C#(或其余非Java技术)实现的,实现了……或者我最近作的不是开发,而是测试……或者我最近的项目没有用到Spring MVC

提问,你最近用到SSH技术的项目是何时,而后在评语上写:最近XX时间没接触过SSH

在毕业设计的时候(或者在读书的时候,在学习的时候,在XX培训学校,在XX实训课程中),……直接打断,提问你这个是不是商业项目,若是不是,你有没有其余的商业经验。若是没商业项目经验,除非是校招,不然就直接结束面试

描述项目时,一些关键要素(好比公司、时间、所用技术等)和简历上的不匹配咱们会深究这个不一致的状况,若是是简历造假,那么可能直接中断面试,若是真的是笔误,那么就须要提供合理的解释

在避免上述很差的回答的同时,你们能够按下表所给出的要素准备项目介绍。若是能够,也请你们准备一下用英语描述。其实刚毕业的学生,或者工做经验较少的人,英语能力都差很少,但你说了,这就是质的进步。

要素样式

控制在1分钟里面,讲出项目基本状况,好比项目名称,背景,给哪一个客户作,完成了基本的事情,作了多久,项目规模多大,用到哪些技术,数据库用什么,而后酌情简单说一下模块。重点突出背景,技术,数据库和其余和技术有关的信息。我在XX公司作了XX外汇保证金交易平台,客户是XX银行,主要完成了挂盘,实盘成交,保证金杠杆成交等功能,数据库是Oracle,前台用到JS等技术,后台用到Java的SSH,几我的作了X个月。不须要详细描述各功能模块,不须要说太多和业务有关但和技术无关的。若是面试官感兴趣,等他问。

要主动说出你作了哪些事情,这部分的描述必定须要和你的技术背景一致。我作了外汇实盘交易系统,挂单成交系统,XXX模块,作了X个月

描述你在项目里的角色我主要是作了开发,但在开发前,我在项目经理的带领下参与了业务调研,数据库设计等工做,后期我参与了测试和部署工做。

能够描述用到的技术细节,特别是你用到的技术细节,这部分尤为要注意,你说出口的,必定要知道,由于面试官后面就根据这个问的。

你若是作了5个模块,宁肯只说你能熟练说上口的2个。

用到了Java里面的集合,JDBC,…等技术,用到了Spring MVC等框架,用技术链接数据库。

这部分你风险本身承担,若是能够,不露声色说出一些热门的要素,好比Linux,大数据,大访问压力等。但一旦你说了,面试官就会直接问细节。这个系统里,部署在Linux上,天天要处理的数据量是XX,要求是在4小时,1G内存是的状况下处理完5千万条数据。平均访客是每分钟XXX。

面试前,你必定要准备,必定要有自信,但也要避免以下的一些状况。

要避免的状况正确的作法缘由

回答很简单。问什么答什么,每每就用一句话回答把你知道的都说出来,重点突出你知道的思想,框架问:你SSH用过吗?

答:用过。

问:在什么项目里用到?

答:一个保险项目

问:你作了哪方面的事情?

答:开发

我直接不问了

说得太流利适当停顿,边思考边说让面试官感受你在背准备的东西,这样后面问题就很难

项目介绍时什么都说,就说些刚才让准备的一些,并且要有逻辑地说会让面试官感受你思路太乱

别太多介绍技术细节,就说你熟悉的技术技术面点到为止,等面试官来问你说到的全部技术要点,均可能会被深问。面试官通常会有本身的面试节奏,若是你在介绍时就太多说技术细节,颇有可能被打断,从而无法说出你准备好的亮点。

3 不露痕迹地说出面试官爱听的话

在项目介绍的时候(固然包括后继的面试),面试官其实很想要听一些关键点,只要你说出来,并且回答相关问题比较好,这绝对是加分项。我在面试别人的时候,一旦这些关键点获得确认,我是绝对会在评语上加上一笔的。

下面列些面试官爱听的关键点和对应的说辞。

关键点说辞

能考虑到代码的扩展性,有参与框架设计的意识个人项目XX保险项目,用到SSH技术,数据库是Oracle,(这个是铺垫),开发的时候,我会先和项目经理一块儿设计框架,并参与了框架的构建,链接数据库的时候,咱们用到了DAO,这样作的理由是,把SQL语句封装到DAO层,一旦要扩展功能模块,就能够不用作太多的改动。

有调优意识,能经过监控发现问题点,而后解决

在开发阶段,我就注意到内存的性能问题和SQL运行的时间问题,在压力测试阶段,我会经过xx工具来监控内存和数据库,发现待提高的代码点,而后经过查资料来优化。最后等项目上线后,咱们会部署监控系统,一旦发现内存和数据库问题,咱们会第一时间解决。

动手能力很强,肯干活,会的东西比较多,团队合做精神比较好在项目里,我不只要作开发的工做,并且须要本身测试,须要本身根据一些日志的输出到数据库或Java端去debug,当我开好一个模块时,须要本身部署到Linux上测试。

或者,一旦遇到问题,若是是业务方面的,我会及时和项目经理沟通,若是是技术方面的,我会本身查资料,若是是测试方面的,我会及时和测试的人沟通。

责任心比较强,能适应大压力的环境被问“你若是在项目里遇到问题怎么办?”

回答:遇到问题我先查资料,若是实在无法解决,不会拖,会及时问相关的人,即便加班,也会在规定的时间内解决。

有主见,能不断探索新的知识在项目里,我会在保证进度的前提下和项目经理说个人想法,提出个人解决方案。在开发过程当中,我会先思考一下,用一种比较好的方式,好比效率最高的方法实现。

另外你要找机会说出:平时我会不断看一些新技术(好比大数据Hadoop),会不断深刻了解一些框架和技术的实现底层。

4 必定要主动,面试官没有义务挖掘你的亮点

我去面试人家的时候,每每会特别提问:你项目里有什么亮点?或者你做为应聘者,有什么其余加分项能帮你成功应聘到这个岗位。即便这样问,还有些人直接说没有。

我这样问已是处于角色错位了,做为面试者,应当主动说出,而不是等着问,但请注意,说的时候要有技巧,找机会说,一般是找一些开放性的问题说。

好比:在这个项目里用到了什么技术?你除了说一些基本的技术,好比Spring MVC,Hibernate,还有数据库方面的常规技术时,还得说,用到了Java内存管理,这样能减小对虚拟机内存的压力,或者说用到了大数据处理技术等。也就是说,得找一切机会说出你拿得出手的并且当前也很是热门的技术。

或者找个相关的问题作扩展性说明,好比被问到:你有没有用到过一对多和多对多?你除了说基本知识点之外,还能够说,通常我还会根据需求适当地设置cascade和inverse关键字,随后经过一个实际的案例来讲明合理设计对你项目的帮助,这样就能延伸性地说明你的技能了。相反若是你不说,面试话必定会认为你只会简单的一对一和一对多操做。

面试的时候,若是候选人回答问题很简单,有一说一,不会扩展,或者用很是吝啬的语句来回答个人问题,那么我通常会给机会让他们深刻讲述(但我不敢保证不是每一个面试官都会深刻提问),若是回答再简洁,那么也会很吝啬地给出好的评语。

记住:面试官不是你的亲戚,面试官很忙,能挖掘出你的亮点的面试官不多,而说出你的亮点是你的义务。

我在面试别人过程当中,根据不一样的状况通常会给出以下的评语。

1 回答很简答,但回答里能证实出他对框架等技术确实是作过,我会在评语里些“对框架了解通常,不知道一些深层次的知识(我都问了屡次了你都回答很简答,那么对不起了,我只能这么写,或许你确实技术很强,那也没办法,谁让你不愿说呢?)”,同时会加一句“表达能力很通常,沟通能力不强”,这样即便他经过技术面试,后面的面试他也会很吃力。

2 回答很简单,经过回答我无法验证他是在项目里作过这个技术,仍是仅仅在平时学习中学过这个技术。我就会写“在简历中说用过XX技术,但对某些细节说不上来,无法看出在项目里用到这个技术”,若是这个技术是职务必需点,那么他经过面试的可能性就很是小。

3 回答很简单,并且只经过嗯啊之类的虚词回答,通过提醒还这样,我会敷衍几句结束面试,直接写“技术很薄弱,无法经过面试”。

4 虽然经过回答能很好地展现本身的技能,但逻辑调理不清晰,那么我会让他经过技术面试,但会写上“技能很好,但表达能力通常(或有待提升),请后继面试经理斟酌”。这样经过后继综合面试的机会就通常了,毕竟综合面试会着重考察表达能力交往能力等非技术因素。

无论怎样,一旦回答简单,不主动说出你的擅长点,或没有条理很清楚地说出你的亮点,就算我让你经过面试,也不会写上“框架细节了解比较深,数据库应用比较熟练”等之类的好评语,你即便经过技术和后面的综合面试,工资也是比较低的。

5 一旦有低级错误,可能会直接出局

面试过程当中有些方面你是绝对不能出错,因此你在准备过程当中须要尤为注意以下的因素。下面列了些会致使你直接出局的错误回答。

错误类型致使的后果

先后矛盾,后面的回答没法证实你的项目描述,好比一开始说用到了Spring MVC,后面无法说出最基本的实现,好比不知道Spring有哪些类,或者无法说出项目的细节。我会怀疑这个项目的真实性,我就会进一步问:数据库用什么,数据量多少?多少人作了多少时间,一旦再出现明显漏洞,好比一个小项目用到很是多的时间,那么就不只仅是技术问题,而是在面试过程当中企图“蒙混过关”的性质了。

项目里必定会用到的基本概念性问题都回答不上,Spring的依赖注入概念是什么,怎么用的,或者Hibernate的一对多怎么实现一旦被我发现概念不知道,我就会经过更多问题确认,若是被我确认很弱,这就至关严重,由于技术能力差和技术没用过是两个大相径庭的情况,技术没用过会致使直接出局。

面试时说出的工做经验和简历上的不一致我会直接怀疑简历是编的,我会让候选人解释,即便是说简历写错了,我也会问比较深刻的问题来核实他的技能和能力。

简历上的技能描述和回答出来的明显不一致,好比明明是只会简单的Linux,但吹得天花乱坠我会经过一些比较深的问题核实其余技能,找出其余方面吹嘘的水分。

因此建议,你能够适当夸张,但别过度,好比你在项目里没搭建框架但平时学习时搭建过,你能够写“XX项目的框架是你搭建的”,但你不能说你是一个架构师,很是了解项目的底层。

让面试官感受你不稳定,很浮躁,好比说话不庄重,或者面试时打扮很是不正规,就穿背心来。即便你技术再好,这个会可能致使你直接出局。

我对油嘴滑舌的候选人通常会直接写上很差的评语,这样很难事后面项目经理的面试。

我还遇到一我的,简历上工做是半年一换,我问他为何常常换,他直接说是待遇问题,这我的我是直接Fail掉。

明说不能加班,不能出差其实虽然有这一问,但公司里未必真的会加班会出差。但

听到这类回答,说明这我的不能承受大压力的工做,或者责任心不强,大多数公司是不会要这种人的。

6 引导篇:准备些加分点,在介绍时有意提到,但别说全

在作项目介绍的时候,你能够穿插说出一些你的亮点,但请记得,不论在介绍项目仍是在回答问题,你当前的职责不是说明亮点而是介绍项目,一旦你详细说,可能会让面试官感受你跑题了。

因此这时你能够一笔带过,好比你能够说,“咱们的项目对数据要求比较大,忙的时候平均每小时要处理几十万条数据”,这样就能够把面试官引入“大数据”的方向。

你在面试前能够根据职位的需求,准备好这种“一笔带过”的话。好比这个职位的需求点是Spring MVC框架,大数据高并发,要有数据库调优经验,那么介绍以往项目时,你就最好突出这些方面你的实际技能。

再给你们举个例子,好比Java虚拟机内存管理和数据库优化是绝大多数项目都要遇到的两大问题,你们均可以在叙述项目经验时说,在这个项目里,咱们须要考虑内存因素,由于咱们的代码只容许在2G内存环境中运行,并且对数据库性能要求比较高,因此咱们常常要监控优化内存和数据库里的SQL语句。这样当面试官深刻提问时,就能抛出本身准备好的虚拟机内存优化和数据库优化方面的说辞。

实在不行,你也能够说“我除了作开发,也作了了解需求,测试和部署的工做,由于这个项目人手比较少,压力比较大”,这样你也能展现你有过独挡一面的经历。

我在面试过程当中,一旦听到有亮点,就会等到他说好当前问题后,顺口去问,通常技术面试最多办半小时,你把时间用在回答准备好的问题点上的时候,被问其余问题的时间就会少了。

7 你能够引导,但不能自说自话

我面试的时候,也会遇到些有准备的人,其实若是你真的想应聘的话,必定要事先准备,这点我能理解,甚至赞同,你只要别露出太明显的痕迹,我不会写上“彷佛有准备,无法考察真实技能”这种话,更况且未必每一个面试官都能感受出你准备过。 但你不能凭着有准备而太强势,毕竟面试是面试官主导的。

我遇到个别面试的人,他们说话太多,通常会主动扩展,好比我问他数据库用什么,他不只回答数据库是什么,本身作了什么,甚至顺便会把大数据处理技术都说出来。

其实过犹不及,我就会重点考察你说的每一个细节,由于我怀疑你说的都是你从网上看的,而不是你项目中用到的,我甚至会直接威胁:“你先和我说实话这个技术你真在项目里用到,我后面会重点考察,一旦被认为你项目里没作,这个性质就是蒙混过关了”,每每这些人会主动坦白。

不过话说回来,他若是仅仅说,数据量比较大,但点到为止,不继续说后面的话,我就会深刻去问,他天然有机会表达。同时请注意,通常在面试过程当中,一旦你亮出加分点,但面试官没接嘴,这个加分点可能就不是项目必备的,也不是他所关注的,当前你就能够别再说了,或者等到你提问题的时候再说。

8 不是结尾的总结

到这里,咱们已经给出了介绍项目的一些技巧。这些技巧都是从Java Web轻量级开发面试教程和Java核心技术及面试指南里摘录的。

两句话,第一,面试前必定要准备,第二,本文给出是的方法,不是教条,你们能够按本文给出的方向结合本身的项目背景作准备,而不是死记硬背本文给出的一些说辞。

当你们介绍好项目背景后,面试才刚刚开始,哪怕你说得再好,哪怕你把问题引导到你准备的范围里,这也得应付Java Web(好比Spring MVC,ORM等)、Java Core(多线程、集合、JDBC等)和数据库等方面的问题。

那么本文的价值体如今哪呢?若是引导很差,你根本没机会展现本身的能力。这就是本文给出的方法价值所在。说句自诩的话,本文给出的一些方法和说辞不是拍脑壳想出来的,而是从面试上百个候选人的经历中抽取出来的,其中有很多血泪,也有很多人成功的途径,这篇文章多少对你们(尤为是经验不满3年的初级程序员)有帮助,这也是本文申请放入首页的理由。

这不是结尾,咱们还将在合适的时候写一些关于“如何应对常见问题”或“如何快速提高本身能力”等方面的博文。


本文由转载于互联网,如有侵权请联系删除!