java面试要注意什么
这些年面试了各种水平不一的Java开发程序员,现在就是感觉现在做Java开发的人,内心过于浮躁,大部分的人都是急于求成,或许现在这个时代就是这个样子,每一个人都想要用最少的付出,得到最快的回报。尤其是现在的90后!技术一般,要求还很高。
其实很多刚想要入职的人,根据不懂的面试是什么,至于面试技巧之类的,更是一无所知,所以就导致面试受到了严重的打击,甚至有的人就放弃了。所以我从这篇文章中,想要总结一些面试技巧和一些坑,做好准备才能面试成功。
我是咋面试Java的?
一、简历
找工作无非就是两个步骤,首先是简历,其次是面试。先说简历的问题,一般情况公司肯定是从简历高的从上往下进行选择,因为学历其实本身就是代表了能力。但不是说学历代表了一切。在我们不了解面试者的实际情况下,我们只能从上往下面进行选择。无论是hr还是我们做技术的,都有自己的一个标准,所以你首先是简历要写的让别人映入眼帘。而不同职能的人捞简历的方式也千差万别。
我选择简历的角度有自己的看法,当然,不同的面试官有不同的选择。
1. 我看简历中所提的技术需求是否满足我的要求,我看重简历中他善于的技术,如果一点技术词汇没有提到,那么这个人有以下几种可能:
NO.1很水
NO.2很牛但是概率很小
NO.3不会写简历
在第一关中,很多人会因为简历不行,所以丧失了面试的机会。
大家肯定会问,我应该怎么在简历中体现自己的实力呢?
你现在面试个公司,他们的主要技术是SSM技术的工程师,你的简历里面只有 SSM这个名词是不够的,最好能体现出 SSM的生态来以及你对于SSM的理解。
二、个人介绍
如果简历通过了筛选,下面就是见真章的时候了,面试环节。首先一定要准备好一段5分钟的个人介绍。
遇见过这样的面试者,个人介绍说不完,废话太多,别人听的很烦,从高中时代说起,然而面试官并没有那么多的耐心和时间。这样会留下不太好的初次印象。正确的做法是:
言简意赅的说明自己的工作时间,擅长技术栈和自己的工作预期。
三、技术名词
我是通过技术名词来筛选简历,这就成为了我面试的重点部分。简历都是技术名词也是一把双刃剑:
1. 不写技术名词,简历不容易通过;
2. 写上,需要充分的准备,否则你的技术能力可能会面试失败;
四、询问项目的深度
项目经验是面试中“最”重要环节,要对于面试者有全面的认识,我会用很多时间去询问面试者做过的项目。
不会有人只有一个项目,我的问题就变成了:看出来你做过不少项目,有没有哪个项目是你做的最好,你可以拿出来说一说。
如果大家对于学习Java有任何问题(学习方法,学习效率,如何就业),可以随时来咨询我,这是我的Java交流学习扣扣qun:前面是六一五,中间是七四一,后面是六三六。 多多交流问题,互帮互助,qun里有不错的学习教程和开发工具。
当面试者讲自己项目的同时,作为面试官,有几件事情需要确定:
1. 首先要确定项目是否是自己做的,即确定项目的真实性;
举个例子:你的项目是 SSM搭建的,是否可以告知搭建项目的过程和需要注意的地方是什么吗?
这时候有人就懵逼了,什么都说不出来。
细问之下,告诉我项目是其他同事搭建的,自己只负责开发业务。
2. 项目的缺陷
架构项目的时,想太多会过度设计,想的少会出现业务增长而造成的种种问题。企业在探索某个技术领域的最佳实践,其实并没有行业通用标准,只是思想可以借鉴罢了。
不过,经验丰富的话,还可以不断重构,确实可以修复项目的缺陷。所以呢?我的问题来了:在项目中碰到过一些问题,你是如何解决的?
这是考察你实际处理问题的能力,还有你这个人是否会独立思考,是否有脑子在运转,这个真正的个人能力。
3. 项目的深度
项目做到一定规模后,想要得到更大的提升,一定会去深挖原理。
项目深度的考察其实比较难,总会有一些行业通用问题需要去解决,这也就是 BAT,TMD 这些公司经常会去制定一些行业标准,开源一些技术方案的原因。
当然,很多公司还是达不到这个层次,所以项目深度也是因人而异,并没有通用标准。
所以考察方向就成了对这个项目的持续开发,垂直领域以及深度思考。
五、程序基础,手写代码,算法
如果面试要求手写代码的面试官是不是都很傻叉?
当然不是,我们通过写代码就可以看出一个人的编程功底和编程思想。我们很多时候都在阅读别人的代码,所以能迅速的看出你代码问题的人,在我看来,能力是在你之上的。
六、是否热爱技术
一句话,即使你没有那么热爱技术,你也要表现的很热爱技术。
七、个人职业规划
最开始,我认为所谓的个人规划其实就是空谈,一切不切实际的东西。但是当接触的人多了,我慢慢发现。有职业规划的人和没有职业规划的人真的不一样。我会发现有些人之后的几年毫无进展,完全是在混资历,技术一塌糊涂。
为什么会有这种现象,我猜测大概有如下几点原因:
1. 没有个人规划,走哪算哪,混日子型;
2. 忙于管理,疏于技术;
3. 长期在一个岗位,做着千篇一律的事情,永远在写CRUD;
八、面试者反馈
面试接近尾声的时候,作为尊重,这时候我都会去问这样一个问题:大概情况我都了解了,有没有你觉得自己擅长而又没被问到的东西?
每个人都会有自己的思维,甚至是偏见,所以面试的时候一定要去得到面试者的互动和反馈,从而映证自己的观点。报着一个人才都不放过的心态,去全方位了解面试者。
九、你有什么问题想问我?
面试官一定要放低姿态,不要一副高高在上的样子,尤其是做技术的。如果觉得面试者稍微有些紧张,可以先聊点其他,如:所学专业,住在哪里,上下班时间之类无关痛痒的问题,缓解一下紧张气氛。
至于最后一个问题为什么要问:你有什么问题想问我?有以下几点理由:
1. 确定面试反馈;
2. 给面试者一个沟通的机会;
3. 看看面试者对应试部门的了解或者是对公司的兴趣;
2020-10-21
要对公司的情况有一些了解,比如公司的背景、专业资质、愿景、文化等等
而且还要给HR留下一个不错的印象,最核心的要表达出:你非常适合这个职位而且你非常希望得到这个职位。
学会解决算法问题是java程序员必备技能,在很多面试中,都会有这样的问题,要求你在白板或者电脑上解决软件编程问题,但是许多程序员,即使是那些非常优秀的程序员,都会一下子大脑一片空白,完全理不出思路来。如果你能花时间学会如何解决这种类型的面试问题,那么下次再碰到这种场景,就不会这么紧张了。