好开发商/坏开发商

受Marty Cagan 优秀产品团队/劣质产品团队文章的启发,这里是我们在雇用和指导软件工程师时要注意的行为和特征。

好开发商/坏开发商
  • 一个好的开发人员试图了解他们的用户,并从概念上参与功能设计和规范(如果可能)。 糟糕的开发人员认为,任何不进行编码的操作都是在浪费时间。
  • 优秀的开发人员能够检测,调整和评估性能。 糟糕的开发人员不知道这些是什么。
  • 优秀的开发人员着迷于学习新事物,改进流程并表达疑虑。 不良的显影剂无法抵抗变化。
  • 一个好的开发人员可以给出准确的估计和工作时间表,并勤于更新状态。 糟糕的开发人员会让您不断追赶他们。
  • 优秀的开发人员总是将团队和组织摆在首位。 糟糕的开发人员只关心交付自己的工作。
  • 一个好的开发人员知道如何将复杂的功能分解为可交付的小片段。 一个糟糕的开发人员陷入了困境,“直到一切完成”,才能看到任何进展。
  • 优秀的开发人员了解他们的工作只有在达到生产水平并满足客户需求时才有价值。 一个糟糕的开发人员苦苦地为编写仅在其计算机上可用的代码而苦恼。
  • 优秀的开发人员将始终寻求编写可能解决问题的最少代码量。 一个糟糕的开发人员认为他们的价值与他们编写的代码量有关。
  • 一个好的开发人员遵循童子军的规则,总是让事情变得比他们发现的要干净。 他们在看过去的工作时从不高兴,并且总是想重构。 糟糕的开发人员会重复编写代码,编写复杂的方法,在看到可怕的代码时会忽略它们,并且从不审查以前的工作(除非复制粘贴)。
  • 优秀的开发人员始终在解决问题之前检查是否已解决问题。 糟糕的开发人员会重新实现已经存在的逻辑,并且永远不会与队友讨论实现方法。
  • 优秀的开发人员了解代码审查和结对编程的价值。 当有人批评他们的工作时,不良的开发人员会被冒犯。

总结思想

这些不好的事情听起来有些熟悉吗? 如果有什么遗漏,我希望收到您的反馈。 如果您有任何想法,请在下面回复。

感谢Paul DaillyRonan Perceval在这篇文章中的帮助。

From: https://hackernoon.com/good-developer-bad-developer-e65a1bba1838