程序员面试总不通过,为什么?总结了这些经验
要想找到一份高薪的工作,学习到扎实的基础知识和专业技能是最基本的,但面试失败也是很正常的一件事,但能从失败中总结经验,这也为一下次面试的成功率增强了很多。今天,我为大家总结了造成面试不通过的主要原因,大家在面试时候避免进入这样的误区。
一、造成面试不通过的核心原因七大原因
1.能力对职位来说过高或太低
因为能力低而没有机会这很正常,那么能力太高也会影响录用吗?其实这要从稳定性及用人部门领导的需求来看。
一般来讲能力很高的人对职位的期望值也就越高,一旦这个职位所能带给他的不管是待遇或是职业成长都比较少,那么不久后就跳槽几乎是完全可以预见的结果,长远的稳定性上来看就比较差了。而用人部门领导对所聘岗位的需求也许就是不需要能力太高,既方便管理也能更好地培养,从事HR工作多年的前程无忧网友“悠然星月”就曾提到:“也许,对方的部门负责人并不热衷于找一个人分担自己的职责,他只需要一个助手,所以,你越是完美,越是通不过部门的审核。”
2.过往经历表现出的倾向不符合公司预期
简单来说,就是以往经历中有瑕疵,而这个瑕疵的影响似乎并没有完全消除,很可能影响你下一份工作的状态。如喜欢频繁跳槽,并且现在仍有这个倾向;为了照顾家庭,难以顾及工作;创业失败,状态尚未调整好;工作年限与工作经验含金量不匹配;求职意向过于混乱,对自己的职业生涯缺乏规划等。
3、讲话没有重点
换句话说,就是废话连篇,言之无物。如果你不能简洁扼要的解释问题,那么面试官也会怀疑你工作的时候是不是也会像你说话一样,拖泥带水。所以在面试过程中,你可以问下面试官,是否需要详细的解释。
解释也是一门艺术,关键是确定重点,如果需要的话再深入到细节。当聊到业务的时候,就应该从业务的角度看问题,不要涉及任何技术术语。学会用简洁明了的方式解释问题。如果你能时刻把握主旨,那么这一点也不是问题。
4、说的太少,含糊其辞
尤其是那些开放式的问题,如“请介绍下你自己”或“请讲一下你曾经解决过的复杂问题”。
面试官会通过你对这些技术和非技术问题的回答来评估你的激情。他们也会通过模拟团队氛围和与你的交流互动来判断你的经验和能力。
如果你不能很好地说明你的经验、成就和技能可以给企业带来的价值,那么你的竞争力就不会高。所以你需要对一些最常见的开放式问答作充分的准备,学会推销自己。
5、不了解基础的技术问题
面试不是技术竞赛,不是看谁答对的问题多,但是有一些“必须知道”的核心Java和Web基础知识,你不能不知。例如,对于Java开发人员:
v 不知道“==”和equals()之间的区别;
v 不知道equals()和hashCode()方法被隐式调用时的约定;
v 不知道OO的概念和设计原则;
v 不能很好地处理多线程;
v 不知道如何在HTTP客户端与服务器端之间保持状态;
v 不能解释曾投入精力过的应用程序的高层体系结构;
v 不知道SQL。
6、写不好简单的代码,解决不了棘手的问题
作为一个开发人员,你应该根据自己的经验水平,来针对给定的问题和情况编写代码。特别是如果碰到一个比较棘手的问题,那么即使你还没有解决方案,也应该将你的思路讲给面试官听。
当然这在面试时会让人特别紧张,尤其是在还有时间限制的情况下,但是你也必须保持冷静,至少应该说明你将如何试着去解决问题的方法。
7、糟糕的礼仪和态度
迟到,不适宜的着装,抖手抖脚,没有眼神接触,过于紧张,没有提问,显示不出对这份职业的兴趣,“我什么都知道”的高傲态度,贬低你的现在和以前的雇主,遇到技术问题时烦躁不安或者垂头丧气,为自己找理由而不是虚心接受错误,与面试官发生争执,不好的肢体语言,随波逐流而没有自己的看法,过于呆板,撒谎,嗓门太大,无法成为良好的倾听者等等。
关于跳槽,我再啰嗦啰嗦几句!
程序员必须有责任心!这点非常重要。遇上问题,不能随便的踢皮球,很认真的和别人沟通,提出自己的见解,和客户联系,才能把问题解决。技术上的问题不是问题,总可以解决,但是需求上的问题,必须搞清楚!一旦需求出错,一个项目就可能延期或者失败。程序员的责任心决定了他的成长,一个有责任心的人才可能成为骨干,让领导信任。
其次就是能顶住压力,大家都知道程序员要加班,压力大,所有遇到问题必须不轻易放弃,合理的根据能力去处理!
身体是革命的本钱,程序员尤其重要,天天坐在电脑前,很容易发胖,变成鸭梨身材,所有多锻炼呀!
到某些程度就不要跳槽了,在一家有发展前景或者工作开心的工作长久呆下去吧,不能跟年轻人比热情了,这时候要的是稳重,在公司充当的是一个资深的IT从业者,帮人优化程序,分析需求,为项目出谋划策解决疑难等。
温馨提示:多写技术文档
多写技术文档是好事哦~其实它是对你工作经验的总结和提高一个愿意和别人分享知识的人,才能在不断的思考中提高,而且写文档很锻炼人滴。
自学Java最起码要学到什么程度?
先说句正确的废话,自学java应当能学到能找到工作的地步,具体展开下。
1 大多数公司,对于Java初级开发的要求是,会用Spring Boot+JPA做增删改查。
2 所以零基础的Java小白,无需学太多的内容,只要掌握Spring Boot+JPA做增删改查的技能。
3 但是,Java小白如果要找到第一份工作,一定要写好简历同时准备好面试,否则学得再多也无法找到工作。
先详细说下大多数公司对Java零基础开发的一般要求,也就是说,只要学到这种程度就可以去找工作,其他技能,多学了就浪费。
1 能使用基本的开发环境,比如会用IDEA集成开发环境开发、调试和运行Java,会用mysql等客户端连接到数据库。
2 知道基本的语法,会照着现在的代码改一下,开发新的功能。如果有问题,能自己通过查资料很快解决。
以上是最基本的需求,公司当然希望程序员能力越强越好,能自己调试并解决问题,jpa,logback,junit等功能组件当然是会得越多越好。但最低的标准是,开发时遇到问题,知道会问,能通过请教别人很快解决掉问题。
根据上述要求,再细化下大多数公司对java开发的最低技术要求点。
1 熟悉各种开发工具的用法。
2 熟悉Java核心技术点,包括面向对象,集合,异常处理,多线程和IO等技能,哪怕具体语法不知道,遇到需求能很快通过查资料或问人解决。
3 熟悉Spring boot(或其他web框架,比如ssm等)框架开发业务的做法,最低标准是,开发时能参考现有的代码改写。比如现有订单查询模块,能据此开发一个员工查询的模块。
3 至于redis,dubbo等分布式组件,这些属于加分项,会了更好,但如果不会,仅仅会spring Boot增删改查,也能找到工作。
可能大家在网上看到很多面试题,这些面试题里给出的技术要远难于上文提到的。其实网上给出的技术面试题也没错,但不是针对零基础初级开发的,如果大家去面一些小公司,上述技术掌握了就可以了,后面就是准备简历和准备面试的工作。
然后再说下,零基础的Java小白该如何高效地把相关技能学习到能工作的地步?
1 搭建环境,包括jdk,IDEA集成开发环境,mysql数据库,因为MySQL数据库好搭,所以不建议初学者搭oracle,然后搭个数据库客户端工具,比如navicat。
2 找个视频,或买本书,入门java核心的语法。这里建议大家还是买本书,毕竟书是经过出版社检验,里面知识点成系统,而且代码也能跑通,入门Java的书可以选这个。
请注意,入门Java语法的时间一般是三个星期到一个月,需要边运行代码边了解技能。了解技能时,不要过多关注语法,需要先知道什么类能做什么事情即可。
同时,学java语法时,不建议在开始阶段学设计模式,面向界面编程(比如swing和awt),也建议学socket编程,因为实际开发用不到。在学java语法时,面向对象,集合,异常处理和jdbc是关键,io和多线程可以了解概念即可。
3 数据库方面,可以不用买专门的书入门,数据库方面,需要知道如何通过java里的jdbc连接数据库和通过jdbc做数据库的增删改查操作即可。入门数据库时,也可以用上文提到的疯狂Java讲义。
4 这部分是重点,全面了解Spring boot+JPA做增删改查的技能,java小白入职后干的就是这个。
这方面可以用我出的书来学,我这本书里,不仅包含了Spring boot框架的常用组件,比如junit,swagger等,还包含了spring boot整合分布式组件的用法,这些技能对初学者来说,一定是找工作时的加分项。
5 一般可以用1到2个月时间学好Spring boot,然后可以运行若干个项目来把学到的技能串起来。我的书里,包含了一个全栈库存管理系统和秒杀系统,此外大家还可以运行其他的案例来综合巩固学到的技能。
其实学到这个程度,零基础的java小白就可以去找工作了。可以有些同学会心虚,因为网上有不少文章,说Java要学到能工作的地步,还得学其他技能。但是我还是这个观点,学好spring boot+jpa做增删改查的地步,就可以去找工作了。这里先来解释下理由。
1 网上很多面试题,是针对有工作经验的,或者虽然是针对零基础,但面试要求是针对大厂的,而上文的面试要求,是小公司针对零基础Java开发的。
2 Java零基础的小白,固然可以继续学更多更广的技能,或者说再多运行通些项目,再去找工作。但本文提到的,掌握到spring boot+jpa做增删改查的地步,再出去面试,更可以通过面试来调整自己的学习路径。
3 很多技能,比如logback或分布式组件等,其实只有在项目里才能学得好,如果自己,非常有可能学到的技能不是项目中所要的,这样还不如直接学到最低标准,然后通过面试进公司后再学,这样能以更高的效率学习相关技术。
总之,按上述步骤学到最低标准后,就可以准备简历和准备面试了。先说下零基础的java小白如何准备简历呢?
1 在简历中尽可能多地写点项目,这些项目可以是你在毕业设计或实习阶段做的,如果实在没有,就把你学习阶段运行通过的项目写进去。
2 在简历中,全方位地列出你掌握的技能,比如spring boot,jpa等。
总之得通过简历,让面试官看到你有足够长的项目实践的年限,熟悉spring boot+JPA以及他们公司所要求的技术,这样至少你就有面试机会了。
投简历的时候,千万注意,先投小公司,或外派公司。然后按如下的步骤准备面试。
1 背题,背java面试题,数据库面试题,Spring boot面试题等等,凡是网上有的,你都去了解下。背题的时候还要准备笔试,比如算法或排序等。
2 结合你的项目,说明Spring boot做增删改查的流程,比如用哪些注解,怎么和数据库关联等。
在面试过程中,java零基础的小白只需要证明有做项目的能力,再啰嗦下,掌握spring boot+JPA做增删改查的能力,如果对方是个外包公司,或是小公司,达到这个程度足以能帮你应聘成功。
当然在做的时候,需要不断地根据面试问题来调整,比如某场面试,你被问了数据库的事务隔离级别,你没答上来,那么回家后,你就要把事务相关概念,比如传播机制,事务的语法和注解等再复习下。这样经过若干场面试,你完全可以找到工作。
上述步骤一般需要多久?搭建环境+熟悉Java核心的语法,满打满算1个月,掌握Spring boot+JPA,一个半月到两个月,准备简历和面试,估计半个月到一个月。以上还是一般情况,我平时会辅导零基础的java小白,一些比较上心的同学,只要用2个月的时间就能学好技术,到了第3个月,基本上可以收到offer了。
然后说下,学java应该是靠自学还是需要报班?
1 在校阶段,或者有足够多的时间,可以自学,但自学起来,遇到问题,需要自己解决,很多事情需要摸索,可能会走弯路。不过我见过不少人,通过3个月的时间自学,然后能找到工作。
2 如果已经是在职了,或者感觉自己学习能力不怎么行,解决问题的能力有待提高,那么可以报个班。但报班的时候尽量找大城市,找个名声比较好的。报班的话相当于用钱买时间,也能提升java入行的成功率,我见过很多做其他工作的人,最终通过报班成功入行java。
不管是自学还是报班,学java的方法,一定是先积累最低程度的技术,然后通过面试优化自己的技能,然后进到项目组里全面提升。
也就是说,java零基础小白入职时,通过面试表现出来的能力,很有可能是优于你实际技能,其实这就是零基础小白入行的关键。
1 留给小白入行的学习时间不多,所以只需要学到最低的程度。
2 最低程度的技能+面试技巧,确实能帮小白成功入职。
3 一些高级技巧,比如redis组件等,在自学阶段学到的技术,未必是项目开发所用的,所以除了最低限度技能之外,学的其他技术很有可能是白学了。
4 通过面试尝试,能很好地知道哪些技能该学,也就是说,通过面试的试错来学习,要比自己闭门造车学习的效率要高很多。
自学Java靠谱吗?自学Java能找到工作吗?建议收藏反复查看!
网上是不是很多人劝你学Java不要报班,浪费金钱,自己在家学习Java就可以了。那小源问你,自学Java它的成功率到底有多少?前两天看到一位老师发的视频,说自学的成功率大概在5%左右,小源觉得这个数据还是比较客观真实的。那么以好程序员同学之前自学经历来看,我觉得自学Java有两个坎真的很难迈得过去:
第一,你不知道学习的边界在哪里,我们都知道每个Java程序员都在学Java基础,SSM框架、SpringBoot和数据库。那么是不是一定要学到源码级别呢?是不是学得越深越好?其实这个不一定,而且很多同学觉得这个也重要,那个也重要,东看一点西看一点,这样可能到最后,你是啥都会一点啊,但是都不精通,也无法用到实践。
第二,很多同学都在看视频教程,敲代码,明明它的可以运行成功,你的代码却始终跑不起来,在经历了几轮努力之后,最终还是崩溃了。还有一旦你的代码书写出现bug之后,你是很难解决的,所以这些同学,也是遗憾离场。
其实很多同学在学Java的时候也会碰到这两个问题,要是在十年前自学完还是能找到工作的,即使你是个半桶水也可以找到工作。但是现在Java2023的就业环境啊,已经发生了变化,你没有两把刷子真的很难找到工作,所以努力吧同学们。
关注小源,为您带来更多Java资讯!后台dd,领“Java精华视频”!
本文作者及来源:Renderbus瑞云渲染农场https://www.renderbus.com
文章为作者独立观点不代本网立场,未经允许不得转载。