想要入职大厂,应该如何准备八股文?方法论分享!

简介: 想要入职大厂,应该如何准备八股文?方法论分享!

1. 前言

大家好,我是 「周三不Coding」,之前名字是 ltyzzz。想了想还是起个接地气的名字吧哈哈哈哈~之后我再与大家闲聊这个名字的意义!

之前我分享了春招收获大厂 Offer 的面经后,很有小伙伴来问我如何准备八股文。其实在我写面经的时候,认为大家可能最缺乏的是项目经验,或者对面试没有清晰的认知。于是我当时给大家抛出了一个公式,并着重分析了其中的 Idea 部分,也是大家容易忽视的一点。

今天,我来给大家分享一下,我是如何准备八股文板块的。

在分享之前,我再给大家抛出一个我认为的 5 个核心点:

多轮复习法 + 刻意训练 + 事件驱动 + 擅用 GPT + 自我安慰

接下来,我会逐个分析我是怎么做的。

2. 方法论核心

2.1 多轮复习法

这个方法其实也不是我自己想到的,而是被无数人证实过非常有效、可靠的一套方法论。我想信很多小伙伴在高三的时候,各个学科都会开展一轮、二轮甚至是三轮复习,每一轮都有各自的侧重点、目标,循序渐进地将你过去所学习到的零散知识,整合成为一套完整的适应高考的知识体系。

我们在准备面试时,也可以借鉴这个思路。将我们之前所学的零零散散的碎片知识,整合成为应对面试八股提的知识体系。之前学习的时候,我们只是简单地知道如何使用,模糊地记得一些概念;而经过复习之后,我们便对每个知识点的内容更加清晰,而且知道如何自如地回答。

下面我提供一下我个人总结的多轮复习法:

  • 我们首先假定面试准备时间为 30 ~ 40 天,不宜过长也不宜过短。不能太长是因为战线拉长会使人非常疲惫,当时我准备到 30 多天的时候,整个人已经相当疲惫了。不能太短是因为你可能复习不完所有知识点,容易出大问题。如果你觉得 30 ~ 40 天的时间很紧的话,可能是因为知识点还没有学完,所以得赶紧趁着还没到面试复习阶段的时候,赶紧学一遍这些知识!
  • 接着,我们确定一下在多轮复习中,每一轮需要做什么?
  • 第一轮复习:
  • 首先,确定我们需要复习的模块,比如我是以 Java 为主,我选择的模块是:Java基础、JUC、JVM、Spring、MySQL、Redis、计算机网络、操作系统、微服务、分布式等。
  • 之后,准备复习所使用的工具:面经网站、对应知识点的书、GPT。主要以面经网站为主,对应知识点的书和 GPT 为辅助工具。面经网站我就简单提一下,大家应该都知道,Java Guide 和 小林Coding,深度与广度都足够。时间紧张的话,可以不用书籍,因为我当时候担心有些地方不够深,于是我便参考着书来复习的。GPT 主要帮助我们更好地复习,提高效率,接下来的内容中重点说。
  • 接着,确定复习具体规划。具体复习规划因人而异,我一般是交叉着看,因为一整天都看一个模块,很容易疲惫。
  • 开始真正的复习。如何高效地复习某个知识模块?拆分为两步,第一步是根据书和面经网站,巩固一遍之前所学过的知识点,清楚其中的大概内容,对面试中可能会被考察到的知识点做到心中有数。第一步对应到每个模块需要花费 2 天左右时间。之后,开始第二步,进行自查。这时候需要借助于 GPT,帮助我们列出某个知识点的问题清单。我当时是这么问的:帮我列出 100 道关于 xxx 的高频面试题。接着,咱们需要过滤一遍问题清单,因为其中可能存在很多重复的问题。最后,我们对照着问题清单,开始自问自答,感觉回答不上来、模糊的问题,及时去查找资料复习,并将最终完善的答案记录到清单中。(文件中附一份我的 Redis 问题清单笔记)
  • 这样一来,我们便稳扎稳打地复习完了每一个模块对应的知识点,并且进行了及时的自查,加深了对题目的印象,实现了八股文的 "原始积累"。
    这一轮大约需要花费 20 多天左右的时间
  • 第二轮复习:
  • 第一轮复习完之后,我们可能还是很难接得住面试,大家应该很容易发现问题所在。在第一轮复习时,我们都是趁热打铁,复习完一个模块后,就去自问自答对应模块的面试题。但是实际面试是打乱问的。并且,在第一轮复习中遇到的都是常规面试题,很容易忽略零碎、细节且复杂的问题(比如情景设计题、面试官突发奇想问的题目),所以咱们还需要继续加强。在这一轮复习中,咱们就不分模块了,每天直接 “大杂烩”,至于怎么 “烩”,接下来重点说明。
  • 首先,我们在牛客、知乎、Leetcode等各大网站中寻找面经,如果此时已经接到了面试,可以直接寻找对应公司的面试题。
  • 找到面经之后,一道道题目挨着过,仍然是自问自答。新建一个 Markdown 文档,遇到你含糊不清、没有把握甚至完全陌生的题目,记录到文档中。此时先别急着找答案,先把这份面经过完,最后自己统计一下,在这份面经中能回答上来的题目数量。如果看了几份后,每份都能回答上来 80% 以上,说明第一轮复习十分有成效。但事实是可能只有 60% 左右。接下来,我们就需要走出一轮复习的 Comfort Zone,进入较高强度的环节:刷面经、记录陌生题目、搜答案、口头复述(自问自答),循环此过程,直到自认为总体准确率达到 80%。
  • 我当时第二轮复习花了大概 10 天吧,看了几十份面经、几百道题目(应该不超过 500),记录了 100 多道题目,平均一天就只记录 10 题左右的样子。主要还是因为复习过程中比较焦虑、烦躁,复习到后期的时候心烦意乱,所以第二轮复习效率不是很高,之后我也会提到怎么最大程度地克服这种情绪。


2.2 刻意训练

相信很多小伙伴听过这个方法论,我个人一直十分信服这一方法论。之前的多轮复习法中,很多地方也有运用这一方法论。它的核心就是:明确目标、走出舒适区、执行力与自我反馈。如果可以有一个提供指导的前辈,那么就比较接近于真正的刻意训练。

  • 明确目标:在第一轮、第二轮复习中,我们都有明确的目标。第一轮目标是巩固复习基础知识点,第二轮目标是查漏补缺,遍历搜寻零碎知识点。
  • 走出舒适区:在第一轮复习之前,我们的舒适区是近期正在学的知识或者正在做的项目,陌生的是很久之前学过的知识模块;在第二轮复习之前,我们的舒适区是第一轮复习所学的常规基础知识,陌生的是非常规、难度大的真实面试题。每一轮复习,我们并不是在做自己熟悉的事情,而是在反复地接触不熟悉的东西。
  • 执行力:这一点大家心里都清楚,我相信能够点进来看这篇文章的小伙伴,执行力都不会差。而且大家一定十分清楚执行力的重要性。在第三个部分 「事件驱动」中,我会进一步告诉大家如何提高执行力。
  • 自我反馈:我们在两轮复习中,借助于问题清单、真实面经,反复地进行自问自答,不停地给自己反馈,告诉自己哪里做的不够好,哪里还需要继续完善,并且心中有一个准确率数字。达到某个程度,我们就给自己一个正反馈:我目前复习的还算可以。

我们通过有效运用「刻意训练」 方法论,达到最终可以应对基本面试的程度。

2.3 事件驱动

这一点其实是相当关键的,根本原因在于,我们很多情况下清楚各种方法论,但总是因为驱动力不足,造成无法有效执行,最终使得计划泡汤。

我也是这样子的,所以我直到投简历的前几天才开始复习,这其实就是事件驱动。

我们需要一个真实可见的动力,驱动我们去复习准备八股文。比如投简历、笔试面试临近等等。

但是需要注意的点是,事件驱动 ≠ 临时抱佛脚,我们需要将事件驱动控制在一个合理的范围内。

  • 比如:在投简历的前 10 天,你便开始第一轮复习,这样你复习的时候就在想,会不会我一投简历就立马发面试?(极有可能)这样,你不会懈怠,执行力十足;在面试的前一周,你便迅速进入第二轮复习,根据面试企业往年的面经,查漏补缺。这样也不太有可能出现懈怠的情况。

我们在不拉长战线的情况下,在每一个时间节点,都给自己一个事件驱动,那么我们懈怠的时间就相对少很多,而且复习效率足够高,很有可能使我们拿到第一波 Offer。

2.4 擅用 GPT

这一点我们其实在多轮复习中已经提到啦。根据我的经验,GPT 给出的面试题回答大部分还是比较准确的,比一些面经的质量要高很多。只要该知识点是 2021年9月 之前的,都可以问问 GPT

在你时间很紧张的情况下,直接问 GPT 比你在各大网站中大海捞针,效率要高得多。而且对于基本的面试题,不需要用到什么 Prompt Engineering 技巧,直接问就可以,成本极低。

2.5 自我安慰

在准备面试的过程中,无论准备的情况有多好,一定是伴随着焦虑的,这点无法避免。但是我们可以尽可能地减少焦虑时间,结合之前提到的事件驱动、刻意训练等,不停地反复地找面试题、复习面试题。如果能够一直保持这种复习状态,应该很少有时间焦虑。

这里主要提到的是通过自我安慰来克服焦虑。即使我们一直在准备面试题,但是在复习过程中,可能还会遇到突然的焦虑,比如说:突然复习到一道很陌生的题,完全没有思路,完全不会,这个时候可能就会很慌、很焦虑,并把自己代入到真实的面试情景,想象自己面试中被问到这道题,手心已经在出汗了。这便是我经常遇到的情况,但是,很奇怪的是,这些题目我几乎没有在面试中遇到过,其实按理来说,遇到这些题目的概率本身就不足 50%。所以,我们需要根据这个概率数字,时刻给自己一个正向心理暗示,不要自己吓自己。

此外,我还遇到一种情况,就是复习状态火热,达到很亢奋,很想立马来一场面试的情况。这个时候我便很难静下心来去看八股文、面试题。当时还是挺慌的,但现在细想一下,其实有一个亢奋的复习状态是可以促进面试的表现。所以大家遇到这种情况不必慌张,是好事哈哈哈哈。

3. 总结

以上 5 个核心点到这里就都聊完啦~

最后,我再提一下面试复盘的问题。其实我只做过一次文档形式的面试复盘,因为我个人觉得只需要心里记住这次面试遇到不会的问题,面试结束后赶紧去寻找答案,并记录下来即可。自己会的问题就没必要重复记录啦~

此外,有些同学可能会复盘面试过程中,除技术外表现不好的部分,它有一定必要性,但是没有想象中的那么重要与必要。在时间有限的情况下,这其实是一个 trade-off

  • 如果你认为这场面试中,你的语言表达使你的面试大大减分,那么确实需要引起重视,及时调整与提升(比如,有一些你确定你会的知识点,但是由于沟通能力或表达能力问题,使你没有说出来或者面试官没有听懂,那么就需要及时复盘)
  • 如果你觉得你面试题准备得足够充分,那么你可以利用剩下的时间去想一想如何更加自然流畅地表达想法。

这就是今天的全部分享啦,希望能够对大家有所帮助。

之前很多同学想要看看我做的笔记,目前还在整理中,我把其中一部分放到了我的知识库网站中,等全部做完后,我再与大家进行后续的分享~

相关文章
|
6月前
|
JavaScript 小程序 Java
基于Java的高校实习管理系统设计与实现(亮点:实习记录、实习打分、实习作业,功能新颖、老师没见过、当场唬住!)
基于Java的高校实习管理系统设计与实现(亮点:实习记录、实习打分、实习作业,功能新颖、老师没见过、当场唬住!)
112 0
|
Cloud Native 算法 程序员
面试流程解析:从初面到终面,程序员需要注意什么
面试流程解析:从初面到终面,程序员需要注意什么
152 0
|
程序员
程序员成长第七篇:面试中需要注意的事项
程序员成长第七篇:面试中需要注意的事项
81 0
|
小程序 测试技术
初级软件测试面试会问什么 掌握这些回答技巧,轻松拿捏面试官
初级软件测试工程师大多为新入门的小白,在经历面试时,往往也是最忐忑的一部分人,为此,我特为大家整理了一些初级软件测试面试会问的问题,帮助你们在面试时能够从容不迫的回答出hr的问题,拿下offer!
146 0
|
弹性计算 关系型数据库 MySQL
面试被问:“你如何看待加班问题?” 该如何回答
面试被问:“你如何看待加班问题?” 该如何回答
面试被问:“你如何看待加班问题?” 该如何回答
|
设计模式 运维 Kubernetes
15年老司机聊程序员成长的28个要点
15年老司机聊程序员成长的28个要点
369 1
|
消息中间件 算法 网络协议
面试 4 个月,最终入职大厂经验分享!
在18年底到19年3月,陆续面试了几家公司,有成有不成的,最终进了一家比较满意的知名外企。在本文里,我将介绍我这段时间里更新简历和面试的相关经历。
142 0
面试 4 个月,最终入职大厂经验分享!
|
安全 测试技术 数据安全/隐私保护
6 大测试用例设计题详细整理— 助攻高薪求职之路!
我发现无论是刚入职场的测试新人还是在具备几年测试经验的职场老人,对于测试用例设计这块,倘若不是自己接触过测试过的软件产品,被问到如何测试基本回答不上来,原因归根结底还是测试思维积累不够。
6 大测试用例设计题详细整理— 助攻高薪求职之路!
|
消息中间件 SQL 算法
面试 4 个月,最终入职大厂经验分享
  在18年底到19年3月,陆续面试了几家公司,有成有不成的,最终进了一家比较满意的知名外企。在本文里,我将介绍我这段时间里更新简历和面试的相关经历。   可能面试相关的一些方法,大家能从我之前的博文里看到,但在本文里,大家更能从相关实战性的例子中进一步体会到面试技巧的使用方法。   1 刚开始一定得通过一些小公司练手   我打算要换工作,就更新了简历,这时就有不少猎头来找我,刚开始,我不敢面大公司,只是去些规模小的互联网公司。因为一方面,当时我很久不面试了,面试实战技能难免有些荒废,另一方面,离我之前的面试毕竟过了一阵,我不知道当前市面上哪些技术比较值钱。
168 0
|
Java
Java开发岗位校招复习重点在哪里?
Java开发岗位校招复习重点在哪里?
186 0