该不该背八股,分享下我的经验#我的求职思考##面试##实习#
    在互联网从业十余年了,面试过的候选人没有上千也有几百。最近也一直在招人,最近几年发现现在互联网行业的招聘形势确实发生了不少变化,公司要求会越来越高,而候选人需要提前做的一些准备也有更高的要求。因为自己在招聘上也有一些思考和感触,所以想写一个系列文章,让一些涉世未深的年轻人们能更多了解到站在招聘方视角是如何看待候选人的,希望能帮助一些小朋友们少走一些弯路吧。    首先是想谈谈大家经常提到的准备面试经常提到的背八股文,当然作为中国人,应该都能知道背八股文是个贬义词,原意是想表示当年科举制度的僵化和死板,要求很多人需要死记硬背四书五经等等。对应到我们技术面试,就是大家所谓的那些基础知识点,比如计算机相关的操作系统、网络、编译原理等等诸如此类的东西,大部分是一些有固定答案的概念性知识。    说实话,在有了搜索引擎和ChatGPT这种东西后,对于死记硬背的东西我们为什么还需要去准备呢?想不起来就查一下不就好了?实际上确实如此,很多知识点在我们实际工作中不会死记硬背,真想不清楚了,肯定也是会再查一遍。那为什么那么多年了,不管是学校考试还是技术笔面试都还要考察这些东西呢?这就是我想在这篇文章给想不明白的同学解释解释原因。    我们不排除有部分面试官不太合格,只是按部就班的去考察这些八股文,看答案对不对就完事了,只作为了一个最简单的门槛筛选,简单来说,就是他们认为如果你连这点勤奋都不愿意付出,那说明不太符合岗位的期望。只能说这种筛选有一定的道理,但不应该是考察这些基础知识的初衷。    回到正题,先说说“八股”该不该背,我认为不该背,应该去掌握去理解这些知识点,形成知识体系。很多知识点当时靠背是能很快速成的,至少应付一些小公司问题不大。但这样的话,你永远不可能对计算机基础有深入的理解,这都是点状的知识点,完全孤立在你的大脑里,你完全不知道是什么意思,比如问你线程和进程区别,你背了一通下来这些东西(实际上我也记不住,现搜的)“进程是操作系统进行资源分配的最小单元,线程是操作系统进行运算调度的最小单元。 进程(Process)是计算机中的程序关于某数据集合上的一次运行活动,是系统进行资源分配和调度的基本单位,是操作系统结构的基础。 线程是操作系统能够进行运算调度的最小单位。”但你根本不知道操作系统里资源分配和运算调度是什么意思,你都不知道操作系统里哪些东西算是进程,哪些算是线程,你也不知道进程怎么区分怎么通信等等,那你这个知识点就相当于无用的。因为它没有结合你日常能接触到的一些实际应用结合起来。正常来说,你应该搞清楚什么是进程,进程在我们用电脑的时候是怎么样的存在,它有哪些特点,通过什么管理,有哪些方式能体现通信等等,你把这些东西都串起来后,你就会对什么交资源分配的最小单元有比较清晰深入的理解。    所以说,实际上大家所有的背八股是不可取的,实际上招聘方本质的诉求是招聘有良好计算机基础的候选人。    但很多人会问,良好的计算机基础到底在实际工作中有什么卵用呢?你大部分工作不还是在CRUD吗,都是搬砖,你用得上学那么多吗?如果你有这样的疑问,那我们需要再讨论讨论工程师和码农的区别。你如果只是满足于做一个外包,天天接需求,那你就可以认为自己做个码农就行了,不要管什么原理什么基础,我简单培训个一两个月的就能上手干活做需求,就跟真的是去工地搬砖一样,有手有脚,体力充沛就行了,这样显然你的职业生涯是有局限性,抗风险能力也很差。    那怎么能比较系统的学习计算机基础呢?最简单的当然就是把专业课本都能搞明白了,你专业课如果都能拿90+,那肯定基础不会差,虽然大学的很多课程大家都是考前一两周突击一下就能及格甚至拿不低的分数,但想拿90+,肯定还是需要好好掌握的。另外,多思考多结合实际,现在都有ChatGPT这样强大的工具了,你如果对某个知识点不太明白他具体什么意思,你就让ChatGPT给你举几个例子,让他用大白话给你说清楚,我想会你会更容易掌握,更能知道到底怎么回事。我可以举个例子,比如问你计算机网络的七层网络模型,你如果光看死记硬背,你还是经常会忘了一两个,但如果你能跟着某个网络请求的过程,层层去拆解他在每一层都发生什么变化,这样就可以把这些知识点串起来了。    再举一个岗位相关的例子,比如面试前端工程师,我经常会问盒模型这种烂大街的问题,有部分人甚至不知道盒模型的正确概念,那可以认为你学习HTML/CSS肯定是不可能系统的,而一半左右的同学能看过概念,能说清楚标准盒模型和IE盒模型的区别,从内到外分别是哪几个盒子,有些能知道width和height在两种情况下分别是什么盒子,然后就就仅此而已了。那我希望的是什么呢?我一般会继续追问,知不知道盒模型在整个布局中的作用,然后再问自己使用CSS的时候,有没有思考过比较常见的一些属性都影响哪些盒子,再去问问相关的常见布局方案和CSS选择器优先级等等。由此就基本能判断,这个候选人对整个知识体系是否有一定的理解了。所以每个“八股”知识点的背后,肯定是有关联性的,真正要考察的是很多知识点背后的基础理解。    说到这,就可以解释为什么有些同学在面试的时候经常自我感觉良好,感觉问了好多“八股”题自己都自我感觉良好,但最后还是被挂了。有没有可能是一个面试问了10个这种问题,然后你只答对了基础的概念是什么,而忽略了后面面试官的那些追问,而很多同学甚至没意识到可能更重要的是后面的那些追问,导致自己留下来的印象就是问的问题好像我一开始都答得挺好的,但就是没过。    总而言之,掌握计算机基础知识不能靠死记硬背,需要自己多去思考知识点之间的联系,这也是人类能记忆大量信息的关键,通过网状的知识体系,能够互相联系,帮助自己巩固。我们所谓的理解了某个知识点,其实也是类似的感觉。这样的好处是,即使某个知识点你记得不太清了,你也可以通过跟面试官沟通相关的知识,让面试官能知道你是个有比较好基础的人。    所以面试的本质还是面试官判断你是不是需要的人,是不是愿意跟你做同事,“八股”和其他各种面试题也好,都只是为了验证这些的手段而已,所以不管你记不记得这些基础知识,也不要慌,一道题不会,不会判你死刑,但你如果因此心态崩了,发挥只会越来越差,很多能补救的机会也会错过。所以有些问题你记不清,你可以尝试着去跟面试官互动一下,表示说这块具体细节我可能背不出来了,但我知道他其实主要作用是blabla,实际上他是xxxx这个体系里的xxx环节,一般我们在xxx的时候可能会需要考虑它。如果是这样的回答,我相信面试官也会有个好印象。    这个问题就先讨论到这里,后面想到哪些常见现象我会再写文章,也欢迎大家评论说一下面试中自己比较疑惑的点,我可以考虑优先写个文章展开说说。    
点赞 147
评论 12
全部评论
老学长😂😂
点赞 回复 分享
发布于 2024-03-21 20:06 湖北

相关推荐

03-26 13:04
已编辑
电子科技大学 算法工程师
xiaowl:你这个简历“条目上”都比较有深度性,但是实际上面试官又没法很好的评估你是怎么达到很多看上去很厉害的结果的。要避免一些看上去很厉害的包装,比如高效的内存复用策略的表达,如果仅是简单的一些内存共享机制,而且面试上也没有深挖的空间,就不要这样表达。比如,工程化模式本质上可能就是定义了一些abstract class,那也就没特别多值得讲的内容。建议简历上应该侧重那些你花了大量时间和精力解决、研究的问题,不要过分追求“丰富”,而是关注在技术深入度、问题解决能力的表现上。
没有实习经历,还有机会进...
点赞 评论 收藏
分享
05-12 10:10
已编辑
门头沟学院 人工智能
写这篇之前我犹豫了挺久。一方面是怕被人骂,"又一个收割焦虑的转行帖";另一方面是看了太多用 GPT 套娃出来的「学习路线」文章,AI 味重得让人没法读完。所以这篇全是亲身踩过的坑,时间线、用过的项目、当时的心路全都尽量原样写出来。如果你是大学生在迷茫要不要转 AI,或者已经在转的路上,希望能给点参考。 一个反共识的开场:你以为进 OpenAI 的人都是博士? 先讲个故事,跟我没关系,但跟所有想转 AI 的人都有关系。 OpenAI 的 Sora 团队(就是搞文生视频那个)一共 13 个人。这里面有两个人特别有意思: Will DePue,密歇根大学计算机系,直接辍学了。17...
_hengheng:我也本,也算是做ai相关,我最开始感觉做ai工程师有多么多么困难,后来发现懂了原理后整体训练完全可以看成一个流程化的内容,开源方案太多了,大多基本都是按着模子在自家业务上做各种操作,就算是大厂的小部门也没那么多资源去训基模,反而更多的是像怎么把技术往业务方向靠近了,不过当前时代如果本科学历没那么好加上自己执行力不是特别强还真不建议走ai工程师这条路,可以试试其他ai的偏业务方向,不然校招不太好杀出来
点赞 评论 收藏
分享
评论
2
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务