大家好,我是Guide哥,这篇文章是一位读者的投稿。这篇文章分享了他从确定Java后端方向 -> 考研 -> 考研失败->准备春招 -> 收货自己满意的offer 的心路历程。
Guide哥:建议好好看看,作者分享的内容很棒!相关阅读:《V2.0 版本的 《JavaGuide面试突击版》来啦!带着它的在线阅读版本来啦!》
我本科是某双非一本,大学四年也没做过太多有成就的事情。和很多在校生一样,我也经历过很迷茫的时间段,倒腾过单片机。
当时还出于对黑客的崇拜,折腾过一个月的网络安全。反正什么都去接触一点,以此来消磨我无聊的时间,不过后面谈了女朋友就不无聊了,哈哈。
Guide 哥:竟然有女朋友!
唯一感觉有收获的应该就是呆过 ACM 训练营,无奈自己太菜,拿的奖项都很小,蓝桥杯省一等奖这种水平。从大三开始,给自己明确了目标,还是老实实学习一个领域的技术吧。当时从知乎上查看了有很多方向,前端,后端,大数据,人工智能。根据我自己的兴趣(好就业)给自己明确了 Java 后端开发的方向。
当时出于想继续学习提升自己的目的,选择了考研。这个地方想说一点就是,到大三了一定要规划好自己将来要做什么考研,就业,考公务员等等,坚定自己的信心和决心!。不要像我一样,在考研开始到结束的期间总会在某个时间段会心态上波动,觉得一整年的考研可能因此错过很多的机会,比如秋招。万一最后没考上研,就很尴尬了,毕业即失业?
尤其是自己考研期间复习不理想的时候,胡思乱想的东西就会越来越多。经常会找同学,朋友以及考上研的学长谈心来调节自己的心态。这个地方特别想感谢我的女朋友,在我每次心态爆炸,迷茫想放弃的时候,都愿意花自己的时间陪我出去散心,虽然她也在备战考研。有机会的话,还是建议能找几个比较自律的研友,可以互联督促约束。
Guide 哥:此处@一下这位老哥的女朋友。
这一切都过来的时候,才会觉得自己当初的想法比较幼稚,天无绝人之路。既然选择了远方,便只顾风雨兼程。专心做好一件事就行,只要自己保持上进心,相信未来一定会越来越好,一切美好都将与你环环相扣。
好在我最后还是坚持的走完了考研的旅程,虽然结果不那么的美好,但是我觉得一切都是值得的,至少我的计算机基础,高数,英语在这一年里都得到了很大的提高。
我从考研结束之后,就开始着手准备春招的内容,复习以前做过的项目和学习过的技术栈。由于时间比较紧,任务比较重。这个时候,我觉得可以面向面经来学习准备,我花了一个上午的时间去牛客网刷面经,
最终按照不同的模块整理了一份不重复的面试常见问题,接着一切的学习任务都围绕着这个面试题来展开复习,查阅相关的书籍资料。
总结了一下,需要准备的内容也就是:
算法的话,我的时间比较紧,复习的主要是 《剑指 offer》 + leetcode 的 top100。刚开始可以按分专题模块来刷,后面就可以随机练习。
项目的话,我觉得如果有机会能接触到真实的项目是非常好的,因为这一块当你面试的时候针对某些细节你可以自信的和面试官聊很多,如果要是自己包装的话,可能聊起来会觉得很虚。不过也没有关系,即使是自己跟着网课学习的或者找的开源项目,我觉得首先得保证能完全吃透这个项目的细节,细到数据库的表各个字段的含义,项目中哪些功能在哪一个模块实现,为什么这样实现,有没有更好的实现方式了。这些我觉得都是你需要思考的问题,因为面试中会出现各种不同的情况,面对不同的面试官,问的问题也是千奇百怪的。
关于项目经历,我再补充一下,避免大家踩坑。
不管是网课的项目,还是开源的项目。你能发现,别人也能发现,怎么才能避免雷同,体现自己的特色,项目中真正具有你的思考在里面。我有如下建议送给你:
好在自己准备的还算充分,感觉比较幸运的是在这个疫情笼罩加上互联网寒冬时期,各大互联网公司裁员的情况下,经历了几个月的反复准备让自己拿了一些的 offer,最终也获得了自己比较满意的 offer。面经部分,个人觉得 SHEIN 这家公司问的比较全面,涵盖了常见的题目。如下,仅供参考学习。
SHEIN 是一家成立于 2008 年的快时尚出口跨境电商互联网公司,集商品设计、仓储供应链、互联网研发以及线上运营于一体。
二面问了挺久,总共一个半小时,基本围绕着简历来问,
三面问的技术问题就相对少了,主要问了跳表,Java 并发的知识点,Linux 的基础命令,Git 的常规问题,JVM 的回收算法介绍了下,还问了让我来介绍 Git 给不懂 Git 的人听,你会怎么跟他介绍。
大概就随便和我聊了下,为什么想来南京,有没有参加秋招,本科期间代码量怎么样,我当时都还没开始聊起来,他就说大概就这些了。 感觉有点虚,毕竟问的时间那么短,当时我还问了之前认识的一个老哥,他也面了 CTO 面,他也是 5 分钟左右,总体感觉 CTO 挺幽默的。
主要介绍了公司的情况,薪酬待遇,问能不能提前去实习等等一些问题。
总体感觉 shein 的面试效率还是很高的,基本一天一面。 HR 的态度非常好,中间由于一些事情耽误,还鸽了一次技术面试,HR 根据我的时间以及面试官的时间帮我额外安排了一次面试。对这家公司的映像非常好。
值得一提的是感觉现在互联网上的资料太过于多,各大线上架构师等培训机构的出现,间接的促进了面试难度在逐年加大,有些问题不能不理解的单单去记忆背诵,以此来期望面试通过,这个方法肯定行不通。
记得比较深刻的是有一场面试,我间接提了好几嘴自己对于 HashMap,ConcurrentHashMap 比较熟悉,面试官都不买账。包括后续问我对 Java 那一块比较熟悉除了集合部分(衰)。对于 JVM 的考察也不再是考察背诵垃圾回收算法以及常见的垃圾收集器,而是问为什么要按这个比例设定,如果不这样会导致什么问题等等。对于常见的排序和二叉树的时间复杂度被问到后,面试官希望你能够给他推导出来。所以,希望准备面试的小伙伴,
还是要准备扎实的基础,不要靠直接背诵面试题这种方式来应付面试,方能以不变应万变。最后,吃水不忘挖井人,非常感谢 Guide 哥的帮助,Guide 哥的公众号和 github 在我学习 Java 的道路上包括后续的准备面试的过程中对我的帮助都非常大。
Guide 哥:这个彩虹屁 很喜欢,哈哈!