我们的一位开发人员经常将未经测试的代码写入版本控制系统。由此导致我们的代码质量受到影响。
除了解雇这位开发人员,我该如何解决这个问题?
编辑:
我已经多次与他谈过,并给他发了书面警告。
我们的一位开发人员经常将未经测试的代码写入版本控制系统。由此导致我们的代码质量受到影响。
除了解雇这位开发人员,我该如何解决这个问题?
编辑:
我已经多次与他谈过,并给他发了书面警告。
如果您能进行代码审查-那是捕捉问题的完美地方。
我们要求在合并到迭代主干之前进行审查,因此通常在那时会抓住所有问题。
如果在允许开发人员提交代码之前,您有规律地进行代码审查,那么,您的问题大多数已经解决了。但这似乎不是您的情况,所以我建议:
代码审查。每个星期一早上,将所有开发人员聚集在一个房间里,并要求他们携带上一周最引以为豪的基于代码的成就参加会议。
让他们成为焦点并兴奋地解释他们所做的事情。让他们携带代码副本,以便其他开发人员可以看到他们正在谈论的内容。
我们几个月前开始了这个流程,惊人的是,这个过程中进行了大量的无意识质量检查。毕竟,如果只是要求开发人员谈论他们最感兴趣的事情,他们将非常乐意向人展示他们的代码。然后,其他开发人员将看到质量错误,并公开讨论为什么他们是错误的,以及应该如何编写代码。
如果这不能促使你的开发人员写出优质的代码,那么他可能不适合你的团队。
将其纳入他的年度审查目标。如果他未能实现它,就不给加薪。
但有时你必须接受某人并不适合你的团队/环境,这应该是最后的选择,而且可能很难处理,但如果你已经尝试了所有其他选项,从长远来看可能是最好的事情。
让他“看管”构建过程,成为构建经理。这将减少他开发代码的时间(从而提高所有人的绩效),并教会他为什么良好的构建是如此必要。
强制执行测试用例 - 不能提交没有单元测试用例的代码。修改构建系统,以便如果测试用例无法正确编译和运行或不存在,则拒绝整个任务的提交。
-Adam
发布每个开发者的测试代码覆盖率统计数据,在与他交谈后进行。