面试了一个精通Go语言的人…(上)

(故事内容纯属虚构)

如果不了解背景的话可以去看前几篇文章。

在简历上写了“精通 C++”后……
作为一名程序员,我这属于什么水平?

我知道你肯定会想,这家伙怎么又来吹牛逼了。

讲道理这一次我还真不是吹牛逼,虽然我确实在公司里面搞了一个叫吹牛逼的组织。不过也只是我们业余追求geek精神的地方,不是拿来瞎白话的。

前几天HR告诉我,我们有一个精通Go语言的人前来面试,其他人对Go不是太熟,你既然了解那么多编程技术栈,不如你去吧。于是我就被赶鸭子上架成了 面试官 。

周四下午就开始了这场神奇的面试。

一阵寒暄之后我们就开始了步入主题,谈论技术相关的东西。

我看他所有项目都在用PHP,好奇为什么会放弃PHP选择Go。

“因为之前在某个网站上看到有人写的一个什么劝退指南之类的东西。

“加上之前了解过贵司对技术细节考量比较多,Go这种性冷淡风的语言很少能找出来什么考点的。

“更何况这样就不用再纠结怎么用模版实现编译期堆排序了。

“再加上你们公司也是Go的主要贡献者,所以会有一些加分吧。”

Bravo!我深深佩服他的这股机智。但这好像并不能说明Go比PHP好吧?

“谁说Go比PHP好了?”

这真是让我满意的答案。不过说大话谁都会,培神还说他精通C++呢,结果还不是技术面被虐了。所以我决定还是考察一下他的动手能力。

“你既然知道我司注重技术细节,肯定也知道,我司更在意的是你对技术及其实现的理解。既然你说精通Go,肯定知道他在实现基础编程工具上的能力。

“前段时间不是还有人 用Go实现了JVM 吗?当然出于时间原因,我们就不特别让你实现一个完整的编译器或者运行时了,只要有一些简单的增强就好。

“刚你不是说Go的特性不够多我找不到难点考察你吗?那你就给他加上枚举吧。”

他沉默半晌,说,“在动手之前我想跟你确认一个问题,至少已经困扰我很久了。”

“枚举到底应该是值类型还是引用类型?”