技术面试是否倾向于主观?[关闭]


9

根据我在技术面试中的经验,我发现大多数人都比较主观,因为面试官已经有了自己的答案。即使来自候选人的答案是正确的,但由于面试官并未为该答案作好准备,候选人也无法获得工作。

最近在一次采访中,我谈到了有关使用AVL树算法来解决所提出的特定问题的一些知识。面试官回答:“什么是AVL树?”。另一个例子是语法。我在需要Ruby代码的采访中主要遇到这种情况,因为有很多方法可以实现对给定问题的解决方案。一个非常普遍的问题是面向对象设计的问题。

在这种情况下,受访者无法成功。还有其他人也有这种感觉吗?或者仅仅是我吗?如果不仅仅是我,我们如何才能使技术面试更好?


9
我认为您很难在任何不以主观方式看待的行业中找到采访情况。这是野兽的天性。除非您能提出一些国际认可的评分标准来对编程访谈进行评分,而且即使这样可能会有偏差,否则我认为您无能为力。
jonsca 2011年

8
也许他知道什么是AVL树,并且正在测试您。
Trasplazio Garzuglio 2011年

2
对,他们是。它们并不是要100%客观。
quant_dev

1
面试的目的是确定您是否适合该团队。这不是评估您的技术技能(尽管评估它们是确定您是否适合的一部分)。例如,有些人(包括我在内)不喜欢专注于设计模式的程序员,或者一直提到我从未听说过的奇怪的三个字母缩写(在这里不谈论AVL)。在这种情况下,它们可能非常好,但不是很好的匹配,因此它们无法在我的团队中工作,否则对每个参与人员都不利。
Thomas Bonini 2011年

2
至少有人问您一个技术问题。最近有人问我大学毕业的那一年。
JeffO 2011年

Answers:


17

我认为您自己的盲点使您得出一个假设,即为什么您找不到工作。

有可能在面试中正确回答所有问题,而没有找到工作,因为您正在与可能也正确无误的其他人竞争。当您只有一份工作而您认为可以完成工作的三个人时,您仍然只能雇用一个。这是一个艰难的市场,许多经验丰富的人正在寻找。您永远不会知道您的竞争在他们的采访中表现如何。

是的,面试是主观的,他们正在寻找不仅具有技术技能而且适合现有团队的人。如果有能力,只要继续尝试就可以了,您会找到合适的地方,他们会雇用您。


(+1)有很多技术摇滚明星,但并不“与他人打成一片”。
umlcat 2011年

总是很有趣的是,“拥有X个优秀候选人,只能选择1个”通常适用于新员工,但不适用于客户或合同之类的东西。
joshin4colours 2011年

我说的是技术面试,而不仅仅是面试。技术面试应该客观吗?因为他们想看看您如何解决问题,所以他们进行了技术面试。
2011年

不,技术面试是主观的。他们不仅在评估您的技术水平,还在评估您认为自己的适应能力,对压力的反应方式以及具有争议性的能力。有时您采用的方法可以告诉您此人与当前代码库进行交互的可能性。例如,如果您强烈地告诉他们,您将永远不会使用...并且...遍及他们的代码库,以至于要摆脱它就需要付出很大的努力,他们会知道您会不高兴,因此身体不好。而且您仍然可以与其他所有人所说的竞争。
HLGEM

如果公司正在寻找一定数量的人,那您是对的。但是我去过的大多数技术面试都是针对那些一直在寻找程序员的公司。通常,面试官几天后总是给我有关我的代码设计的反馈。由此得出的结论是,尽管我的代码运行得很好,但访问员还是有自己的品味。
2011年

12

任何仅仅因为未提供预期答案而解雇候选人的面试官都是糟糕的面试官。如果一家公司鼓励这样做,而我在面试中有这种感觉,那是团队和公司面试我的一个严重危险信号。

如果受访者向我提供了我没有想到的答案,那么我希望他能够解释所使用的解决方案是什么以及它的优缺点。就像您说的那样,通常有多种解决方案,从选择算法到所使用的句法结构,几乎总是涉及到权衡。我什至会探讨受访者的替代解决方案,以查看他们是否可以提出其他解决方案,特别是如果这是一个显而易见的解决方案,并询问每种解决方案的优缺点。

不管您如何进行面试,这都是主观的。每个面试官,作为一个人,都会有偏见。作为受访者,您可以尽力而为,回答问题时要彻底(但不要过于冗长),并解释您的答案以及如何到达那里。那会花很长时间。


10

我最近发现的一个问题是,当我说一些有关使用AVL树算法来解决所提出的特定问题时。面试官问我:“什么是AVL树?”。

作为一名面试官,即使我对AVL树一无所知(我也不知道),我也要问一下,以了解候选人知道多少。假装无知可能是看候选人是否能够很好地解释的技巧。但是很明显,如果您确实提出了一个解决问题的算法/数据结构(我不知道,并且可以正确解释),我会雇用您。否则,请羞辱我。不聘用员工是因为他们比自己聪明,这不是一个好的招聘策略。

但总的来说:是的,技术面试总是主观的。而且必须如此。如果您每天要花8个小时以上与某个人在一起,那么在60分钟的采访中挑选一个设法使您疯狂的人是不合理的。


谢谢你 我太天真了,以为没有面试官会伪造无知。
2011年

3
@jpartogi:如果受访者永远不会暗示自己比他们了解的更多,他们不会。面试官问您如何解决问题,然后您说“使用AVL树”。采访者现在必须找出您是否选择了AVL树是因为它非常适合并且您知道如何使用它,或者您是否是说“ AVL树”是因为您在某个地方听到了该短语并认为它是适当的。
David Thornley

3

琐事问题是采访的反模式。如果您发现自己陷于这种面试中,请尝试将他们引回到您所知道的领域。专心于简历。如果这不起作用...那么请考虑寻找其他地方。

面试官应询问与您的简历有关的开放性问题。虽然可以感觉到一个人的沟通技巧,但仅通过提问就很难衡量一个人的发展能力。这就是为什么这么多人(包括软件开发人员Joel)建议,不要求受访者编写代码(就此而言,跳过其他几个方面的原因)的部分原因。

事实仍然是,软件开发仍然主要是在未知的时间内解决一系列未知的问题。没有一组测试可以证明,好的,这个家伙可以搭建“桥梁”。我们在将软件创建转变为定义更明确的工程流程方面变得越来越好,但目前为止还没有。


2

我进行的“真实”技术面试就像:“这是问题所在,使用这些技术,您有3个小时的时间”。之后,我们进行了代码审查,并谈到了我为什么要做我的工作。这样,他看到了我已经知道的东西以及我缺乏知识的地方。

然后我们就技术和我的总体目标进行了讨论,仅此而已。我认为面试的目的是让候选人有一种感觉。您无法测试所有内容。我需要很长时间才能很好地认识某个人,因此,再次,我认为,您应该专注于对您的项目很重要的事情,并了解人们如何处理此问题。其余的都是随着时间的推移而积累的经验


1

我担心主观部分无法去除,只会减少。我经常进行技术面试,其中面试官用自己的主观想法“污染”了面试。

正如您提到的,一个简单的示例是,面试官想要一个非常接近其答案的答案。另一个例子是,当面试官比候选人更感兴趣地探究时,他/她比其他人更了解。另外一个简单的方法是,当面试官希望应聘者知道用于编程IDE(Visual Studio,Eclipse,NetBeans)操作的特定菜单位置时。

我已经经历过几次这样的尝试,而且非常令人沮丧。

当然,还有一些隐藏的歧视问题,即面试官不想要候选人,因为他不喜欢贫穷,性别,政治思想,种族,学校,无论你喜欢什么。并且寻找任何拒绝候选人的借口。

最奇怪的部分是,我是CS毕业生,我知道一些心理学(打算学习该专业),有时还发现很多主观的“干扰”。或者,当面试官去隔壁的办公室并明确告诉他们的同事时,出于主观原因,他/她不想雇用候选人。

需要考虑的重要一点是,许多大学或公司都在教IT /技术人员如何进行面试,并且这种教学既包括技术因素,也包括人为因素,而不仅仅是技术因素。


1

这是我的方法:

  • 首先,我请应聘者解决一个现实问题。通常这是我可以轻松解决的问题;通常少于分配的时间。

  • 候选人完成后;我成为学生。我有候选人的演讲,并指出了他们的解决方案,并向我展示了他们是如何解决的。我询问有关他们的想法的问题,他们是否知道替代解决方案,以及为什么他们选择这种解决方案。

这就是我要的东西。

  • 仅仅因为我碰巧知道一个解决问题的好方法并不意味着我正在寻找该解决方案。 初始约束内的任何有效解决方案都是可以接受的。我对他们如何计划解决方案,如何使用所提供的工具感兴趣。我对他们在自己的解决方案中能够发现哪些缺点感兴趣。

  • 我对他们的聆听和交流水平也很感兴趣。他们是否能够理解和实施所有初始要求?他们对解决方案的工作方式的解释程度如何?

最后,一旦我很好地了解了候选人实际上开幕式带来了什么,我可能会从我自己的解决方案中提供一些要点,我认为我的选择会更好。

如果应聘者说“这是一个好主意,我希望我想到了”或“哦,我不知道该技术”,甚至“我想到了,但我改用了它”之类的东西诸如“我更好地理解这种方法”或“我以为您正在寻找这种解决方案”之类的明智原因,这些都对候选人非常有帮助

如果事实证明候选人与我选择的选择不同,则可能意味着我错了。或者,如果我是正确的,并且候选人足够开放以讨论解决方案的差异,那么这是一个很好的信号,表明可以很容易地推动候选人以做出更好的选择。

这是我如何知道候选人是一个糟糕的选择:

  • 候选人试图从面试官那里寻求解决方案。
  • 提供的解决方案无法解决所陈述的问题,或者以某种方式无法以候选人无法解释的方式违反了所陈述的某些限制。
  • 候选人提出了限制条件,试图改变他期望解决的问题(请记住,这是我有一个解决方案,可以比分配的时间短得多的时间来实施)。
  • 候选人被“卡住”了,并花了很多时间不做任何事情。理想情况下,候选人将从另一个角度解决问题,或寻求面试官知道他无法继续前进时应该采取的措施。
  • 候选人即使不知道其他选择,也不知道他为什么使用某种技术。诸如“我不知道其他工具可以执行此操作”或“我不知道该工具如何工作,但是可以执行”之类的答案很好,但是“因为我做了”值得怀疑。

样本问题是什么?
工作

尝试挑选一些与候选人简历相符的东西。显示Web编程主题知识的简历可能会建议一个“联系我们”形式的网页。
SingleNegationElimination

1

您是否认为,作为受访者,您对工作的接受在某种程度上不是主观的?招聘是一个双向过程。

作为面试官,如果我和我的同事“与候选人”“点击”,他们会很有可能参加竞选,前提是假设其他因素(例如家庭编码练习和白板问题)进展顺利。“点击”是我的兴趣所在,进行富有成果的对话,分享有关开发过程的共同价值观。这有多客观?

关于AVL树的问题,我将对候选人解释其工作原理并提供有关属性和用途的见解感兴趣。做得比维基百科上的解释要好。请记住,您的听众可能是在公司环境中的某个人,在该公司中,技术讨论中对O(log n)的最后引用基本上是……从不。

作为面试官,我想给应聘者一切闪耀的机会。我想这将适用于您要为其工作的任何组织。


0

一个好的面试官不会问,他们期待一个特定的答案的问题,除非该问题是平凡的东西简单那里只有一个正确的答案。优秀的面试官会看到您如何处理问题,如何思考问题以及如何得出答案-如果您的答案是正确的,那么他们就不应该对您不利,因为您没有按照他们的意愿去做。

听起来您刚刚招募到糟糕的面试官,他们更关心的是向候选人展示他们的“优势”,而不是实际掌握技术技能。


0

当您在团队中工作时,一项非常重要的技能是能够证明您自己的解决方案并公正地评估他人的解决方案。您既需要向同事学习又要教他们。

如果您想使用AVL树来解决问题,并且团队中的其他成员在大学时还模糊地记得他们,并且从此以后再也没有考虑过,那么您最好能够向他们解释它的优点。如果有人提出了您不了解的解决方案,那么您最好愿意提出问题,直到您提出为止。如果有人提出的解决方案明显逊色,则最好能够阐明原因。如果有人提出了更好的解决方案,那么您最好能够意识到这一点并将您的自我放在一边。

这些是我在面试中提出技术问题时所追求的技能。他们是否想出了“正确的”答案在很大程度上无关紧要。那只是在学校很重要。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.