心法利器
本栏目主要和大家一起讨论近期自己学习的心得和体会。具体介绍:仓颉专项:飞机大炮我都会,利器心法我还有。
2023年新的文章合集已经发布,获取方式看这里:又添十万字-CS的陋室2023年文章合集来袭,更有历史文章合集,欢迎下载。
往期回顾
前言:本文一开始的构思是列举一些非八股的问题,供大家思考和参考,但写一半发现简单的列举可能不如直接把思路说明白,所以转为对八股与非八股的提问,可能更能加深大家的理解。
面试的八股网上已经很多了,但是从目前的反馈和讨论来看,仅聚焦八股本身,并不能保证offer手到擒来,因此,本文结合自己的面试和被面试的经历,分享一下面试时八股和非八股问题背后的意义,方便大家提前准备和思考。
目录:
-
为什么问八股
-
为什么不只问八股
-
项目参与的真实性和深度
-
技术的深度和广度
-
真实问题的应对能力
为什么问八股
无论是前端、后端还是算法,都有一套非常常用的八股问题,相信大家作为候选人,都会因为要背八股而困扰,但在实际面试中,大家都会被问到,在面试官的视角,这还不得不问,更多是因为如下的原因。
-
首先,八股所代表的是最基础、通用、常见、必要的能力,八股都不会,很大程度意味着面试人连基础知识都不了解。
-
面试的目的是筛人,筛人意味着要体现区分度,八股是及格线上下的关键区分点。不要以为八股很简单,在我的经验里,所谓的网上非常常见的八股知识,并不是所有人都了如指掌,例如transformer encoder和decoder的内部结构,常见的类似sgd、adam优化算法,dropout概念和意义,常见的算法评估指标等。
-
换个角度,八股的形成并非面试官总结,而是面试多的前辈们总结的某一个领域常见的、经过系统整理的面试知识体系,反过来,面试中重要、常见的问题,通常都会在被这个体系覆盖,回到第一点,毕竟八股所代表的是最基础、通用、常见、必要的能力。
因此,八股,是面试中所大概率会出现的,请大家认真对待。
为什么不只问八股
从上一节中的第二点可以知道,八股是及格线上下的关键区分点,此处换言之,他只能区分60分上下,它并不能区分80分段的人和90分段的人,面试是为了优中选优,在公司有大量选择的时候(例如各种互联网大厂、新的AI独角兽),八股的区分度不足以选出足够优秀的候选人,此时八股就不够了,我们需要更强有力的问题来区分强弱。
在之前的这几篇文章里,我有提到新人的成长、晋升、面试等的相关内容。
这些文章里,我有提到大量的有关进阶的思路,简单地说,就是要提升解决实际问题的能力,毕竟功利地,从公司角度人是招来解决问题的,从面试官角度,招人就是在找队友,找契合项目的队友,而解决问题,更多来源于3个点,经验、技术储备以及选择,也就对应了后面三章的内容,即项目参与度、技术深度广度和应对能力。
项目参与的真实性和深度
经验是后续解决新问题的一个重要思路,说白了,就是"之前做过类似的事,所以遇到新的类似的问题可以快速上手解决",有经验的人肯定比没经验的人,更有优势。因此,经验的强弱深浅则是重要的考察内容。
一般地,考察真实性和深度主要可以有如下的问题:
-
项目的项目背景和核心开发内容。
-
整体的模块设计和方案设计。
-
训练集测试集的数据来源、数量、标注方案、处理方法等细节。
-
是否有进行部署,具体负责模块的部署所需资源,包括训练和推理。
-
项目过程中有没有遇到什么很难的问题,最后是怎么解决的。
-
最终方案的评估方式。
-
整体迭代进程以及后续的优化方向。
这些问题都有比较比较明确的共性:
-
只有深入参与了,才能回答出来,回答的好坏,直接来源于自己对项目的理解程度。
-
很多新人,可能会因为被前辈保护的比较好而忽略很多细节,例如数据的来源,方案选择,潜在坑等,此时多观察、多问很重要。
技术的深度和广度
技术储备的其实是项目实际进行过程的弹药,说白了就是招数,这一步可能会和八股有些重合,毕竟八股本身就是考察技术的扎实程度,这里提供一些可能并不算在八股内,但还挺重要的技术广度、深度的思考题。
-
看你在XX领域做了一些工作,这个领域还有什么比较好的方案可以介绍一下。
-
这些方案都有什么各自的优缺点,在这个项目里你是怎么考虑和分析的。
-
如果项目让你继续做下去,你会有什么好的方案优化,以及未来有什么迭代方向。
知识点是可以通过学习甚至背诵回答出来的,但是规划性、个人想法、思路上的内容,比较难去专项学习,要想拔高,这些能力的学习和掌握能让自己更有竞争力,面试官的视角则是更有区分度。
真实问题的应对能力
这点我理解是经验和技术能力掌握后的一个延伸,即解决真实问题的能力,比较简单的提问方式就是给出一个具体的问题,然后能给出具体的解决方案,这里会有几个层级的能力区别。
-
最基本的能力,就是直接给出解决方案,可以开始动手操作实验。
-
第二层,能给出多个方案,并能分辨出各自的优缺点,给出一些优先级之类的看法。
-
方法之外,能给出一些针对真实问题的思考和理解,分析出该真实问题和一般问题的差别。例如电商的客户搜索,和faq问题搜索,百科搜索,一般都有很大差别。
-
针对该真实问题的特殊性,能给出更加特别的技术方案,该方案会更有针对性,至少言之有理,具有更高的测试优先级,目测有更好的效果。
-
能根据现在项目阶段,给出适合短期的方案,虽然还能给出中长期的迭代方向,把一个局限的简单问题升级为了一个长期项目性的规划问题。
可见,同样是一个真实的应用题,随着经验和技术储备的丰富,回答起来的感受肯定是不一样的。