现在 GO 语言面试这么难吗?

2022 年 3 月 22 日
 dokimaster

下午面了一个杭州的电话面试,我没有 go 工作经验,只有 go 项目经验,面试前已经讲过了,面试官问我,top,ls 的实现原理?我以为这就完了,又接着问我 sp 寄存器,x86 和 arm64 为什么有区别,寄存器怎么实现的?这人说什么话之前都会说一个,那我问你一个简单的问题把,最后他问了个面向对象是什么,我就说面向对象把事物对象化,对象有自己的属性和行为,也就是方法。他说,我看你是完全不懂啊,你不适合,就挂电话退微信群了。

17214 次点击
所在节点    Go 编程语言
140 条回复
dokimaster
2022 年 3 月 23 日
@est 我当时没有去搜索答案,因为是电话面试,关于这个我只是想表达一下,昨天他问的几个问题,我觉得是在故意的在为难我,因为面试上面写的 sql 相关的一个也没问,go 相关的 channel,context,goroutine 也是没有的。唯一稍微沾点边的可能是最后问我,什么是面向对象?
lenmore
2022 年 3 月 23 日
看 JD ,真不知道问这么底层做啥。

说来也惭愧啊,做了这么多年运维,从没想过 top ls 的实现原理……
dokimaster
2022 年 3 月 23 日
@lenmore 一样,我只知道 top 的大概原理。让我具体去说是哪个文件,肯定是不行的。
rb6221
2022 年 3 月 23 日
这跟 go 有啥关系,很多岗位都是这样的,面核入拧
至于为什么这么卷,我想问你应聘 go 的目的是为了不卷吗,如果是那你失算了,如果不是那你应该适应这种情况。
回到你这个事情上面来,这个事情能看出的不是 go 很难,只有这个公司有问题。再进一步也就只有招聘市场很卷。跟 go 语言关系不大
BrettD
2022 年 3 月 23 日
@dokimaster 可以去试着问一下,但是不用期望公司会回复你。我以前面试也遇到过自我感觉回答良好,但是最后被拒的情况,也是很想知道到底哪里答错了,但是我面过的绝大多数公司在发完拒信后连 HR 都不会再搭理应试者了。看开一点,继续准备下一家面试就好了。
bigbyto
2022 年 3 月 23 日
看了下附件,这个面试官真的是个纯 sb ,公司有这种人简直就是灾难
dokimaster
2022 年 3 月 23 日
@BrettD 嗯,HR,人还是蛮好的,我能感觉出来很热情的,面试的时候刚开始我就感觉出来这个面试官不太耐烦,从这个面试官刚刚回答 HR 的态度,就已经看出来,他不可能回答我的,我认为他就是故意为难我的,下次面试不准备电话面试了。电话面试,当场追问对峙的机会都没有,完全就是看遇到的面试官是否有责任心,下次还是走现场面试了。
hahadaxigua834
2022 年 3 月 23 日
哈咯,看上海机会吗
我这边是初创公司主要云计算、高性能计算相关的
wlb ,不打卡,20 ~ 30K
dokimaster
2022 年 3 月 23 日
@hahadaxigua834 工资太高了,我不配
FrankHB
2022 年 3 月 23 日
“x86 和 arm64 为什么有区别”?
没问你具体啥区别么。那答案简单——“废话,又不是直接抄的,还是说你认为 ISA 设计随便瞎蒙就英雄所见略同了?”

面向对象这个你是跑偏了,原版( Alan Kay )吹的那个行为是通过消息交互体现的,对象的数据和行为构成接口,这时候还没类什么事。
而所谓的方法原本是具名的消息关联的原语,但现在更多的是特指基于类的面向对象风格里从 Simula 挪移过来的杂交概念,即从属于类的、跟随类的接口设计确定签名的一种过程(procedure) 。
(虽然我也不信一般没对考古特别有兴趣的面试官拎得清楚这些。)
hahadaxigua834
2022 年 3 月 23 日
@dokimaster 那你可以要低点
dokimaster
2022 年 3 月 23 日
@bigbyto 嗯,我也是这样想的了,根据楼中老哥的建议,面试失败是好事情,避免了跟这种人共事。
dokimaster
2022 年 3 月 23 日
@FrankHB 架构区别的哪里,他问的很细,我就讲了一些大致的皮毛的,关于大佬讲的下面的,之前确实没有接触过,谢谢大佬让我涨见识了。
dokimaster
2022 年 3 月 23 日
@hahadaxigua834 好的,我加你了。
BrettD
2022 年 3 月 23 日
@FrankHB 说的有道理,我从附件看感觉面试官可能期待听到顶层概念的阐述,或者是从顶向下的方式表达,但是楼主答的是细枝末节,让面试官觉得答非所问
JimmyRogue
2022 年 3 月 23 日
楼主别太在意,很多面试官面试别人,并不是为了招人,而是为了找优越感。

你应该庆幸没有去他手下干活。
dokimaster
2022 年 3 月 23 日
@liangtao927190 嗯,现在已经完全认同这种想法了。确实应该庆幸。
FrankHB
2022 年 3 月 23 日
@Cloutain 真实世界的寄存器种类就多了去了,不说物理结构,光是 CPU core 内架构以下你就得区分物理寄存器文件( PRF ,或者叫寄存器堆)、非架构寄存器(包括 MSR 、隐含的寄存器栈以及架构不可见的其它内部实现)、(可能重命名的)架构寄存器(里面还有通用 /非通用寄存器)、ISA-level ABI 约定的名义寄存器(比如这里的 sp )等等一大坨玩意儿,以及落实在 HDL 代码(主要是 RTL )上的那坨……然后其它设备内或者和 CPU core 通信的还有用到寄存器(比如 I/O 寄存器)……ISA 以上,高级语言翻译的低级 IR 也有叫 RTL 的,也有其它 IR 多糊出来的虚拟寄存器,还有 VM 的架构寄存器、高级语言过程约定的名义寄存器等等。
所以遇到这种笼统问题,先反问面试官想知道个啥?

如果专指物理实现,CPU 里的笼统就是时钟信号控制的数字逻辑电路,具体也有不同方式。PRF 的常用的是 SRAM (别的像触发器面积比较吃亏),至于 SRAM 怎么实现也不止一种……懒得套娃了。

@dokimaster ARM 的官方 ABI 有明确约定 SP ( r13 的别名),并且逻辑意义上硬件做得比 x86 还多(架构上有更多限制),汇编器都直接认识 sp ,所以你这个是不懂强答露马脚了。
这类问题跟面向对象的坑和误导流毒到处都是不一样,应该很容易就能找到权威参考。事后你没确认过自己是不是记错了?
drackzy
2022 年 3 月 23 日
小公司面试容易出偏题、怪题,大厂面试问的反而通用些。不必太在意。
dokimaster
2022 年 3 月 23 日
@FrankHB 第一个确实是回答错了,刚刚回顾了下,我当时想回答的应该是 bp 而非 sp,当时我应该要回答的是 arm 只用了 sp 寄存,没有 bp,而非是没有 sp,bp 和 sp 记岔了。因为汇编确实接触的少,这个相关也是好久之前看到的,

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

https://v2ex.ih06.com/t/842175

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

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

© 2021 V2EX