想问问那些面试揪着底层实现原理的面试官

2023-02-24 11:01:41 +08:00
 ThanksSirAlex
你们过往的工作里面真的有什么实际项目因为读了源代码,或者理解了这些项目的底层实现收到启发,做出了贡献的吗
10921 次点击
所在节点    职场话题
106 条回复
coderxy
2023-02-24 11:10:55 +08:00
有读源码,因为有遇到过一些疑难杂症最后都是看源码或者看底层原理才解决的。 没有做贡献,还没到那个高度。

业务开发,3 年以上的其实都没啥好问的,基本的业务需求都能完成, 问原理就是看一个人有没有自主学习意识,还有后期有没有可能在技术上更进一步(即你这个人有没有潜力)。
anonymousar
2023-02-24 11:12:23 +08:00
只是一种选拔机制。答的上来的人说明他起码愿意花些时间去了解这些。

如果面试就问个快排 那所有面试的人都过了 咋收人呢? 到时候直接用学历来刷 不满意的人更多了。
ChefIsAwesome
2023-02-24 11:14:33 +08:00
面试造火箭,工作拧螺丝这话没听过吗。
还有面试官这个看着高大上的词能流行起来就很莫名其妙。都是平时干活干一半,被人事叫出来给人面试的普通打工人。
你想太多了,缺人干活的不问这些东西。接着面试就好了。
yosoroAida
2023-02-24 11:15:06 +08:00
启发是有得(起码反思自己以前写的代码为啥不用设计模式),但是贡献远达不到
4771314
2023-02-24 11:23:17 +08:00
其实就和考试一样,总有一些有难度的问题,方便把人分成 369 等供人选择,只不过以前是老师、高校,现在是企业
eironn
2023-02-24 11:24:46 +08:00
@coderxy 你也是个 rapper
cs1024
2023-02-24 11:24:51 +08:00
我做机器学习算法相关的,

很多人连某某算法的底层计算原理都不知道,调个包就往上套,然后调调超参数,
殊不知这个算法和当前业务场景在某些细节上根本就不匹配,很容易犯方向性的错误。
然后结果不好也无法分析问题到底出在哪。
nmap
2023-02-24 11:25:05 +08:00
可能你的层次接触不到这些吧
kaedeair
2023-02-24 11:30:28 +08:00
官方文档写的不全面只能翻源码;遇到的问题多了才会注重这方面,也是一种经验方面的考核
YadongZhang
2023-02-24 11:39:20 +08:00
没有谁对谁错,只是双方不合适,换下一家
NewYear
2023-02-24 11:39:30 +08:00
假设。

你是面试官。
面对一群人,如何筛选掉水货。
面对筛选后,至少是一般水平的人员,如何进一步挑选出你最想要的人。

另外,HR 会问你,这人的优势是啥,咱们为什么选他,咱们为什么给他这个薪水?

我的方法是:各维度都问一些稍微不那么表面的问题,去了解这个人在哪些方面是有深入了解的知识。
也会关注此人的性格、态度。

最后得出一个综合性的结论,谁最适合这个岗位,我最想要谁。
另外,会有些各方面表现很良好的人出现,但是未必适合这个岗位,要搞清楚这个岗位的定位是什么。

职场的第一层是做事,第二层管理、改善自己相关的工作,第三层从更高维度去审视、规划整个小组 /部门的工作,但没有人是全能的。
所以如果面试官问的话题不对,在主动提问环节你也可以发表自己的意见,提一下自己的优势。

你放心,面试官可能不太多面试经验,但是不傻。
dlmy
2023-02-24 11:46:59 +08:00
我读了较多的源码,也学到了很多东西,并且提过几个 PR ,但是在工作之中,对屎山代码也毫无办法。

面试造火箭,进去 CRUD ,关于看源码 我个人觉得:
1. 你在工作中确实是有需要的那一个部分,你就去看那一个部分的源码即可(哪一块遇到问题了,就深入去阅读那一块的源码,以此来解决问题);
2. 99% 的情况,你不需长篇大论的去看源码,因为那需要花费你很多时间,而且你不用的话,基本上是没什么价值的。

公司都是希望用最少的投入,得到最大的产出。所以会控制成本,招一些应届生跟外包来参与项目;而且需求多变,时间又紧急,都是要求我们尽快出东西来抢占市场;久而久之,代码就变成屎山了,你身上所学的东西也很难应用进去了(每天都有着开不完的会,干不完的活,做的需求没有哪一个不是紧急的,有些甚至上午出需求,下午就要上线,很让人绝望)。
startisan
2023-02-24 11:49:16 +08:00
我一般会问这种问题是因为对方简历上写了精通 JAVA ,熟悉 HashMap 原理之类的。
echoless
2023-02-24 11:56:02 +08:00
@anonymousar 卧槽 快排马上把我刷掉了
silencil
2023-02-24 11:57:51 +08:00
我喜欢问原理的,因为我会去学习,离谱的是问 API 的。三年经验被问数组遍历有几种方式、容器之间的区别;总结这几天的面试:1. 问项目的,问在项目中担任什么角色类似话题,不涉及任何技术。2. 问基础以及 API 的,如上,笔试手写 SQL ; 3. 问基础八股文( hasscode 和 equals 区别),这种没答好是我的问题,有点模糊了。4. 问原理的,问 AQS 原理。
5. 问场景设计题的,百万数据库表更新这种。总结下来 4 这方面我属于答的最好的,其他的基础的问的不深的也很好答,少数问偏门 API 的答不上来;场景设计题没学过,提出自己的想法面试官不一定认可;据我观察,这次的面试和 21 年一年经验的时候是反着来的,应届和一年经验的时候问的最多的是 jvm 、中间件原理、缓存设计、架构设计,现在三年反过来问我 api ,我个人推测是好的公司简历收不过来,现在能叫我去面试的都是小公司或者说没技术追求的公司,可能面试官几年都没跳过了,净问些这,最离谱的是对着面试题跳跃性问的,上一题还在问触发器,下一个问题直接问锁消除是什么。
silencil
2023-02-24 11:58:10 +08:00
@silencil list 遍历,口误。
wangpugod2003
2023-02-24 11:59:16 +08:00
总好过问你爸是谁吧,知足了。
echoless
2023-02-24 12:05:01 +08:00
不要纠结 要么你把上次问道的学一下 要么就不去这类的公司
silencil
2023-02-24 12:05:09 +08:00
说说我面三年的话我会怎么面:1. 从项目入手,首先看架构,例如微服务的话,那把各个微服务组件你怎么应用的问一遍,主要考察知不知道为什么要这么用,而不是盲目的复制粘贴代码完成项目。2. 中间件问问使用上的一些需要考虑的东西,这个虽然也是八股文,但只要有这个概念再做项目的时候肯定会优于没有这个边界考虑的人。3. 数据库问一问,主要是索引原理、索引失效等等,可以看出一个人能不能写出好的 SQL 。这三点没大问题就是一个合格的 API 小能手了,希望筛选出更优秀的人,那这时候就会去问 JVM 、JUC 、spring 三级缓存原理这些,考察的是同学平时有没有主动学习的习惯。面试中能更多的将涉及到操作系统、网络方面的候选人也是加分项。
ThanksSirAlex
2023-02-24 12:08:22 +08:00
@nmap 来来来,不要光说,你读源码解决了你什么层次的问题,请用 STAR 法则描述一下

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/918788

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX