如何用最佳解决方案和有效代码回答面试中的所有问题,说某人“在技术上不在”

想象一下,我想评估一下您的数学技能,于是我开始在45分钟内一个又一个地问数学问题。 您的所有问题都正确。

之后,我给你D级。

怎么可能?!? 您一切都正确! 那应该是100%-显然是A +! 而且这些都是数学问题,只是对有错,所以这不像是正确的摆动空间。

是的,是的,完全正确。 但是我的成绩不是基于正确的百分比。 我的成绩反映了我对您的数学技能的看法。

我问您的唯一问题是3 +4。很高兴您最终知道答案是7,但这不应该花45分钟的时间来解决。 我给你数学上的D-。 这可能太慷慨了。

编程采访也是如此。

面试过程中,许多人的确会找到正确,最佳的解决方案。 实际上,在大多数时候甚至可能都是这样。 但是,这花了他们太多时间,他们需要太多帮助。

一个更好的候选人本可以更快,更少的帮助下解决问题,甚至可能会遇到其他问题。

如果不确切知道“技术上不存在”一词的含义,很难具体回答。 我会根据您其余的问题以及我在Quora上看到的有关面试的其他问题,给您一些思考的事项。

我在这里看到的最大误解(并且我认为这是来自应届毕业生)是作为面试官,我在这里为您提供有关数据结构和算法以及晦涩的编程语言语法的某种测试或测验。 如果您回答10分之10,则应该担任CTO。 10人中有9人是高级程序员; 10人中有8人是中级程序员,依此类推。 这是完全错误的。 我不在那里测试你。 我在那里评估你。

您说您用最佳解决方案和有效代码回答了面试中的所有问题。 那很棒。 正如其他人所问,这花了您很长时间吗? 如果是这样,则可能是您了解某些内容,但并不流利。 作为一名面试官,我也在寻找其他东西。 您是否对解决方案太快了? 并不是说快是一个问题,但是它会发出警告信号,也许您刚刚记住了很多算法。 如果是这样,我不在乎。 我想看看您如何解决编程问题。 烂记在编程技术列表中很少(但并非完全没用🙂)您能回答有关所编写代码的问题吗? 您能处理各种问题吗?

接下来要考虑的是,我在这里听起来有点混蛋–谁说您回答了“使用最佳解决方案和有效代码”的所有问题? 我曾经有一位候选人为我给他的问题写了“解决方案”。 在我们尝试遍历代码时,我说代码很难遵循,因此很难理解为什么它是正确的。 然后,他继续与我争论了10分钟,该代码是正确的,而不是使代码更清晰。 另外,请记住,“工作代码”的门槛很低。 我有很多候选人都设法获得了有效的代码,但后来陷入困境。 他们无法弄清楚如何使代码更清晰或进行简单的更改。

可能是面试官犯了一个错误。 这就是为什么采访循环中会有多个人的原因。 在我以前工作过的地方,如果其他面试很强,那么一次面试就不可能使候选人陷入困境。 我们会不胜其烦,早餐不好或其他。 另一方面,不好的面试如果没有强有力的替代面试,通常会导致不雇用的决定。

最后,也许您在某家怪异的公司进行了面试,该公司对数据结构和算法的候选者进行评分,并模糊了编程语言的语法。 也许您只回答了10个问题,而他们想要11个问题。如果是这样,请数一数您的祝福。

当我们面试某人时,我们所知道的大多数答案和提出问题的具体方法已经为我们所熟知,并且不太在乎候选人用于解决同一问题的不同方法。 这样一来,即使候选人回答了所有问题,但面试官不会完全满意您的回答,因为他没有得到他打算得到的答案/方法。

这可能是人们说候选人“在技术上不在那里”的原因之一,这是完全错误的。

示例:如果面试官试图通过询问3 + 4来测试您的数学技能,他知道这是7。候选人花了45分钟回答了问题,但是还解释了如何在不同的系统(例如计算机)(如二进制)中进行计算,ALU之类的东西,因为他具有CS背景。 然后,我认为尽管他是正确的并回答了问题,但面试官只打算听7个。这样他就可以称应聘者“在技术上不存在”,这是错误的。

因此,我认为一个更好的候选人不会是能快速回答问题的人。 但是不要放弃,尝试所有可能的方法以获得正确答案的人。

奇怪的是,您被告知这些面试的结果是很奇怪的。 我认识的所有雇主都竭尽全力避免提供有关候选人业绩的任何细节。 有很多原因不向候选人透露他们的表现。 它承担责任,留下更多选择余地,这是不专业的。 此外,该决定通常是基于多次采访做出的,通常很难以如此清晰的术语总结多次采访的结果。

无论如何,让我们以面值来回答您的问题。 显然, 认为自己的表现与面试官认为自己的表现不匹配。 我可以推测发生了什么,但是当时我不在那……我怎么知道谁是对的?

也许您做得不如您想像的好。 您可能已经准确地提供了您认为合适的答案,但访问员可能一直期望您的表现不同。 他们可能一直期望您更快,并且只能向您提出一系列疑问中的第一个问题,并且他们相信大多数候选人会在此过程中走得更远。 他们可能一直希望您以更准确的术语来谈论这个问题。 在讨论您的解决方案时,您可能会无意间显示出缺点或缺乏经验(即,他们根据他们未明确要求的答案对您进行评估-我在面试求职者时总是这样做)。

我不知道 我为您感到难过:我知道这很令人沮丧。 没有人喜欢拒绝。

最后,您的面试官也可能不如您。 如果是这样,您确定要与他们合作吗?

该答案仅反映了我的个人观点,并不一定代表我的任何雇主(现任或前任)的政策。

您可以说,当他们在以前的工作中所做的个人工作不够用时,他们对该工作没有足够的了解,他们对软件过程的其他部分没有足够的关注,等等。

编码问题很简单,目的是要过滤掉尽管写有简历的人也不会写软件的人。 并且只是候选人必须通过的多项石蕊测试之一。

回答所有被问到的问题与回答所有问题是不同的。 当候选人慢的时候,我问的问题更少。

我之前做了一两次面试。 通常适用于Tier III系统管理员。 我期望在面试中得到正确的答案,或者至少获得正确的思维过程(或类似的表象)。 我通常可以说,即使是当人们正确使用它时,他们是否已经接触过它,在课堂上学到了它,或者实际上已经从事了多年。 他们可能最终都能找到正确的答案,但我对您的帮助越多..即使您最终确实获得了正确的答案,我也就越不可能认为您有能力。

好吧,很明显,如果您的问题的假设是正确的,那您将无法做到,我会为您效忠。

再说一次,我不希望您在这里寻找答案,这是一个反问,基本上是对采访结果的无奈之声。

好吧,我感到您很痛苦,但是在这里我们无能为力。