这篇分享的起因是昨天在V站刷到一篇帖子,如何用 3–5 个高效问题快速识别 Golang 开发者的技术素养? 里面提到了我对于八股文面试题的看法。
都要出来面试了,但八股文都不愿意花点时间背,态度很明显就是有问题的,被刷掉也很正常。
从前我也是很讨厌面试时遇到各种八股文面试题,会觉得很无聊和无趣。因为是纯靠背的东西,面试考这些就很蠢。
但是慢慢接触了更多开发者之后,甚至自己面试别人多了之后,就会发现这些看起来很呆板的八股文面试题,其实起到了好几种作用,比如说:
- 筛选不做任何面试准备的面试者;
- 给初级开发在前期建立知识库。
有人来找我聊如何准备面试的时候,我一般都会说需要看企业的业务内容和投递岗位的工作内容有针对性地去准备简历和准备会被问到的问题。而不是所有的企业都使用同一份模板简历,应该尽可能地给自己争取被看到的机会,增加获得面试邀约的几率。
在收到面试邀约之后,会建议别人去熟读八股文和准备JD中要求的技术栈相关的知识。不要因为面试时一些常见问题回答不上来,打乱自己面试节奏或者紧张,甚至面试失败。如果是的话就太可惜了。因为并不是要求原文背诵,其实只需要清楚是怎么一回事,问到的时候可以用自己的话描述出来就行,并不是一件多难的事情。
那么在充分准备的情况下,背八股文并不是真的在”背“,而是在复习很多已经不太用得到的基础知识,或者提前了解还没有在实际中接触到的基础问题。
所以说白了”背八股文”只是在给自己面试做准备,而不单纯只是背题。当初背八股文的时候可能不知道怎么一回事,慢慢你终于会在一些实践中运用到,随着记忆复现豁然开朗。这也就是”背八股文”这个行为在前期用”填鸭式”的方式给自己建立知识库。
而对于企业来说并没有一个简单且有效的方式去筛选候选者。毕竟经验积累没有那么多,项目经历也并没有那么丰富,做的工作大多也是一些简单的工作。考察基础的面试题就那么多,来来回回用多了自然就变成了套路的”八股文”。面试官需要做的是在问”八股文”的基础上去追问”为什么”去考察候选者的解题思路,适当的时候还需要去引导面试者。
但是对于候选者来说,给到的感觉就是在问八股文,而且一直在追问。那么对于很多候选者来说,直接背八股文就是最简单直接有效的操作了。那么在此之上就可以发掘出候选者对于面试的重视程度,是否为了面试做了足够的准备。再进一步就可以看出候选者处理一些重要的事情时,是否会做前期准备工作以应对可能出现的状况。
虽然很无聊,甚至有些问题在当初的你看来很没必要。问到了技术框架的底层实现,或者是一些网络通信协议和模型。这些实际上在给你建立最基本的知识体系,以最低限度地去了解一些未来伴随你日常工作的核心概念。