一篇近万字的秋招总结及资源分享

文章目录

  • 零、写在前面
  • 一、秋招的这段时间
    • 1. 学习时间线
    • 2. 每日时间安排
  • 二、经验分享
    • 1. 需要准备的东西
      • 1.1 简历
      • 1.2 项目或实习
      • 1.3. 基础的知识
    • 2. 需要学习的内容
      • 2.1 计算机基础
      • 2.2 语言基础
      • 2.3 框架
      • 2.4 数据库
      • 2.5 中间件
      • 2.6 常用的工具
    • 3. 可能遇到的几大问题
      • 3.1 不要怕学的慢
      • 3.2 不要怕知识太难
      • 3.3 不要怕容易忘
      • 3.4 不要怕面试
      • 3.5 不要只有广度或只有深度
  • 三、资源分享
    • 1. 笔记面经推荐
    • 2. 微信公众号推荐
    • 3. 复习必备的博客
    • 4. 书籍推荐
    • 5. 网课资源分享
  • 四、写在最后

文章主要分为三大部分,第一部分是楼主的一个回忆录,仅作参考,如果大家时间有限,建议跳过。第二部分是秋招的经验分享,比较重要,建议还在找工作或者未来需要招工作的同学重点越多。第三部分是资源分享,大家按需自取。最后,如果觉得对你有帮助,可以点赞+评论+收藏,谢谢支持!!

零、写在前面

秋招已经接近尾声,有一些人取得了满意的offer,有一些人还在准备春招。这次秋招算是楼主在大学期间,印象深刻的事情,也是自己在学生期间,最后一次拼搏。

没有人天生是天才,记得在今年参与了各个公司暑期实习招聘,刚开始特定准备了一个表格,记录自己的投递进程。后来,表格上的公司越来越多,但是却都是石沉大海…

简历挂、笔试挂,一面挂…每一次失败其实心情都很沉重,但是总是笑着跟人开玩笑说:这都只是垫脚石而已~

没人愿意失败,上百次的失败,可能才换得一次成功,但是没有办法,确实太残酷了…现在想想:有时候机会不是留给那个最努力的人,短暂的努力很难有结果,只有坚持下来的努力才能有满意的结果。

这么长时间以来,经历了很多,最后用一篇文章做一个总结,希望给其他同学一点启发或者一点微薄的帮助~

一、秋招的这段时间

1. 学习时间线

这个时间线算是一个回忆录,仅供参考,可以跳过~能记录的这么详细,主要还是因为在学习的同时,会发表博客进行记录。做这个总结的时候也是再又一次回顾博客。

  • 2019-12-17之前 那个时候自己已经决定了开始找工作,但是缺乏信息,这个时候没有老师也没有同学明确的告诉秋招的事情,意识不到重要性。自己在这期间参加了数学建模竞赛,也尝试在一个研究所实习,也在做一些科研,发表论文,甚至还准备了美赛,上课也是非常认真的听讲。不过好在断断续续的复习了Java的基础,算是打下了一个语言基础。

  • 2019-12-17 当时参加了学校编程队的迎新大会,那个时间听到老师说有几个学长正在找工作,就向老师要了学长的联系方式。后面跟学长交流,才知道来年的春招就已经是就业的起点。这一天,我买了牛客网CyC2018的求职经验分享课程,这个课程对我意义重大,算是一门启蒙课,反反覆覆看了很多遍。课程链接。

    一篇近万字的秋招总结及资源分享_第1张图片

  • 2019-12-18 刚刚认识到要复习的内容真的好多好多(具体内容下面有详细介绍),真的很迷茫,那个时候才大三,还有好多好多的课程要上,从来不敢相信找工作竟然比考研还有早(我们学校宣传不够);自己太多不会,不知道怎么复习,最后发了一个朋友圈。后面一段时间就在计划以及准备期末考试。

    一篇近万字的秋招总结及资源分享_第2张图片
  • 2020-01-02 在复习期末考试的空闲时间,学习了Markdown语法,写了第一个Markdown文档,在CSDN上发表了人生第一个博客。当时想着,自己差不多从零开始(当然这个零不单单是真正的零,还是有一定基础的),而发表博客就是想记录我的学习历程,就像现在回顾起来的时候,充满骄傲。

    image-20201110174722149

  • 说实话上面即使意识到秋招的重要性,也没有马上就紧张的学习。那个时候自己自己手头上有两个竞赛还有一些科研压力,并不能完全投入复习中,所以其实对我当时很重要的一点是:要清空手头上的杂事,同时在做规划,为全身心的投入复习做准备。所以当你决定要走一条路之前,要提前为此消除杂念,不然很影响效率。

  • 2020-01-13至2020-02-17 13号开启了寒假的学习生活,那个时候每天的学习都会记录下来。第一个原因我当时给我自己学弟学妹制定了寒假的学习计划,开学后会检查,我自己也会以身作则;第二个原因是我觉得这段经历确实对我来讲很重要。中间并不是完全的连贯,其中有小年、除夕、春节等节日,也有我的生日,所以就稍微的休息放松。(修改时间的问题,可能因为移动了文件夹,具体内容的修改时间没有问题)这段时间主要还是学习的是Java高级部分,比如多线程;Java web相关;Redis、Maven等。并不是说学完了就可以面试了,那个时候学完,也仅仅是写个demo而已。

    一篇近万字的秋招总结及资源分享_第3张图片

一篇近万字的秋招总结及资源分享_第4张图片

  • 2020-02-24至2020-03-19:学习了SSM三大框架
  • 2020-03-20至2020-03-23:学习了JVM
  • 2020-03-23至2020-04-04:学习了网络原理
  • 2020-04-06至2020-04-12:学习了Mysq
  • 2020-04-25至2020-05-11:学习了Java高并发相关
  • 2020-05-14至2020-05-17:学习了Redis相关
  • 2020-05-27至2020-05-31:学习了Rockmq相关
  • 2020-06-01至2020-06-28:复习了期末课程,认真学习了计组和操作系统
  • 2020-06-28至2020-07-28:进行了第二轮复习,看了很多面经

2. 每日时间安排

因为一直没开学,所以选择离家比较远的自习室学习,下面是自己学习的一张图,会根据情况灵活调整具体的内容~

一篇近万字的秋招总结及资源分享_第5张图片

上面的时间仅供参考。其实,学习的时间并没有那么多,大概在8-10小时左右,远远比不上高中的时候努力。但是这个疫情带来的差距是巨大的,整整一个学期加寒暑假,少了很多学校的干扰,能在家坚持下来学习,进步绝对是巨大的!

二、经验分享

1. 需要准备的东西

1.1 简历

把这个放在一个讲,是因为作为学生,写简历的时候,会深刻的认识到自己的不足。

  • 简历非常重要,不仅决定了你能不能进面试阶段,还决定了面试阶段能不能有好的表现**,面试很多就是针对的简历的内容的提问**

  • 我的简历,从过完年开始写,写了很多版,不断的改进,随着能力的进步,不断的充实。千万不要赶一份简历,要保证简历和自己能力是随时匹配的,这样才可以随时投递简历,不错过任何一个招聘机会。

  • 一个真正好的简历,不需要特别华丽的包装,一定要保证学校、应聘岗位等关键信息清晰明了。

  • 简历模板上,我自己用的超级简历,有一些开源的html简历也是很优秀的。

1.2 项目或实习

项目或实习经历是一个非常关键的经历,可以拉开两个人的在面试上的差距

  • 不要在建立上写太多,一般简历上也就两三个,写的太多反而会给自己挖坑
  • 项目最好包含以下一个或多个关键词:高并发高可用设计模式
  • 注意对比分析,比较不同解决方案的优劣。项目中很关键的问题**,解决方案应该是不断迭代的,一定要清楚最开始用的什么?为什么当时用?为什么现在不用?现在的方案有什么问题?等等问题。**
  • 注意数据的测试,要具备数据测试的思想,比如熟悉一下Jmeter,对项目进行压测

1.3. 基础的知识

基础知识需要准备的很多,下面有专门介绍。

  • 基础内容有时候也叫八股文,千万不要死记硬背,需要理解并总结,最后讲出来,给别人讲明白。

2. 需要学习的内容

这里只讲Java后端开发所必须的技术栈,如果不是向走这个岗位,可以跳过~~

先上图,自行保存:https://img-1302474103.cos.ap-nanjing.myqcloud.com/img/20201124154504.png

2.1 计算机基础

科班必学四大件

  • 计算机网络
  • 数据结构与算法
  • 计算机操作系统
  • 计算机组成原理

算法做题一般语言不限,推荐C++或者Java,在Leetcode或者牛客刷题都可,有时候笔试或者面试用的都是牛客的平台。

刷题按照专题刷题,比如dfs、动态规划等等。

题目数量,200+算是及格,300-400才能应对很多题目,所以至少要求200道,不建议买会员。

除此之外,还有一些软件设计相关的,比如设计模式、软件工程等

2.2 语言基础

不同的语言会有差异,一定要有擅长的语言!!

  • Java基本的语法
  • Java集合
  • Java多线程
  • JVM
  • Java网络相关的,比如NIO、BIO
  • JavaWeb

除此之外,还有会一些前端的知识,比如Html、Css、Js

2.3 框架

最开始常用的开发框架就是SSM:Spring、SpringMVC、Mybatis

后面出现了Springboot进行了整合,但是核心还是上面三个,最好看看Spring中IOC、AOP和MVC源码,能学到很多面向对象的思想

除此之外,会涉及微服务框架,建议学习Dubbo,比较经典的Rpc框架;如果有精力学习一下Netty

2.4 数据库

  • SQL语法
  • MySQL(建议)或者Oracle
  • Redis(建议)或者其他NoSQL数据库

最好看看源码,了解存储引擎等

2.5 中间件

这一部分根据情况学习,不要求全学,最好涉及一两项

  • 消息队列:Rocketmq、kafka等
  • Zookeeper
  • elasticsearch
  • …(分布式文件存储)

2.6 常用的工具

  • git、maven、IDEA等,看自己情况
  • Linux命令

3. 可能遇到的几大问题

在紧张的复习中,可能会十分焦虑,甚至会有很多疑问。那个时候,遇到一些疑问,会第一时间问学长,所以也很感谢学长在这期间耐心的答疑~~这下面记录了我认为可能出现的几大问题,可以收藏一下,如果以后出现了一些问题,希望可以有所帮助。

在分享之前,需要强调一个事情:很多时候焦虑来源于自己的不行动,只有行动才能消除未知对你的影响,在焦虑后,一定要勇敢的行动起来!!!!

3.1 不要怕学的慢

在复习的时候,时间很紧,复习了越久,越担心自己学的慢。

  • 首先,思考是不是自己学习方法出现了问题?比如学习的同时,每天都要花一小点时间复习前面的等等,需要找到一个属于自己的学习方法和节奏。
  • 第二,如果自己很多知识是第一次学,学的慢很正常。就像楼主刚开始接触框架的时候,会出现各种BUG,严重影响学习的进度。**但是这是一个必要的过程,很少人可以一蹴而就。**其实在学习一个新东西的时候,并不是单纯的从零开始,而是带着你过去知识学习,自己过去积累了越多,学的越快
  • 最后,一定要合理安排自己的计划,不能太紧张,也不能太宽松,根据自己的情况动态调整才是最重要的。

3.2 不要怕知识太难

在学习的时候,可能会遇到很多难点,比如红黑树或者一些复杂的设计逻辑,觉得自己很笨,不适合就业。

  • 很多道理大家都懂,最简单的就是水滴石穿。如果什么东西都是简单易懂易上手,就很难与别人产生差距,刚开始学确实很难,但是不要轻易放弃一些东西,每隔一段时间攻坚一次,坚持下来,肯定会有很大收获。
  • 也不要太钻牛角尖,用有限的时间去提高自己更大的能力才是最重要的,就像G1(garbage first)GC回收器理念一样,形成K1(knowledge first)的思想。优先学习最重要的知识。

3.3 不要怕容易忘

需要学习的知识太多太多,经常学着这个忘着那个。

  • 首先,人都是有记忆周期的,自己在短暂的时间学习,很难形成长期记忆,仅仅的短期记忆,而想形成长期记忆需要的就是反复记忆(初中生物书讲的,快忘完了)
  • 有一次听过一个大佬在讲,他天天听自己同事在面试,面试的那些问题都快背下来了。其实,有些时候,人与人的差距,就是在于付出的时间上。对于每个知识点,每次回顾都有可能有新的收获,所以复习的重要性不言而喻,记录博客也正是为了复习。只有千锤百炼才可以说真正掌握。

3.4 不要怕面试

有些时候,会担心自己复习的不够充分,不敢面试。

  • 人都会害怕失败,都想一次成功,失败了都很难过…但是真的是没有前面的失败,很难有后面的成功。面试不收钱,勇于面试才是最重要的,每一次的面试都是一次模拟考试。
  • 面试之后的总结十分重要,这是对自己一次很重要的查漏补缺,希望能够珍惜每个面试机会。

3.5 不要只有广度或只有深度

很多培训班教的课程,学的知识非常广;自己学的时候,容易陷进去,长时间出不来。

  • 广度缺失,相当于一个木桶有短板;深度缺失,相当于木桶的质量不够。楼主也曾经看过别人的简历,有些人简历上写的满满当当,各个中间件样样精通;有些人简历寥寥数句,却蕴含很大能量,比如阅读过源码。
  • 每个人复习的情况不一样,复习的计划一定要是动态变化的,根据自己学习或者面试的反馈,快速调整自己的进度,保证自己兼顾广度与深度。

三、资源分享

1. 笔记面经推荐

这里记录了楼主牛客收藏夹的内容,希望可以多多参考别的巨佬的分享~

因为太多太多,所以决定单开一个帖子,去这个帖子看吧,https://www.nowcoder.com/discuss/570514。可以去这个看看这些帖子作者其他的博客,会有新的收获哦~~

最后再分享自己的两篇面经

  • 58同城后端开发工程师一面+二面面经
  • 滴滴四轮技术面+HRBP面经

2. 微信公众号推荐

一定要先去看看有没有什么面试的总结或者学习资源,很多回复就会有一些资源分享

  • 三太子敖丙

  • 江南一点雨

  • JavaGuide‌

  • 石衫的架构笔记‌

  • 非科班的科班

  • 我没有三颗心脏

  • …(待增加)

同时作为程序员,希望也多多关注互联网相关的新闻,利用零碎的时间阅读和思考

  • TechWeb

  • 腾讯科技

  • InfoQ

  • 36氪

  • 互利网er的早读课

  • 差评

  • …(待增加)

3. 复习必备的博客

前人已经分享了大量的资源,比如说Cyc2018,java guide,hollis等等,牛客上也有大量的资源,希望可以多加阅读,多加思考,总结出自己的博客,形成自己的知识笔记。

附上大佬的在线博客

  • Cyc2018:http://www.cyc2018.xyz/
  • JavaGuide:https://snailclimb.gitee.io/javaguide/#/
  • Hollis:http://hollischuang.gitee.io/
  • how2j:https://how2j.cn/
  • labuladong 的算法小抄:https://labuladong.gitbook.io/
  • 我没有三颗心脏:https://gitee.com/wmyskxz/MoreThanJava
  • JavaFamily:https://github.com/AobingJava/JavaFamily

我自己博客有一部分就是总结于前人,自认为没有前人重要,放在最后:https://xzzz2020.gitee.io/,楼主的原始markdown笔记已经开源,链接:https://gitee.com/xzzz2020/autumn_moves

最后,如果大家觉得不错的话,给这些大佬一个start吧~~

4. 书籍推荐

书籍的阅读是必要的,对技术的提升式巨大的,甚至会在面试中,问你看过哪些书?

比较推荐的是牛客网的图书馆:https://www.nowcoder.com/library

上面有大佬推荐了很多书单,可以根据需要阅读电子书或者纸质书。

5. 网课资源分享

自己看的一些网课,单写了一篇文章,需要可以去这个帖子自取,https://www.nowcoder.com/discuss/570520

四、写在最后

感谢大家看到最后,纯手打,算是对自已的一个交代,如果觉得对你有帮助,可以点赞+评论+收藏,谢谢支持!!

你可能感兴趣的:(面试,java)