自杀小队 我们如何招募最强大的初级开发人员

在上一篇有关在我们的启动中实现敏捷方法论的文章中,我部分讨论了人员管理问题。 在本文中,我将告诉您我们如何招聘该员工,我们使用什么分类,验证他们的专业性和充分性的测试和方法。



招聘模型


与任何年轻的公司一样,我们在人员选拔领域的工作始于开发招聘模型。 情况如下:我们已经有一个由“本地”雇员组成的团队,他们全部都是高技能,并曾担任高级职位。 这些人员必须以某种方式卸任,也就是说,无需市场专家来获得能力,因此,在人员积极扩展期间,绝大多数空缺职位是6月份的职位。 在招聘职位空缺之前,我们决定根据资格水平和针对不同类别的开发商的要求来制定内部分类。



得出以下分类:

级别0 -fullzero-developer,一个人完成了几门课程,学习了某种语言的基本结构和语义,阅读了有关Haber炒作主题的几篇文章,因此,程序员在笔记本电脑上贴了最大的标签。
级别1-初级开发人员,写得很好,熟悉堆栈的人,知道当前的趋势,知道如何分解问题并自己解决问题。
2级 -中级开发人员,具有以上列出的所有初级素质,并且能够在资源分析的基础上对要解决的问题发表自己的有力见解,并且可以在所选工具链的框架内影响其实施过程。
3级 -高级开发人员,他还是领导者,他是一个父亲,父亲,一个将任务从商务机转换和开发到开发机的人,在中旬和六月分发这些任务,控制并帮助他们执行。

在此类别中添加了以下标准:对我们的工具链的了解,足够的知识,大约1-2年的工作经验以及至少一个成功实施的项目,清晰表达思想的能力,沟通技巧的存在,承认错误和缺点的能力(健康的自我批评-它是一个强大的工具)。 如上所述,该套件的优先级放在了初级开发人员上,因为我们在与中间人打交道的经验表明,通常,这些人已经被某种技术堆栈和其他公司的“独特”方法所宠坏了。 此外,实践表明,市场上有很多人习惯于呆板的垂直结构,在那里他们将咀嚼的任务的材料放到桌子上,这些代码仍要以代码的形式填写,而老年人的任务是用头顶上的棍棒敲打门柱。 。 但是问题是,当行动是在一个年轻的初创公司中发生的,而团队只有大约30个人时,每个人都被装满了满满的坦克,那么每个员工都没有时间进行个人分解,因为这等同于完成这项任务。 在这种情况下,编写代码约占任务总执行时间的百分之十时,不仅需要包括手指,而且还必须包括头部。 这正是所有程序员的“圣经”中所写的-Stephen McConnell的“理想代码”,又名Redbook(不要与《美国女性杂志》相混淆)。

然后一波波覆盖了我们...




谁没有进入我们,谁以为他们是中间人物,因为他们在Android上编写了整个应用程序,而在Google Play上下载了多达37个下载,最后以自以为是超级签名者的人结束了,因为他们在Android中是领先的开发人员一些工作室虽然将他们的工作大体上简化为将任务从设计部门转移到开发部门,也就是说,他们没有设计或管理开发的经验,但是只有很大的野心和很大的野心。 。 还有一些谁,谁拥有七个月的编程经验,认为自己是大四,并要求24万薪水,甚至没有解决初级的基本任务。 从我们的角度来看,这些人甚至都不是琼斯。 这种方法很简单,如果一个人直接从内心进行编程,那么他只是一个程序员,但是如果一个人编程不佳或根本不熟练,那么他不是一个初级的人,他根本不是一个程序员。 在这里,我们得到了一个出色的现场黑客的帮助,他们被迫退出了这样的候选人,这就是所谓的“管道法”,其中写道:“每位到达新工作地点的新水管工都将泥浆倒在另一位水管工上,说他有柱塞臂,现在他将不得不做所有事情。零。” 在实践中,它的工作原理是这样的:申请者担任初级职位,他们给他一些现成的代码,例如Linux内核的一部分,问他对这个决定有何看法? 如果他开始吐口水并说:“什么样的手写笔写的? 一切都需要在这里重做! 给我时间,我会再写一遍,“所以水管工就在您的面前,他的首要任务是责骂以前的水管工。

米开朗基罗在这个场合说:“我把石头砍掉,切掉所有不必要的东西。” 伟大的大师没有写剧本,但他很好地理解,一个能干的人渴望了解工作对象,并希望理解它,并在必要时进行改造,但不要破坏它并将其变成灰尘。 也就是说,如果一个人回答了以下问题:“如果代码可以在生产环境中运行并执行其功能,那很好,在某些地方,我认为您可以改进此代码,必要时,我可以展示它。”,然后与这样的人一起,您可以并且应该继续对话。
定义低技能琼斯的另一种技术是专注于炒作和炒作堆栈。 如果一个人去接受采访并开始倾诉趋势方法,就会遇到一个合理的问题:“您是如何得出这个结论的,您是如何分析这些工具的?” -惊叹这位年长者开悟的鬼脸,他回答:“您可以在它上面写任何东西,未来就在它后面!”,然后充其量是一个软弱的初中生,他不分析资源,堆栈和其他工具链,只提供有关肤浅的信息。炒作工具和方法。

有关面试的更多信息


除上述内容外,在雇用程序员时,从他的知识中获得特定职位中的公开职位非常重要。 您在堆栈上确定,然后他选择他的语言“ wai wai wai多强”,假设他是JavaScript高地人。 有一组现成的任务,例如:

setTimeout(()=>{console.log('Hello World!')}, 1000); while (true) { let a = false; }; 

如果有关此任务的问题是:“何时将出现Hello World!”,将显示 ?,他开始以回答的方式结结巴巴:“嗯……嗯……看完了true循环之后或一秒钟之后”-这意味着他绝对不知道筹码,只是在撒谎,他的技能很可能接近归零。 事实是,while构造将加载预处理器,并且由于JS是单线程的,因此主循环将永远不会从计时器发出事件。 即 正确的答案永远不会。

如果一个人不准备充分和诚实地评估他的知识,不能够阅读别人的代码,那么可以讨论团队中的什么样的工作。 如果一个人不被证明是“水管工”并能应付任务,确认自己对堆叠的知识,或者对任务具有建设性,他的错误和部分无能,那么他很有可能会成为你的新员工,并且将来能够成长为分类级别较高的一面。



有时候,一个人不同意公司的内部分类,并且对他没有在中间甚至六月份拉钱,他的决定将不起作用的说法做出负面反应。 在这种情况下,如果他继续坚持下去,则可以继续遵循原则,并在环境中运行他的解决方案,这种设计自然会失效,也就是说,人已经搞砸了。 然后,他可以开始粉碎先前工作的权威。 例如,在某些情况下,这样的失败后一个人说他是一家大型银行的非常有价值的雇员,在那里受到了极大的赞赏。 但实际上,事实证明,还有另外一万二千名像他一样的人在这家银行工作,而人事部门只是忽略了他的无能,在那儿呆了大约一年之后,他现在宣布自己是专家。 在这里,大约有二十名程序员组成的团队,每个人都精通自己的业务,但他只是迷失了自己,无法按照旧的业务员计划工作。 我们的首席执行官Ilya Bykonya这样说:“对我来说,对于公司的当前开发人员和创始人而言,一个权限就是该人的技能,他的工作地点和所担任的职位是次要的。”

总结一下




我们评估申请人的方法可能存在缺陷。 我们“降低他的排名”,说他不在中间,而是六月或更糟,这一事实与我们开了一个残酷的玩笑。 也许我们一次失去了像俄罗斯帝国一样的未来拿破仑? 谁知道……但是从我们的角度来看,这种策略的有效性是完全合理的,最终,拿破仑仍然输掉了俄罗斯帝国的战争。

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


All Articles