带你读《2022技术人的百宝黑皮书》——关于程序员的职业操守,从《匠艺整洁之道》谈起(5) https://developer.aliyun.com/article/1238257?groupCode=taobaotech
关于团队合作
我将一直确保其他人能够补上我的位置,我也能够为其他人补位。
我将给出在数量级和精确度上都靠谱的预估。我不会做出没有把握的承诺。
如果我的程序员同事拥有足够的操守、标准、纪律和技能,就能赢得我的尊重。任何其他的属性或特征都不会成为我尊重程序员同事的因素。
我永远不会停止学习和改进我的技艺。
上述几点主要是关于团队合作相关的誓言,总结起来主要为以下几点:
1. 有团队精神,能够被补位,避免团队因知识断层而陷入瘫痪
2. 诚实合理地预估,不轻易承诺
3. 只尊重职业技能、纪律、标准和操守,不因其他因素彼此歧视
4. 永不停止学习,跟上行业的变化是对职业的尊重,也是对自己的事业负责
诚实合理地预估,不轻易承诺
系一双鞋带需要多久?也许你可以很快地说出:20秒左右。因为系鞋带这件事几乎天天都在做,你可以相当快速、准确地给出合理的预估。
那如果要你写一个系鞋带的教程,需要多久?你是否没有办法快速准确地做出一个预估?你需要考虑这个教程的受众、是否需要图文并茂、篇幅限制 ……
这正是我们作为程序员经常会遇到的问题:预估工时。我们面临的用户可能都是计算机新手,他们对软件可能一窍不通,我们必须要写出使用要足够简单软件,并拥有足够详细的使用说明……
当一位经理来找你说:“我在星期二之前需要这个。” 你被这个问题困住了,因为你不知道你是否能在星期二之前完成这件事。也许你做过类似的事情,花个两三天就搞定了;也许这里面藏着一个跟你之前做过的都不一样的技术难点,你不知道能否按时完成。
所以当你被要求估计某件事时,你不能给出一个具体的时间,因为那是谎言,你不知道你是否能够在特定的时间完成它,你需要考虑到最好和最坏的情况。如果你确实给了一个精确的时间,那最好能咬牙完成它。因为你在做出承诺,所以你最好准时完成它,不要有任何借口。
要给出一个合理的预估,可以这么做:
1. 不要轻易给出一个具体时间,诚实地保持诚实
2. 对项目的预估不能只是一个交付日期,而是一个时间范围
进行工作项拆解,找出隐藏在里面的模糊因子(不确定因素)
与经理交流,花更多时间细化模糊因子,如此来回递归式操作
3. 针对最好情况、最坏情况、普通情况,分别估计其可能发生的概率,再针对这3种情况预估日期范围
带你读《2022技术人的百宝黑皮书》——关于程序员的职业操守,从《匠艺整洁之道》谈起(7) https://developer.aliyun.com/article/1238255?groupCode=taobaotech