⭐如何高效准备 Java 面试?
~~~~前言
大家身边一定有很多编程比你厉害但是找的工作并没有你好的朋友!技术面试不同于编程,编程厉害不代表技术面试就一定能过。
现在你去面个试,不简单准备一下子,那简直就是往枪口上撞。我们大部分都只是普通人,没有发过顶级周刊或者获得过顶级大赛奖项。在这样一个技术面试氛围下,我们需要花费很多精力来准备面试,来提高自己的技术能力。“面试造火箭,工作拧螺丝钉” 就是目前的一个常态,预计未来很久也还是会这样。
准备面试不等于耍小聪明或者死记硬背面试题。 一定不要对面试抱有侥幸心理。打铁还需自身硬! 千万不要觉得自己看几篇面经,看几篇面试题解析就能通过面试了。一定要静下心来深入学习!
这篇我会从宏观面出发简单聊聊如何准备 Java 面试。
尽早以求职为导向来学习
我是比较建议还在学校的同学尽可能早一点以求职为导向来学习的。
这样更有针对性,并且可以大概率减少自己处在迷茫的时间,很大程度上还可以让自己少走很多弯路。
但是!不要把“以求职为导向学习”理解为“我就不用学课堂上那些计算机基础课程了”!
我在之前的很多次分享中都强调过:一定要用心学习计算机基础知识!操作系统、计算机组成原理、计算机网络真的不是没有实际用处的学科!!!
你会发现大厂面试你会用到,以后工作之后你也会用到。我分别列举 2 个例子吧!
- 面试中 :像字节、腾讯这些大厂的技术面试以及几乎所有公司的笔试都会考操作系统相关的问题。
- 工作中 :在实际使用缓存的时候,你会发现在操作系统中可以找到很多缓存思想的影子。比如 CPU Cache 缓存的是内存数据用于解决 CPU 处理速度和内存不匹配的问题,内存缓存的是硬盘数据用于解决硬盘访问速度过慢的问题。再比如操作系统在页表方案基础之上引入了快表来加速虚拟地址到物理地址的转换。我们可以把快表理解为一种特殊的高速缓冲存储器(Cache)。
如何求职为导向学习呢? 简答来说就是:根据招聘要求整理一份目标岗位的技能清单,然后按照技能清单去学习和提升。
- 你首先搞清楚自己要找什么工作
- 然后根据招聘岗位的要求梳理一份技能清单
- 根据技能清单写好最终的简历
- 最后再按照建立的要求去学习和提升。
这其实也是 以终为始 思想的运用。
何为以终为始? 简单来说,以终为始就是我们可以站在结果来考虑问题,从结果出发,根据结果来确定自己要做的事情。
你会发现,其实几乎任何领域都可以用到 以终为始 的思想。
了解投递简历的黄金时间
面试之前,你肯定是先要搞清楚春招和秋招的具体时间的。
正所谓金三银四,金九银十,错过了这个时间,很多公司都没有 HC 了。
秋招一般 7 月份就开始了,大概一直持续到 9 月底。
春招一般 3 月份就开始了,大概一直持续到 4 月底。
很多公司(尤其大厂)到了 9 月中旬(秋招)/3 月中旬(春招),很可能就会没有 HC 了。面试的话一般都是至少是 3 轮起步,一些大厂比如阿里、字节可能会有 5 轮面试。面试失败话的不要紧,某一面表现差的话也不要紧,调整好心态。又不是单一选择对吧?你能投这么多企业呢! 调整心态。 今年面试的话,因为疫情原因,有些公司还是可能会还是集中在线上进行面试。然后,还是因为疫情的影响,可能会比往年更难找工作(对大厂影响较小)。
知道如何获取招聘信息
下面是常见的获取招聘信息的渠道:
- 目标企业的官网/公众号 :最及时最权威的获取招聘信息的途径。
- 招聘网站 :BOSS 直聘、智联招聘、拉勾招聘......。
- 牛客网 :每年秋招/ 春招,都会有大批量的公司会到牛客网发布招聘信息,并且还会有大量的公司员工来到这里发内推的帖子。地址:https://www.nowcoder.com/jobs/recommend/campus 。
- 超级简历 :超级简历目前整合了各大企业的校园招聘入口,地址。如果你是校招的话,点击“校招网申”就可以直接跳转到各大企业的校园招聘入口的整合页面了。
- 认识的朋友 :如果你有认识的朋友在目标企业工作的话,你也可以找他们了解招聘信息,并且可以让他们帮你内推。
- 宣讲会 :宣讲会也是一个不错的途径,不过,好的企业通常只会去比较好的学校,可以留意一下意向公司的宣讲会安排或者直接去到一所比较好的学校参加宣讲会。像我当时校招就去参加了几场宣讲会。不过,我是在荆州上学,那边没什么比较好的学校,一般没有公司去开宣讲会。所以,我当时是直接跑到武汉来了,参加了武汉理工大学以及华中科技大学的几场宣讲会。总体感觉还是很不错的!
- 其他 :校园就业信息网、学校论坛、班级 or 年级 QQ 群。
校招的话,建议以官网为准,有宣讲会的话更好。社招的话,可以多留意一下各大招聘网站比如 BOSS直聘、拉勾上的职位信息。
不论校招和社招,如果能找到比较靠谱的内推机会的话,获得面试的机会的概率还是非常大的。而且,你可以让内推你的人定向地给你一些建议。找内推的方式有很多,首选比较熟悉的朋友、同学,还可以留意技术交流社区和公众号上的内推信息。
一般是只能投递一个岗位,不过,也有 极少数投递不同部门两个岗位的情况,这个应该不会有影响,但你的前一次面试情况可能会被记录,也就是说就算你投递成功两个岗位,第一个岗位面试失败的话,对第二个岗位也会有影响,很可能直接就被pass。
多花点时间完善简历
一定一定一定要重视简历啊!朋友们!至少要花 2~3 天时间来专门完善自己的简历。
最近看了很多份简历,满意的很少,我简单拿出一份来说分析一下(欢迎在评论区补充)。
1.个人介绍没太多实用的信息。

技术博客、Github 以及在校获奖经历的话,能写就尽量写在这里。 你可以参考下面 👇 的模板进行修改:

2.项目经历过于简单,完全没有质量可言

每一个项目经历真的就一两句话可以描述了么?还是自己不想写?还是说不是自己做的,不敢多写。
如果有项目的话,技术面试第一步,面试官一般都是让你自己介绍一下你的项目。你可以从下面几个方向来考虑:
- 对项目整体设计的一个感受(面试官可能会让你画系统的架构图)
- 在这个项目中你负责了什么、做了什么、担任了什么角色
- 从这个项目中你学会了那些东西,使用到了那些技术,学会了那些新技术的使用
- 你是如何协调项目组成员协同开发的或者在遇到某一个棘手的问题的时候你是如何解决的又或者说你在这个项目用了什么技术实现了什么功能比如:优化了数据库的设计减少了冗余字段、用 redis 做缓存提高了访问速度、使用消息队列削峰和降流、进行了服务拆分并集成了 dubbo 和 nacos 等等。
3.计算机二级这个证书对于计算机专业完全不用写了,没有含金量的。

4.技能介绍问题太大。

- 技术名词最好规范大小写比较好,比如 java->Java ,spring boot -> Spring Boot 。这个虽然有些面试官不会介意,但是很多面试官都会在意这个细节的。
- 技能介绍太杂,没有亮点。不需要全才,某个领域做得好就行了!
- 对 Java 后台开发的部分技能比如 Spring Boot 的熟悉度仅仅为了解,无法满足企业的要求。
相关阅读: