2024届_幸福来敲门
技术栈测试
1、学Java看的哪个资料:(看的动力节点的java基础,也看过java核心卷一)
- 重载,重写,泛型懂吗?泛型可能了解少一点
-
Java集合这块学过了吗? 学过
- HashMap源码,JVM,JUC是否看过:Hashmap看过韩顺平集合系列的源码,JVM看过俩遍深入理解jvm,调优,高并发没怎么看
2、数据结构与算法看的哪个资料:数据结构学校课程学的,看了一些华科的慕课
- 链表,栈,队列,二叉树能自己手写吗:突击几天能手写
- AVL树,红黑树,线段树学过吗:了解过(不是那么熟)
- 冒泡,快速,归并排序能手写吗:冒泡能,其他俩个不能
- 递归,二分,贪心,回溯,动规,枚举这几种算法学过哪几种:没系统学习过,刷题的时候了解过
- LeetCode 大概刷了多少题:161道
3、框架与中间件
- servlet,cookie,session学过吗:学过
- SSM学过了吗:学过
- redis 学过吗:学过
- SpringBoot项目做过几个:做过四个吧,一个博客系统照着视频敲的,一个报名系统(学校的项目),一个微人事,一个瑞吉外卖(黑马的视频)
4、MySQL看的哪些资料:
mysql看过 sql必知必会,mysql是如何运行的
* sql 熟练吗:还可以
* 索引底层原理懂吗:懂
5、计算机基础
- 计算机网络看什么资料:看计算机网络自顶向下(看到链路层) 中科大的视频
- 操作系统看什么资料:王道考研看了一点点
- 计算机组成原来看的什么资料:计算机组成准备看哈工大的,
学习规划(2022.5.19)
你这个,基础还是挺好的,看你做过四个项目,实践能力应该还可以,这块还是蛮重要,不过如果要暑假或者第一学期去面试大厂,还需要针对大厂面试来做一番复习,不然容易掉链子,先简单说下大厂对于日常实习生的考察:
主要围绕三个方面:项目 + 基础 + 算法,因为日常实习希望你能过进去干活的,所以比较看重学习能力,也就是基础,项目则可以体现你可以更快去上手公司项目,但是对于八股文,我们到春秋招时需要学的有很多,不过在日常实习中,我们并不需要学那么多,有所突出更加重要,所以我们下面的安排,是基于你学过的知识,来加强复习,之后学的差不多了,在拓展广度。
下面的安排,是基于你暑假参加投递面试来安排的,暑假先体验体验,面试成长更快,这里有个日常实习的真实面试,你感兴趣也可以看:小红书一面以及评价(必看),下面我们围绕项目 + 基础 + 算法来做学习补充。
1、算法:我觉得你算法还是需要继续加强的,大厂日常实习,没有笔试,所以算法面试基本必考,你可以把 算法高频题库 刷一遍,应该有挺多和 top100 重叠,重点就是把链表,二叉树刷好,如果 DP 没有学好,建议多花点时间,这个是重点,反正给你的任务就是,把高频题刷完,我觉得应付面试没问题了。
2、基础:基础的话,我看你 Java集合 + JVM 这两个重点都学的不错,那么这两个先不学,重点学习下 mysql. + redis,我建议 mysql 你刷下这个实战 45讲,刷完配合你看的书,基本不畏惧这方面:MySQL原理剖析课程说明,另外,主从部分不看也没事,一般日常实习问的很少,之后就是补充好 redis,我是推荐看下《redis设计与实现》,刷完基本拿下 redis,但是你不看也没事,把我总结的看完:Redis考什么+高频题汇总,就是总结的那些要懂,但是我建议看下书,因为春秋招前必须看。
另外就是 计算机网络,你把自顶向下看完,看两遍吧,这里有个阅读指南:《计算机网络自顶向下》阅读指南,至于操作系统,你可以先放一放,即使问起,说不懂也没事,懂的有所突出就行。
基础你需要补充的主要就是这三门,补充完把 八股文题库(必看) 大致看一看(相当于复习),就是你看看哪个问题不懂的(你学过的知识)。
3、项目:项目的背后,还是问八股文,由于你的项目不是我课程体系的,我无法给你简历模版,也就无法预测大概问什么,但是你项目用了 redis + mq,那么大概率还是围绕这方面问,所以你到时候,就挑你擅长的两三个项目写简历,到时候写完简历,再来看看基于项目重点复习那些吧。
你先学,等学的差不多了,就写一份简历,我给你改一改,之后一边复习,一边看机会投递吧,平台一般就是官网 + 牛客网 + boss直聘/拉钩等等,到时候我会替你们关注关注的,也有其他大二大三学员需要面试,大盖在 7 月份也会有几场模拟面试,到时候可以参加。
你先学吧,上面是大概的,到时候根据你的学习情况给你动态安排吧。
咱们的课程大纲看这里:所有课程大纲入口。
然后学习的时候,记得每周来打卡下学习进度,比如可以参考他们的:24与25届做的比较好的成员示例
学习进度跟进(一个月连续不更会被移除目录)
5.18~5.25
《redis设计与实现》第8章
mysql45问看到20问,《ysql是怎么运行的》再和redo日志
算法:了链表,学习用一些新方法,而不是暴力,所以有点点慢
项目:项目做牛客项目,做到第二章
5.25~6.2
《redis设计与实现》看完
mysql45看到40问,但是感觉记不住,可能要动手试试,看一遍感觉体会不太大
算法: 学会归并排序,刷完二叉树的leetcode
项目:牛客做到第七章
6.3~6.9
《redis设计和实现》看完且复习了几章
《mysq45问》看完且又看了一些,做了笔记
项目: 牛客做完
算法:这个星期没怎么刷
6.10~6.17
最近课设没怎么学习
有时间刷刷题,
然后牛客项目再看一看架构
JUC看了一点点,下周就没什么课了,下周开始吧
6.18 ~6.24
每天有时间刷一刷题,现在在刷一会剑指offer
然后看一看八股文,已经没什么课了,
所以后面以八股文复习为主
6.25~7.2
这个星期没怎么学哈,只是刷一刷题,然后看一看八股文,明天就回家了,下个星期还是哈….
7月6日
第一个面试回顾
1.JVM
(1)你对jvm的了解
(2)哪个数据区不会报error,其他数据区报什么error,报error的原因是什么
(3)讲一讲垃圾回收的理解
(4)讲一讲伊甸园区
2.juc
(1)在平时开发中遇到过哪些线程安全问题,你是如何解决的
(2)保证线程安全的措施或者方法,容器有哪些
3.计算机网络
(3)讲一讲volitile读写屏障
(1)谈一谈hhtp和https的区别
(2)讲一讲tcp三次握手和四次挥手
4.mysql
(1)讲一讲你对索引的了解
(2)讲一讲聚簇索引和索引覆盖
(3)讲一讲你数据库表创建的范式和你觉得你有什么好的创建表或字段的习惯
5.spring
讲一讲你对spring的一个了解
6.linux你用过哪些常见的命令
总结:这次面试给自己当头一棒,很多东西会吧,说得很乱,不会的感觉有点糊弄,但都说到点子上了,还要继续沉淀一下,多看看八股文,找一找一些题目的表达技巧,还有就是有点小紧张,感觉表达的没有那么好吧,(还是八股文刷少了,学习的时候自我总结少了,没啥做笔记什么的,真的吃大亏,得好好反思反思,加油,继续沉淀!)
7月5日~7月22日
回家俩个多星期,最近关注秋招实习,看着脉脉上的消息,不仅对秋招卷的程度有了大致的了解,但自己回家俩个多星期,但是自己的状态感觉没那么好把,回家琐碎的事情有点多,每天要核酸啊,练车,下午有时做家务,晚上还要有时候陪女朋友去散散步.后面要好好调整下,然后最近一直在看八股文吧,java基础,集合源码,JVM,juc,计算机网络.主要是看这五个.一看不知道,一看吓一跳吧,忘了好多,就一直看。看得最痛苦的是计算机网络吧,HTTP一看面试题,感觉自己对它的了解所剩无几,就小林coding,帅地哥的优质文章.从什么是http,到http的迭代,一直看,虽然能看懂,因为记不太住,所以每天坚持看.然后就是tcp也是小林coding,帅地哥优质文章,面试题看吧.,然后算法方面,刷得没那么多,但是每天坚持刷,最近看了归并和快排吧。然后帅地的高频题想着二刷吧.虽然自己在家效率没那么高,自己还是补了很多东西吧。加油嘞,加油,小小立个目标,希望拿个中大厂的日常实习吧(应该不算太大吧,哈哈哈哈)很久没补了,因为最近死背八股文了,看到计算机网络,知识匮乏,然后接着学哈。哈哈哈哈
7月23号到8月23号
1. 首先是算法方面吧,每天刷一刷剑指offer,每周的周赛和双周赛也是有一直打,一般是2道到3道的水平,但还是会坚持去打,忘记了打,就打虚拟场,感觉还是很好,还是学到了一些东西,也见识到一些不知道是题解方法。
2. 计算机网络方面的提升是最大的吧,看小林coding的文章,把帅地哥的计算机网络方面的优质文章全部看了,也是看了2,3遍吧,把计算机网络的系统串起来了。对计算机网络的理解算是大的提升吧
3. mysql,看看mysql45问,总结一些问得多的知识点,然后把高频题看了遍,做了一些笔记
4. 操作系统方面,算是大致的学了下.但是感觉脑子里没留下很多东西,后面可能复习下,然后看了一些Linux性能调优方面的10多篇文章吧.
5. redis,也是自己总结,做好了复习的笔记,因为看了redis设计与实现和高频题方面,可能理解起来比较顺畅
6. java基础,JUC方面也不知道经不经得住,JUC的45篇文章,高频题都看了,线程池都做好了笔记,jvm方面常见,高频的方面应该问题不是那么大.
第二阶段学习(2022.8.25)
你现在的话,我觉得就是要沉下心来去学习更多的东西,你现在学习的这些,算是绝大部分想要挑战大厂也都会学的东西,为了更加具有竞争力,我们需要去学习更多,至于面试题那些,不处于面试阶段,忘了就忘了,一直看这些提升很小,容易遇到瓶颈。
接下来需要学习两种:
1、拓展一下自己的知识点
2、阅读部分Java书籍
3、研究下一些知识点的底层
1、拓展下知识点:这方面的知识点,主要和工作上常用的东西挂钩,我们只入门,了解大概就行,不深入,也就是说,如果你没有学习过 docker,netty,nginx,springcloud这些,那么可以简单入门一下。
2、Java需要阅读的书籍:《effective java》,这本书有点难度,不过很不错,特别是有助于面试,另外就是 Java8 的一些新特性要学习下,比如Lambda表达式,Date Time API,主要是这两个
3、研究下底层:这个是重点,主要研究下一些东西的底层,这里你先做一做网络编程吧,主要网络编程涉及的东西多一些,比如可以加深对计算机网络理解,也会涉及到IO多路复用这些高频点,而这些也会涉及到多线程,你先学习下,后面学完这个,可以继续研究背后的知识,我给你大致找了一门课,就是极客时间的《网络编程实战》,你可以自己去购买,也可以用盗版的,我这里有盗版的: https://pan.baidu.com/s/1U8mdlMyjLpUh9fHojXBb5g 提取码: 52dm
另外,如果你对C/C++不懂,那么需要简单学习下,要能大致看懂代码,这个是学习底层必须掌握的,后面很多底层的源码实现,都是基于c/c++,但是跟着别人的讲解来看懂代码应该 不难,就是需要自己去学习下一些基本语法。
目前你先围绕我说的这几个去学习。
8.30~1.12
最近感觉就是一直看面试题,然后投简历,等面试.学习的话看了一点点操作系统,但是面试题没怎么看。然后项目做了一个mit6.830用java实现数据库想换掉rpc(为做rpc看了很多rpc资料,极客时间网络实战方面也看了).最近想着要不要做个mit6.824分布式系统用go语言做,java方面可能Juc薄弱点,但是常见的会.然后最近进了字节后端基础青训营。新的知识docker,netty,springcloud都学过,但是很少用,忘了很多