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

2023-02-24 11:01:41 +08:00
 ThanksSirAlex
你们过往的工作里面真的有什么实际项目因为读了源代码,或者理解了这些项目的底层实现收到启发,做出了贡献的吗
11837 次点击
所在节点    职场话题
106 条回复
Leonard
2023-02-24 12:18:35 +08:00
说白了就是卷,简历太多了,如果只问工作需要的技能,那满足的人太多了。
那怎么决定要招谁呢?问点更深的东西,即使我不太用得到,但是知道总比不知道强,反正我也是花这么多钱,尽量招知道得多一些的人,万一以后用到了呢?
bk201
2023-02-24 12:23:51 +08:00
有些源码里涉及到一些思想,其实在一些场景是公通的,如果你没有读过,理解过,可能有些问题你就解决不了,或者走错方向
chenshun00
2023-02-24 12:39:13 +08:00
@silencil 哎,JVM 有啥问的,我是真不懂,无非就是个 Xmx 和 Xms ,MaxMetaSpaceSize ,这些有点经验的都知道,但是真的去说,真的是一言难尽呀。 :(
ThanksSirAlex
2023-02-24 12:43:10 +08:00
@bk201 请举例,读了什么源码受到了什么启发,解决了你什么问题
Kyuzo
2023-02-24 12:46:30 +08:00
源码、算法题什么的都是筛选人的手段罢了,跟实际工作中用不用得上没啥关系
pi1ot
2023-02-24 12:53:16 +08:00
如果基本原理都不了解,说明对当前工作没有好奇心和钻研精神,不适合从事研发类岗位。
实际上多年前有个工作多年的老程序员也在面试时质问过我差不多的问题,出于避免刺激对方的考虑,我没有说这就是你工作十多年还在年年换工作做最初级工作的原因。
echoless
2023-02-24 13:04:31 +08:00
@ThanksSirAlex 我不建议面试官问某个特定技术特定源码 但是读一些源码能够快速学习语言 对我来讲从语言入门到熟练 主要是好的源码代码写的都不错 我也不建议什么都去读源码
ppking
2023-02-24 13:08:16 +08:00
就表面上那些东西,说实话已经问烂了,实在是没什么好问的了,根本找不到候选人的区分度。说实话公司那些工作,我感觉可能 n 个候选人谁来都能干,但是具体谁来,总得问点能区分出来的东西,总不能掷骰子吧。
dc25b
2023-02-24 13:11:39 +08:00
其实这楼里说那么多,而我觉得真实情况就是一句话:人多,单纯的筛选机制罢了。
你来土澳,会干活就有人要,也没人问你算法题八股文。除了那几个大厂之外,面试聊聊做过的项目确认一下工作经历就要了。就这要求还要大把大把从印度东南亚捞人,本地都招不到。
Biggoldfish
2023-02-24 13:12:23 +08:00
就是八股文啊 日常工作有几次需要你去改基础 library 的代码的
shyangs
2023-02-24 13:23:22 +08:00
其實問到「反轉二元樹」就已經能刷掉 開發 Homebrew 的作者 Max Howell 了.

問更難或考更難,就只是喜歡炫技的工程師,當上面試官爽一把罷了.

讓人全考 0 分的考卷和全考 100 分的考卷鑑別度是一樣的,無效測試.
wetalk
2023-02-24 13:23:57 +08:00
@dc25b 土澳 remote 也不错
JamesChen
2023-02-24 13:29:55 +08:00
我带着开源项目去面试,照样也会被人问各种原理+八股文。我估计整个中国也有没多少面试官的个人开源项目能跟我的比,但我去面试一样得接受规格化的技术“八股文”面试。那既然别人都有比较大的开源项目了,这种“八股文”水平的技术面试除了测试服从性(比如专问偏门问题来进行打压),又能有什么意义?

其中一个原因就是面试官的技术格局就那么低,只能看到那些问题,遇到什么水平的程序员都只能照着那些“模板题”去问。就像我们听过的“成为父母之前,也应该通过对应的资格考试”,很多面试官压根没能力面试别人,直接就被推上来。

至于,一些老哥说程序员大概都应该读过那些常用技术框架的源码。这个观点,我一半认同。是应该读过,但不用“记过”(那么多开源项目可以读,除了为了面试,谁天天没事去背它们)。但问题在于为什么在面试的时候,面试官需要我们把这些原理背出来?讲真,开源界的大部分项目(不管有没有名气的)都没啥技术含量,合格的程序员花点时间(几分钟、几小时)看看就能把原理摸透了,然后在需要的时候现学现做才是程序员最最起码的基本功。

国内的面试大风气不行,大部分的面试官水平不行,导致劣币驱逐良币(能力再强,不被面经题啥的,照样会被低水平面试官干掉)。
icyalala
2023-02-24 13:32:12 +08:00
我读过很多代码,也写过开源项目和博客,甚至现在不少所讲所谓底层原理的文章都参考了我的写的内容。

我不太喜欢面试别人,我觉得每个人在技术方面都有擅长和不擅长的,短时间的面试很难全面了解。所以如果我有时问到一些深入的技术细节,无非只是想要看一下对方在这个方向的技术深度,并不是说答不上来不给过。
HAYWAEL
2023-02-24 13:33:51 +08:00
只是筛选而已,一般来说 出了问题之后才会去看源码
tool2d
2023-02-24 13:37:05 +08:00
我以前是写 PC 客户端的,那时候的前端和现在完全不一样,出 BUG 只能迎着头皮去翻源码看。
Mithril
2023-02-24 13:41:55 +08:00
有很多。

比如有个项目做 JNI ,内存占用超大。结果是因为 JVM 自己内部留了拷贝。

其实很多都只是个方向问题,你知道有这么个东西,虽然不知道细节,但出了问题知道往这上面找就行,你要是不知道那就只能乱改了。甚至更多的是,你知道这里可能出问题,最开始就不会往这方向上走。

"善战者无赫赫之功"

一个好的 IT ,都没什么存在感,不会让你天天出问题去找他。一个好的架构 /开发,也不会等着坑出了问题才知道填。

但其实就面试而言,问底层和细节更多的是看你对技术有没有兴趣。你说你擅长性能调优,从 Java 到 C++都做过,结果连个基本的内存回收都说不明白,这还觉得面试官在问你造火箭吗?

明明是你自己在简历上说你能造火箭的啊。
jishu541464750
2023-02-24 13:50:32 +08:00
你可以这么想,如果不这么问的话,早就有其他人进来了,轮不到你😂
zackzergzeng
2023-02-24 14:08:38 +08:00
有时会照着别人的源码抄,或者 debug 源码看自己的问题
blackkkk
2023-02-24 14:09:21 +08:00
不过是评级筛人手段罢了,问技术原理只是其中之一,还有自己做过的项目,业务,用到技术,啥技术解决啥问题呢。

虽然绝大公司绝大部分工作都是 curd ,但是真遇到问题的时候,多思考,多学习的人总比只会 curd 的是更优选。

明明吃这碗饭的,天天写 java 的 curd 好多年,连 jvm 是什么,里边都有啥都懒得了解的人,这种人不多写 bug 就阿弥陀佛了,写复杂业务天天 oom 的,接口稍微复杂点就 500 的,还得测试和技术负责跟在后边天天擦屁股。

有更优选更简单便捷快速在面试者本身领域的学习,拓展,思维能力的考核方式,还要从别人从其他方面考核了解吗。

当然,面试从来都是双向的,你也可以问公司有没有学习啊,培训啊,技术分享啊等等,只会问原理,而工作只是 curd ,加班的这种公司,也可以选择不去啊。

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

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

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

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

© 2021 V2EX