这篇文章来自 StackOverFlow 的创始人 Joel 在 20 年前写下的一篇文章原文
现在我翻译成中文
你可以用 13 个问题来衡量你的技术团队
分数评估:
>= 10 优秀
>= 7 还可以
>= 5 需要加强
< 5 糟糕
- 你们是否使用版本控制,比如 Git 或 SVN?
- 你们是否能一键部署(或者一个命令)代码到线上?
- 你们在合并代码到 master 前是否需要经过测试?
- 你们是否有一个 BUG 管理仓库?
- 你们在开始开发新的功能前是否先修复已知 BUG?
- 你们是否有给每一个开发人员一个实时更新的任务表?(如果没有就很可能经常加班,因为发布需求的人不清楚开发人员的具体工作情况)
- 你们是否会在写代码前写规格文档(包含所有要完成的功能描述)?
- 你们的开发环境是否是安静的不会被打扰的(比如:产品经理是否会频繁找你)?
- 你们公司是否会给你们配备最好的开发设备、最好的开发软件(对,就是字面意思最好的,衡量公司的投入)?
- 你们是否有专职的测试人员?
- 你们是否有自动化测试?
- 你们的新加入成员是否在招聘流程中要求现场写代码?
- 你们是否会观察用户如何使用你们的软件?
可以看到即使是现在 2021 年,要全部完成这 13 个问题的条件都是很难的。
这就是对软件质量意识的差距