三月底离职,到目前面试了十几家,为什么面试官总是喜欢问很底层的原理问题?这些问题?

相爱便是一辈子


其实作为技术人员,面试过程中询问面试者底层原理主要是考察面试人员的基本功,以及对技术的学习态度。一个对技术有探求有好奇心的技术人员,一定都会去研究底层的原理。原因很简单,作为技术人员,碰到问题如果没有打破砂锅追求到底的精神,他的技术结构和经验就会如同沙雕,非常松散。对于底层原理的了解和掌握,才能让你的沙子结构变成混凝土,才会更扎实,更坚固。一个不懂底层原理的技术员和一个深入研究底层原理的技术员的差别,就像一个只会开车的司机和一个会修车的教练,司机和教练都能把车开走,但是一旦出现车辆故障,司机只能等待救援,而教练就可以迅速定位问题,然后解决问题。所以作为技术人员,如果对于日常用的到技术不能理解其底层原理的话,那么出现问题就会无从下手分析,更谈不上针对设计和底层原理去优化了。所以如果是技术人员,那么平时对于常用的技术要有研究其底层原理的动力,只有真正理解了它的原理,才能更好地应用它去开发,去优化。


我乐自我高


题主你好,很高兴回答你的问题!

作为一名职场填坑多年,参加多次应聘求职,完成过几次招聘和岗位职责说明书的人,我谈一下对问题的看法。

面试是为了挑选有用的人,而不是挑选“高大上”

公司招聘,实际上是以实用为主的,作为面试官需要通过面试过程的信息筛选挑选出最合适的人。如果是一些基础性的岗位,那么基层的经验和原理是考察一个人岗位熟练程度的最好办法。至于说高大上的问题,更多的是测试求职者的附加价值,也就是意外惊喜,这一块作为参考条件即可。

面试只是一种方法,结果判定才是手段

面试官面试的时候,都会有自己的“套路”。作为应聘者,我们要做的就是见招拆招。一个简单的问题,同样的回答,不同的人有不同的判定,不要纠结面试官问什么,重点关注你回答了什么!

求职应聘,最重要的是表现让对方满意,至于说能否体现全部实力不重要

相中了一份工作进行面试,我们的关注焦点应该是如何通过面试。至于说对方问的什么,如何评判实际上不重要。

原理类的问题看似简单实际上很有技术含量

一些与基础经验有关系的岗位,问现场的原理性问题能看出应聘者对现场问题的了解和掌握情况!最底层的问题恰好最能体现一个人的实践经历,有没有在现场做过事,只要问一个现场小问题的处理就能看的出,这些恰好是可以排查“面霸”的最好工具。


仅是路人


最近几年,只要是技术岗位,一般都离不开底层问题,无论你面试的是那个层级的岗位,统统要从底层走一波,而且特别底层特别细的那种。

接下来简单谈谈我对这个问题的看法


对底层的关注度折射出行业的成熟度

还记得老夫当年刚毕业的时候,只要你对一些常用语句,关键字、常规概念、运算法则能够熟练掌握,别人就会认为你基础不错,而且当时一堆技术人员在一起聊一些基础问题往往也就是聊这些。然而,尽管现在看来这些无比简单的概念,当年也难住了不少人。

再后来,人们开始关注一些常用对象的不同适用场景,并开始注意到他们的实现原理等等,不过当时的要求毕竟还很简单,只要了解他们的不同点以及底层的大致实现原理,基本上基础这块就能过关了。

大约是在2009年2010年前后,只要提起基础,就会涉及到垃圾回收、内存模型、加载器这些东西了,而且对一些常用对象的理解不仅仅要懂原理,还要明白大致的实现方式。

到了最近几年,一提起基础,那是没完没了的细致问题,底层的原理、算法等等自不必说,甚至常会被问起一些犄角旮旯的细致性实现,例如:某个容器内部代码中的某一段代码的作用,以及怎么实现一个类似某容器的加强容器。

小结:我们对事物的认识往往都是从外到内,从粗浅到深入,从简单到复杂。随着整个行业的发展,我们对底层的认识肯定也越来越深入,越来越细致。而且在可预见的未来也会越来越深入。


面试中为什么要问这些底层问题

1, 可以看出你对待技术的态度

例如,从一个人能否记得住伴侣的生日,可以看出他对伴侣的关注度,尽管这个日期一问便知;从一个官员对治下人口、经济情况的了解度可以看出他的勤政程度,尽管这些数据都可以查出来。

因此,从你对底层问题的了解程度可以看出你对技术问题有没有刨根问底的态度,也粗略的可以了解到以前你工作的层次。

2, 对底层的了解可以增强解决问题的能力

随着二十多的发展,技术人员现在需要解决的问题早已经不局限于一些简单的逻辑问题,业务的深度定制、大规模的并发访问、海量数据处理。有时候对底层的一个小小优化就可以给整个系统提升很高的处理能力。

在一些架构设计过程中,如果你对底层足够了解,还常常可以借鉴别人的优秀处理方案。

小结:面试中很多看似无病呻吟的点,其实都是有目的的。尽管很多企业的面试官都不知道某些点的真实作用,例如:明明有你的简历还要让你再填一份表格。


面试中关于底层的提问是否真的能考察出面试人员的真实实力

说一个十几年前我的真实招聘经历,某天公司安排了七八个技术人员过来面试,而最终的录取人数只有一人,当时有个参与面试的(权且成为小A)人员给我留下的深刻的印象,他自称有两三年的工作经历,而且所有的面试问题几乎都完美的答了出来,而其他人或多或少都有一些问题答不出来。毫无疑问,小A被录取了。


然而入职后小A的动手能力特别差,好在比较勤奋,人也比较聪明,就留了下来,但我能明显感觉到他不可能有两三年的工作经历,因为处于试用期也就没问他真实的情况(他肯定不会说)。


在转正以后我找他谈话才知道,他一天班也没有上过,参加面试之前在家里狠背了小半年的面试题,黑线!


当然,这和我当年的面试能力有关,但是,面试的不确定性在这里也有所体现。有过多次招聘经验的面试官往往都会有这样的经历,那就是有些人面试的时候感觉不错,但入职以后不怎么样;有些人面试时感觉很一般,但入职以后能力却很出众。


具体到面试中对底层细节的考察,说实在的,这些年接触过无数的技术人员,从大牛到小白都有,但是他们没有任何一个人对底层细节都很熟悉。最多也就是对底层的一些原理很清楚,以及某一块特别熟悉。


其实想想也是,那么庞大的代码量,如果都要熟悉,没有个三五年不可能做到都熟练,况且底层也在不断更新换代,而且你在工作中还有更多的框架新技术需要掌握,所以不可能拿出那么多时间专研底层。


所以在面试中,如果你碰到了刚好是你熟悉的那块,回答出来当然没问题,如果是你不熟悉的部分,那些细节问题自然回答不上来。除非,你能想上述小A那样狠背半年面试题。


小结:面试存在很大的偶然性,在那么庞大的技术体系面前,谁也不可能处处精通,仅仅根据底层或者某几个技术点,并不能完全衡量出来面试人员的技术能力。这些年我面试过的人没有一千也有八百,单纯因为技术的落选的,不足5%。


这几年整个行业都不景气,大量公司倒闭或裁员,这也就增加了岗位的稀缺性,常常出现一个岗位几十人候选的情况,因此,一些企业也开始增加入职的门槛,面试时会出现一些刁钻,偏僻的问题也可以理解。

作为求职者,在这种大环境下只能调整好自己的心态,多学习增加自己的竞争力,除此之外没有更好的办法了。当然,也可以想办法让自己不再是一个求职者。


群龙无咎


请问一下什么最底层的问题,你想让别人问你什么问题。一份工作给你谈人生估计很少,他们招人也是找一个靠谱合适的人选不是随便抓个人就可以的。

一般面试官无非问的最多的就是为何要从上一个公司离职:这个问题应该也是他们看中的因为要是你来这里,肯定也会遇到上面公司的问题《比如工资低,跟公司的同事关系不好,或者没有什么前景》。

肯定也会问你希望工资多少这个问题就看你怎么回答。既然是有面试官的工作说明有一点技术含量的工作,如果你一来直接叫你去上班你也不敢去!


视觉小福


作为一个经常面试别人的面试官,我也经常问别人一些底层原理,一般人都停留在会用的层面,如果能答出一些底层原理问题,说明这个人平时喜欢研究技术的。


java追梦人


java开发吧,头条有个BAT今年金三银四的面试题,HashMap原理,数据库索引原理啥的,那套题全部刷一遍,多准备准备,今年的面试基本就是问的这些,刷完面试,然后总结下,就能面上


特斯拉中国区总监


应该是今年互联网寒冬影响的,我老公培训公司教c++,也教过ios,以前ios火的时候学生很好找工作,只要你懂皮毛就行,后来不火了,找工作都要会内核,我做测试,今年找工作都要会自动化,可惜我不是很会


正在放弃ing


大多数it或软件开发的机构、公司,他们并不清楚要找什么样水平的人。临时抓的技术人员也好、项目组用人单位的负责人也好,往往以不超越自己的技术为标准,作为选择人才的标准。应聘者上网找“攻略”做应试准备,招聘者照样找“攻略”准备考题。应聘者内心就把“攻略”当基础,招聘人则把“攻略”当准绳。“那些”真的是基础吗?别逗了!


井151276607


平常开发过程中可能不需要了解太多的底层,但如果是性能调优以及bug排查,不了解底层你可能不知从何下手


Cheers


很简单啊,专业度测试。如果候选人连底层原理问题都不过关,你指望他专业能力有多强?


分享到:


相關文章: