程序员该如何跟面试官介绍自己的项目经历呢?
俗话说七分靠打拼三分天注定,程序员面试也一样,七分看能力,三分靠技能,而刚开始时的介绍项目又是技能中的重中之重,决定一次面试的成败,那么面试时如果介绍自己的项目呢?
1、在面试前准备项目描述
别害怕,因为面试官什么都不知道,面试官是人,不是神,拿到你的简历的时候,是没法核实你的项目细节的。更何况,你做的项目是以月为单位算的,而面试官最多用30分钟来从你的简历上了解你的项目经验,所以你对项目的熟悉程度要远远超过面试官,所以你一点也不用紧张。
如果你的工作经验比面试官还丰富的话,甚至还可以控制整个面试流程。
既然面试官无法了解你的底细,那么他们怎么来验证你的项目经验和技术?下面总结了一些常用的提问方式。
2、准备项目的各种细节
一般来说,在面试前,大家应当准备项目描述的说辞,自信些,因为这部分你说了算,流利些,因为你经过充分准备后,可以知道你要说些什么。一旦让面试官感觉你都说不上来,那么可信度就很低了。
不少人是拘泥于“项目里做了什么业务,以及代码实现的细节”,这就相当于把后继提问权直接交给面试官。
在避免上述不好的回答的同时,大家可以按下表所给出的要素准备项目介绍。如果可以,也请大家准备一下用英语描述。其实刚毕业的学生,或者工作经验较少的人,英语能力都差不多,但你说了,这就是质的进步。
面试前,你一定要准备,一定要有自信,但也要避免如下的一些情况。
3、不露痕迹地说出面试官爱听的话
在项目介绍的时候,面试官其实很想要听一些关键点,只要你说出来,而且回答相关问题比较好,这绝对是加分项。
下面列些面试官爱听的关键点和对应的说辞。
4、一定要主动,面试官没有义务挖掘你的亮点
面试官往往会这样问:你项目里有什么亮点?或者你作为应聘者,有什么其他加分项能帮你成功应聘到这个岗位。你作为面试者,应当主动说出,而不是等着面试官问,但请注意,说的时候要有技巧,找机会说,通常是找一些开放性的问题说。
比如:在这个项目里用到了什么技术?你除了说一些基本的技术,比如Spring MVC,Hibernate,还有数据库方面的常规技术时,还得说,用到了Java内存管理,这样能减少对虚拟机内存的压力,或者说用到了大数据处理技术等。也就是说,得找一切机会说出你拿得出手的而且当前也非常热门的技术。
或者找个相关的问题做扩展性说明,比如被问到:你有没有用到过一对多和多对多?你除了说基本知识点以外,还可以说,一般我还会根据需求适当地设置cascade和inverse关键字,随后通过一个实际的案例来说明合理设计对你项目的帮助,这样就能延伸性地说明你的技能了。相反如果你不说,面试话一定会认为你只会简单的一对一和一对多操作。
5、面试过程中绝对不要出错
出错会导致你直接出具,所以你在准备过程中需要尤其注意如下的因素。下面列了些会导致你直接出局的错误回答。
6、一点要学会引导面试官
在做项目介绍的时候,你可以穿插说出一些你的亮点,但请记得,不论在介绍项目还是在回答问题,你当前的职责不是说明亮点而是介绍项目,一旦你详细说,可能会让面试官感觉你跑题了。所以这时你可以一笔带过,比如你可以说,“我们的项目对数据要求比较大,忙的时候平均每小时要处理几十万条数据”,这样就可以把面试官引入“大数据”的方向。
你在面试前可以根据职位的需求,准备好这种“一笔带过”的话。比如这个职位的需求点是Spring MVC框架,大数据高并发,要有数据库调优经验,那么介绍以往项目时,你就最好突出这些方面你的实际技能。
再给大家举个例子,比如Java虚拟机内存管理和数据库优化是绝大多数项目都要遇到的两大问题,大家都可以在叙述项目经验时说,在这个项目里,我们需要考虑内存因素,因为我们的代码只允许在2G内存环境中运行,而且对数据库性能要求比较高,所以我们经常要监控优化内存和数据库里的SQL语句。这样当面试官深入提问时,就能抛出自己准备好的虚拟机内存优化和数据库优化方面的说辞。
实在不行,你也可以说“我除了做开发,也做了了解需求,测试和部署的工作,因为这个项目人手比较少,压力比较大”,这样你也能展示你有过独挡一面的经历。
总结
面试前一定要准备,在讲解项目的过程当中,先讲解项目背景。也就是说为什么要做这个项目,它与公司的业务发展是什么关系?来源于什么诉求?这里如果讲解清楚,不仅能够让面试官容易理解,也很能体现技术视野与业务理解等软实力的。不用把项目当中所有的功能都介绍一遍,完全没有那个必要,迎合面试官的需要,体现自己的特点。
——————END——————
欢迎关注“Java引导者”,我们分享最有价值的Java的干货文章,助力您成为有思想的Java开发工程师!