FizzBu​​zz 2.0:程序员的实用问题



去年,超过100,000位程序员完成了三字节测验。下面的统计数据表明,五个选择题可以轻易地将真正的软件工程师与其他软件区分开(通过机器学习根据预先标记为“成功”和“不成功”的程序员(大约每人)选择问题。)

就像臭名昭著的Fizz Buzz测试十年前,这些问题对于任何专业从事软件开发但通常使其他人感到困惑的人来说都是微不足道的。以下问题是我们测试中的前五个问题,而98%的成功工程师正确回答了至少五个问题中的四个。我敢肯定,如果您是进行面试的工程师经理,那么您将不会向低于此级别的任何人提出要约。

结果


在查看问题之前,以下是根据正确答案的数量得出的工程师成功的数据:



我们称一个“成功”程序员,他至少已收到一个与其个人喜好相匹配的公司聘书。统计归一化为5/5组。能够正确回答4或5个问题的工程师团队共同构成了该平台所有成功用户的98%。相反,3/5或更低表示几乎可以肯定的失败。

问题


以下是最受欢迎的“通用”测验中的前五个问题。如果您参加我们针对ML,数据科学,DevOps,前端,iOS或Android的专业测试之一,那么还会有其他问题,但是原理是相同的。

问题1


哪个SQL语句从表中检索数据?

选择正确的答案:

○查找
○阅读
○获取
○选择

这个问题基本上是在问:“您以前见过SQL查询吗?” 80%的回答正确

问题2


添加的代码缺少行。



选择正确的答案:

max_num += num
max_num += 1
num = max_num
max_num = num

基本命令式逻辑。正确回答76%

如果您担心我们在Python语法中提出的要求,那么这只是本示例中的便捷伪代码,即使他从未见过Python,任何程序员都可以选择正确的答案。

问题3


为什么使用缓存来提高读取性能?

选择正确的答案:

○加快第二和后续读取
速度
○加快偶数读取速度○加快奇数读取
速度○加快第一读取速度

缓存在许多情况下出现,以至于它基本上是计算机科学的普遍概念,并且在日常软件开发中非常实用。89%回答正确哇!五分之一最简单的问题。

问题4


当用户查看网站上的多个页面时,以下哪一项用于维护登录的会话?

选择正确的答案:

○HTTP cookie
○HTTP保持活动状态
○全局Javascript对象
○WebSockets

“您知道网站的运作方式吗?” 80%的回答正确。

问题5


执行以下代码后z的值是什么?



选择正确的答案:

'foo'
'baz'
undefined
'bar'

“你能读代码吗?” 这里使用JavaScript语法表示的字典/哈希/关联数组/映射的概念对于曾经使用过Basic以外的任何东西的人都是熟悉的。

只有62%的人回答正确这是迄今为止五个问题中最困难的一个。就个人而言,令我感到惊讶的是,这个问题比第2个问题更为复杂,但是获得了具有统计学意义的结果(p <0.001)。如果您有任何想法为什么我们会因此失去这么多人,请告诉我们。

数据


去年通过测试的100,000多名软件工程师中,实际测验结果的分布如下:



令人惊讶的是,只有42%的参与者正确回答了所有问题前67%的人正确回答了至少四个问题(而这67%的人占了我们平台上成功用户的98%)。

这五个问题中每个问题的成功都不是独立的因素。如果仅将单个问题的概率相乘,您将得到27%,但实际上有42%回答了所有问题。如果每个问题都是一个独立的随机变量,这将比预期多一倍半。实际上,将所有问题都视为独立问题的简单模型意味着峰值为4/5,并且3/5像元中的权重比我们在真实数据中看到的还要大:



评价自己


如果您在没有任何帮助的情况下正确回答了以上五个问题中的至少四个,则说明您已通过FizzBu​​zz 2.0,并且可能应该尝试三字节测试(如果结果为3/5或更低,那么我们不太可能为您提供任何帮助)

通过测试后,您将看到您的结果,并且可以创建一个配置文件,以便技术公司在有与您的偏好相匹配的机会时与您联系,例如“公司规模500+”,“仅远程工作”,“包容性工作场所” ,“最低工资X”,“办公室允许的宠物”,等等。默认情况下,阻止当前雇主查看您的个人资料。

All Articles