为什么针对编程工作的面试问题如此困难?

我不得不说我讨厌编程面试问题。为什么他们这么难?

我不得不说我讨厌编程面试问题。为什么他们这么难?

如果您曾经使用过HackerRank之类的工具或阅读过编码面试问题书,那么您可能会同意我的看法。是的,整个行业都围绕着编码面试和为他们做准备。

我讨厌那些。在互联网上,并非所有人都同意我的看法。似乎许多人希望继续这种“传统”。

几年前,我认为我在合同/自由职业方面已经足够了,并且经历了许多不同公司的招聘过程。

那是在我意识到自己基本上是失业的,但这是另一个故事。通过失业,我的意思是我只能为我以外的任何人工作,以建立自己的产品和资产,而不是建立别人的产品和资产。

我申请的公司中,大约有一半是通过一个实际的“带回家”项目进行初步筛选的。

没有人要求我实现FizzBuzz或其他通常被称为“必需知识”的算法。

我们可能会误以为每个招聘过程都像您在Google所经历的那样。我读到有人花一年时间准备参加Google面试,但申请时遭到拒绝。伤心。

有无数的中小型公司从未雇用过像算法和数据结构这样的主题的严格而无菌的技术面试。在白板上。没有谷歌和(天哪!)堆栈溢出。

当然,很高兴能完全了解这些主题,我认为您确实应该。

我得到了潜在的想法:问题基本上都是相同的,只有10到20种变化。实现气泡排序。好的,我可以做到。他们只想听听您对此主题的推理。您如何处理它。但实际上,这是在解释您对所记住的问题的记忆。如果候选人是应届毕业生,他们甚至可能会记住它。如果候选人是具有5年实际工作经验的人,他们可能不会记住这一点。

FizzBuzz会更合理。它不是在学校教授的,问题可以在3分钟内得到解释,您可以对此进行推理。

但是,如果我要组织公司招聘,也许是作为首席技术官,我将永远不会把这个人放在白板前,并要求他们实施FizzBuzz。为什么?首先,它是完全没有用的-您永远不必在现实世界中实现它。

第二,申请人压力很大。在这种情况下,许多人表现不佳。我包括在内。我可能会炫耀自己价值的10%,只是因为我在这种陌生的环境中无法正常工作。

DHH(David Heinemeier Hansson,超级流行的Ruby on Rails框架的创建者)曾经有人说:“我不会在白板上写气泡排序”

这太糟糕了,也许只擅长对申请人的神经进行压力测试。这与测试为公司提供价值的能力完全不同,例如,如果我要雇用程序员,则要进行编程。

您在传统的白板面试中无法解决的问题与程序员的实际工作没有任何关系。

我必须考虑一下我上一次花时间决定使用哪种算法,更不用说实现一个全新的算法了。那么,为什么人们不断被问到这些事情呢?

这是一条推文,表明大公司也在朝着更好的方向发展:

Tech Wiki Online!