双非本+无实习,圆梦快手!
JavaGuide 官方网站:javaguide.cn
JavaGuide&Java面试交流圈:JavaGuide 官方知识星球
这是一位读者今年 6 月份分享的春招面经,内容挺不错的,完全真实(原贴地址:https://t.zsxq.com/13DNA6myx)。
下面是正文。
本人某不知名双非本科生,一开始对自己的职业规划并不清晰,加之对面试的恐惧、不愿意工作的情绪以及一些不可抗的意外因素导致了自己没有好好准备实习,错过了秋招,在今年春招的大军中算是 debuff 叠满了。
当然讲述本人的这段经历不是告诉大家即使这样也能找到工作,而是希望大家一定一定一定要抓住每一次机会,去逼着自己找工作、面试,这样才会有越来越好的机会。本人在春招中能有满意的 offer 也是基于此。下面介绍一下个人的方法和一些小经验,并不适用所有人,仅供参考,希望对大家有所帮助即可。
在春招中一边准备八股(资料主要为 JavaGuide、一些 GitHub 上的开源笔记、对应公司的面经),一边准备简历中的项目在面试中可能遇到的问题和回答,一边刷力扣(hot100,每日一题,如果题型正好不太会就去学并且刷类似的题,参加周赛),一边投简历(找招聘信息汇总表去官网投递、Boss 投递,投了起码七八百家),同时做好面试总结,查漏补缺。
八股
JavaGuide(javaguide.cn)中的内容其实已经非常详细了,并且我发现盖哥还在不断地进行补充,基本已经涵盖了绝大多数常见、稍微深入一些的细节面试题了,只要能把 JavaGuide 看透、吃透,完全足够应对中小厂的面试了。当然此处指的是吃透,绝不能囫囵吞枣,另外盖哥在里面提到的一些相关阅读、技术文章也尽量看看,对深入理解感悟知识有很大的帮助。本人是起码看了有 5 遍(从秋招开始),也在自己的博客中做了类似的整理,当然包含自己的理解感悟,算是加深理解知识的同时丰满自己的博客吧。
建议配合《Java 面试指北》一起使用,这份资料和 JavaGuide 开源版(javaguide.cn)的内容互补。
另外,再推荐博客 Notes-wardseptmeber(https://wardseptember.gitee.io/mynotes/#/),里面讲了很多源码,多看看绝对有帮助。
面试前可以看看要面试公司的面试题,最好是近期、同岗位的题,当然如果不会也不用太焦虑,个人面试下来绝大多数都不一样 😂。
八股一方面靠多看、多记,另一方面要有个人理解,找到适合自己的学习方法最重要。既要重视 Java 的内容,也要重视计网、操作系统等基础内容(一些公司问的比较多)。
项目
由于本人在大二、大三比较积极的参加软件开发类的比赛且是队长,所以有了几个挺特别的项目,并且也有一些感悟。另外也有一个造轮子的项目。
个人认为项目上不需要太多,2-3 个足矣,关键是了解够深、如果是网上的项目就要有自己的创新或改造(可以根据实际增加功能、升级中间件等),具体项目《Java 面试指北》中也有推荐,这里不赘述了。
一定一定一定要对自己的项目有足够的了解,用到的技术,具体是怎么操作的,有什么难点等,提前做好可能遇到问题的准备,以及相应技术的扩展(如用到了 redis,那可能会被问 redis 的数据结构、具体怎么使用等)。
大厂对项目的考察往往比较深入,所以一定要做好充足的准备。如果真的不会可以说一些其它知道的内容,然后以时间过久有遗忘、不是自己具体负责的等理由略过。对自己不是很了解、没有底的技术尽量不要写,或在一开始被问到就说明,不要在这块浪费时间,影响面试官对你的判断。
另外,个人博客是一个很好的加分项,做起来也不麻烦,网上有很多相关的教程以及开源的框架,建议养成写博客的好习惯,不论是八股知识的记录、算法的记录、项目的开发文档、开发中遇到的问题等都可以作为内容填充自己的博客。博客是个人学习方法、知识储备等软实力的体现,在面试中很可能给面试官留下好的印象。
算法
算法重在积累,像力扣、牛客的每日一题、周赛多多参加,保证自己的刷题量。当然不要无脑刷,先掌握数据结构和常用解题方法,过程中也要注意总结,同类型的题、同解法的题可以一起刷,类似于专项训练。也可以找 hot100、剑指 offer 等热门题单进行练习,不会的题型要做好学习、总结。另外一些算法学习的公众号也可以多看看,学习解题思路。
算法不是一朝一夕能练成的,一开始不会肯定有挫败感也比较费时,但是长期积累会越来越好,看到以前不会的题现在都能轻松写出,也是很有成就感的事。
中小厂对算法的重视程度相比大厂来说低很多,如果时间较紧张或综合能力离大厂的要求还比较远,可以在时间分配上做调整,但是个人建议有时间还是可以刷一下,百利而无一害。
简历
简历要简洁、清晰,突出自己的求职意向、实习和项目经历、掌握的技能。
实习、项目经历要详略得当,比如说项目名、自己承担的角色、简单介绍一下项目背景实现意义等,详细介绍一下自己在项目中做的技术内容、改进、突破等。掌握的技能不要太宽泛,比如写一个熟悉 Java,这样可能会让面试官随即问 Java 的知识,最好可以写上具体的内容,比如熟悉 Java 集合,可以让我们更有针对性的去学习、准备。另外,尽量不要写精通,可能会被问到自闭。更多简历编写的技巧大家可以去看看这篇文章:
这里再次提醒!对简历中的内容一定要烂熟于心,写到项目的各个细节、掌握的技能一定要有较为深入的理解。
面试
个人认为面试最重要的就是放松、自信、展示自己。当然这需要大量的面试来慢慢养成,但是大家在面试中一定要有意识的去展示自己的知识储备,比如面试官问一个问题,我们回答完这个问题后可以再说一些相关的知识内容或者自己的一些理解,不要害怕说多了会浪费时间,因为面试时间往往是固定的,一个问题你输出的内容越多其实意味着你被问到的问题总数越少,你可能遇到不会的问题的概率越小。当然一定要能保证自己说的内容是正确的,而且确实有话可讲,这就需要大家多去积累八股和技术文章等。
另外,如果遇到自己不会的问题,可以尝试说一下自己的理解或者输出一些相关的知识,但是一定要表明自己这块内容有些不了解或记不清了,面试结束后会去好好看一下。切忌在不会的问题上支支吾吾,浪费自己的面试时间。
面试也是一个需要锻炼的能力,第一次紧张和发挥不理想是正常的,甚至有些公司就是喜欢压力面试,一直问到你回答不出来为止,所以不需要有太多的心理压力,要记住自信和尽力展示自己。可以先进行模拟面试、投递小公司进行面试,在慢慢去尝试中大厂的面试。
最后想说的话
本人从 22 年六月开始准备实习,再到秋招,最后到春招,中间有懈怠、逃避、甚至摆烂,但这过程也有近一年之久。其中快手投了两次,第一次是杭州的电商,无奈二面算法没做出来,挂了。后来投递了北京的岗位,终是拿到了心怡的 offer,也是收尾的 offer。
希望大家能早做准备,有机会早些去实习,不要逃避,适当的逼一逼自己,在找工作的路上能坚持不懈,虽然过程压力很大,但会让你飞速成长,终能实现蜕变。
上述内容都是个人在漫长的校招路上积累的一点小经验,再次声明并不适用所有人,如果对大家有一点帮助也是我的荣幸!最后祝大家都能拿到心怡的 offer!
轻舟已过万重山,前路漫漫亦灿灿。
·············· END ··············