文章目录
  1. 1. 附录:复习资料

天行健,君子以自强不息。 – 《周易·乾·象》

踏出熟悉的公司大门,我回头,知道以后应该不会经常回来,抬手,拍照,朋友圈里,我留下了“莫愁前路无知己,天下谁人不识君”的文字。

再见了,我将拥抱新的生活。再见了,我会有新的工作。

别人看起来我走的突然,但换工作是迟早的事情,是我的主观选择,年初就着手开始准备。

裸面是大忌,因此我指定了计划,分模块进行复习:

  • java核心:集合框架,重点复习HashMap、ConcurrentHashMap、ArrayList、LinkedList
  • java核心:多线程,重点复习synchronized、volitaile、JMM模型、Lock
  • 缓存:重点复习Redis
  • 消息队列:重点复习RocketMQ
  • RPC:重点复习Dubbo
  • Spring:以IOC、AOP为核心,了解其源码,同时看了事务相关的源码
  • JVM相关:主要从项目出发,学习整理了JVM结构以及调优相关的知识
  • 数据库:重点复习了索引、redoLog、undoLog、MVCC以及简单看了看调优
  • 数据结构和算法:我没有复习很多,主要是在面试之前把二分查找、快排、二叉树、链表的核心代码看了看就去面试了
  • 分布式协议,如RAFT,Gossip等,这部分是我给自己的要求
  • 项目:主要总结了核心流程,能够做到胸有成竹的画出各种流程图,对于项目中的遇到的问题能够流畅的表达出来

有了计划,在执行中,重点学习了极客时间的专栏,这里不是打广告,极客时间的高并发和MySQL两个专栏对我帮助很大。文末会放出参考资料。

在上下班的路上,每天能有30-50分钟时间学习,基本上是看极客时间,高并发专栏我来来回回看了三遍,在后面的面试中,基本上没有没被问住。

在整个面试的准备过程中,我花心思多准备了消息队列相关的东西,用了三个月左右的时间把RocketMQ的重要源码都看了一遍并在博客中写了源码分析文章。在后面的面试中,只要问到MQ相关的问题,我都能滔滔不绝的和面试官聊,基本上能够从架构聊到应用再深入到底层,这里也要感谢老东家给我实战的机会,让我能够更加直观体会到MQ带来的便利和优越性,并以此为契机,让我能够加入到RocketMQ的社区中。

我想说的是,如果想要找一个满意的岗位,前期的准备是必不可少的,虽然我没有像少数的同学,废寝忘食,但是功夫还是下了的,至少在MQ和JVM上,我投入了大量的精力,这也让我很受益。

如何在面试中展示自己的亮点,让自己能够吸引面试官的注意呢?

对于这个问题,我在很多地方都回答过,说起来并不难。

  • 一个稳定更新的github,有互动有文档,有一定数量的star;
  • 一个稳定更新的博客,公众号,如果有一定的知名度那更好;
  • 能够积极参与开源社区,有一定的贡献;
  • 对某方面技术有较为深刻的认识或研究

上述这些,如果满足一项,都会超出很多人,但没有一个不需要花费半年甚至更多的时间去准备。

说说我的经验吧,我写了五年多博客,参与过开源社区,写过很多轮子,对于造轮子的思考以及总结都及时发布到自己的博客中。

三年里没有说每天起早贪黑,也差不多就是每天持续学习两小时左右。

在面试的过程中,我用一周时间拿到三个互联网offer,当然和那些面经中的大佬们比还是差距很大,但我已经很满意。

怎么说呢,一句话就是皇天不负有心人。道理大家都明白,但是客观上就是会有明显的差异。

有的人喜欢问别人在面试的过程中被问了哪些问题,包括我看过的很多面经都是对自己面试经过的复述,基本上就是一个面试问题的记录。不能说没用吧,从这些问题中是能够分析出一些共性的,但我不想这么写。我认为,好的方法要胜过知识本身,当一个人有了一套自己的学习方法与思考框架,那么他做什么事情都能够游刃有余。所谓,授之以鱼不如授之以渔,大概就是这个道理的体现。

在真实的面试中,面试官问什么问题是取决于我们面试的岗位,更重要的,是取决于面试者简历上展示的能力以及项目中的亮点,如果能够准备一份亮眼的简历,并且刻意去进行引导,相信不需要问别人也大致能够知道自己需要准备哪些问题。毕竟面试这个事儿,还是因人而异。

我在文章的开始部分,罗列了我自己的复习计划,基本上这就是Java开发岗都需要关注并掌握的核心知识,到哪里都逃不开的。知识的复习,是一个体系的建立,所以指望问别人几道题就能够通过面试,这种侥幸心理是要不得的,功夫不负有心人,不愿付出努力,不愿总结就想要轻松通过面试,斩获大厂offer,我觉得不是不可能,但至少可能不会很大。

之前也加过一些群,看着群里不断有同学拿到了好offer,然后一帮人在后面追问学习方法,面试问题,我只觉得好笑。学习方法可以借鉴,但不能照搬,一方面,我为这些拿到满意offer的同学感到佩服,另一方面,我也暗下决心,有一天,我也会找到我想要的工作,去做我想做的事情。

君子以自强不息,好的执行力,是成功的必要条件。我享受计划的制定与实施,客观的对自己的优劣势进行分析,不断复习,整理,复盘,总结,对简历持续进行打磨,在某个事情的刺激下,国庆节前,我开始了简历的投递。

国庆节,是漫长的等待。节后,我陆续收到了面试邀约,连续面试一周,高强度的持续实战与复盘,我最终收获了心仪的offer,也最终选择了爱奇艺。

“简单想,简单做”。

这是实干家的乐园。

这里分享一个面试的技巧,如果能画图就多画图,用画图的方式表达自己的思路,能够变被动为主动,而且也可以让自己的心态放松,从而更加条理清晰的表达出自己的观点。面试官也基本上会从面试者画的图中进行提问,从而有效避免了一问一答的“审问”式面试。

或许有人会认为我的经验难以实践,但我曾经也是一个迷茫的小菜鸟,也曾在群里发问,问题的简单与无脑让我现在回想起来都觉得可爱。

但我始终相信梦想的力量,相信实践的力量,相信持续的付出一定会有所收获。

我始终感谢大二时候的我做出的决定,我要写博客。这一写,就是五年。这也是我到现在坚持最久的一个习惯,当你开始着手实施一个看起来不可能完成的任务,并不断坚持从而变成习惯的时候,这件事也就不那么困难,每天进步一点点,当多年以后,曾经的那颗幼苗,已经长成了大树。

我纷乱的表达,只为了向你分享一个观点,想清楚再做,比盲目去做要更容易接近所谓的成功。想明白自己要什么,树立一个明确的目标,并制定适合自己的计划,坚持执行下去,一切都是水到渠成。

没有什么成功,生活是没有终点的,如果有,那就是死亡。

我还有呼吸,我还有心跳,我未来的每一天都是未知且新奇的,不断的反思过往,不断的树立目标并坚持完成,这是我生活的乐趣。与己斗,其乐无穷。

感谢遇到的每一个人,感谢经历的每一个挫折,感谢低谷中不服输的自己,感激并不断努力着。

精诚所至,金石为开。一切都没结束,一切才刚刚开始,这是我平凡的跳槽之路,这是一个普通人的内心独白。这是我的狂欢,这是我的舞台。

–写于午后。

附录:复习资料

  • MySQL实战45讲(极客时间)
  • Java并发编程实战(极客时间)
  • 《Java并发编程的艺术》
  • 《MySQL技术内幕:InnoDB存储引擎》
  • 《RocketMQ技术内幕》
  • 《Redis 深度历险:核心原理与应用实践》
  • 《深入理解Apache Dubbo与实战》
  • java工程师面试突击笔记
  • java工程师面试突击视频



版权声明:

原创不易,洗文可耻。除非注明,本博文章均为原创,转载请以链接形式标明本文地址。

文章目录
  1. 1. 附录:复习资料
Fork me on GitHub