编程任务-一种评估高级开发人员资格的糟糕方法

像在加拿大出生的许多其他孩子一样,我在皇家音乐学院学习。 这不仅是您可以学习和表演的体育馆,而且是几乎任何城市都可以使用的标准化课程和认证教师。 后者定期在全国范围内进行考试,以便学生可以将自己的音乐教育提高到一个新的水平。



训练所需的运动


每项考试都有一个技术成分和一个示范表现。 让我们谈谈技术部分。 为了获得评估,您必须能够使用仪器进行几次练习。 以我为例,在钢琴上,这些是音阶,琶音等。 我什至都不记得所有的人。


随着学习的进行,练习变得更加复杂,您需要以更高的音调执行它们,直到最后一次考试要求您完成任何按键的任何练习。


经过14年的钢琴学习,成功地通过了期末考试,我可以在任何琴键上进行任何练习。 但是又过了14年,我什至不记得所有这些练习的名称。 我可以记住作品的一段话并高水平播放吗? 是的,没问题!


在实践中不需要运动


我敢打赌,在所有在音乐学院学习并成为专业音乐家的人中,很少有人能够进行任意锻炼。 是的,其中一些练习是表演准备所需的,但只是部分进行,只有在真正需要时才记住它们。


这周,当我参加Hackerrank编程任务时,我必须获得有关数据结构和算法的繁琐教程,才能编写合并排序


刚开始我感到非常不舒服,但是后来有了一个洞察力:这和皇家音乐学院的钢琴练习是一样的故事。 是的,一旦它们变得很重要,我们就会对计算机科学进行不同类型的排序。 但是,专业经验的增长在于了解何时何地应用特定算法,仅在必要时才回顾实现。 我知道合并排序的目的,我知道如何找到其代码。 我只是不记得他了。


有人会争辩说,高级开发人员应该能够在不依靠参考资料的情况下进行排序,因为这些是基础知识。 但我只是不相信。 一个人能否使一个更好的音乐家在任何给定时间完美地演奏伽玛? 当然不是! 此外,我申明通过在培训中完善自己的技能,您会浪费时间来解决应用问题。


招聘时不应使用运动


您能想象一个专业音乐家,在舞台上演出不止一次的出色表现,会在面试中被要求演奏音阶吗? 此后,在没有通过段落的情况下,他们会说:“我们会给您回电”,因为他没有很好地处理基本问题。


这样的想法使我恶心。 但是我们生活在2019年,那时编程领域的访谈一直在发生这种情况。


公司使用第三方服务(例如HackerRank)作为筛选申请人的筛选器。 许多优秀的开发人员之所以退出,是因为他们不定期练习编写排序。 公司抱怨劳动力市场缺乏合格的人员。 并且它一遍又一遍地重复。


顺便说一句,我什至没有谈论在办公室进行采访。 我的意思是招聘的最初阶段,通常是HR在HackerRank上发送指向多个限时任务的链接。 并且,在10-15分钟后收到结果后,决定是否继续通信。 这种雇用程序员的方法是我们行业中的一个问题。


那么,您如何评估高级开发人员的资格呢?


我与候选人面试的经验表明,没有什么比配对编程会议更好。 用一个普通的屏幕花一个半小时进行开发。 在您的环境中,使用您的工具,在项目中一起工作。 使用他的工具切换和处理申请人的一些代码。 您会很快了解对方提出的问题的水平。


并且完全不需要对算法进行内存检查。

Source: https://habr.com/ru/post/zh-CN481738/


All Articles