很多开发对于成为 TL 有一些抵触的心理。原因有很多种,其中一种比较有代表性的原因是成为TL后编码时间会大幅下降。这个问题也常常困扰很多已经成为TL的工程师。
作为开发,绝大部分工作是写代码,你可以准确量化自己的工作。比如今天写了多少行代码、完成了几个Story、修复了几个Bug。你对自己的工作成果非常清楚。这是可以量化的工作给你带来的踏实感。
当你成为 TL 后,你会发现一天紧张忙碌的工作后,我好像啥也没干。今天开了一个漫长的会议讨论清楚了几个接口。和架构师一起 review 了一个方案。评估了一个需求的工作量。帮助团队成员解决了几个难题。和团队几个核心成员谈了未来的发展。糟了,一天下来我一点代码也没写!
和大部分时间写代码的工作比较起来,有两个差异:
- 工作不落地,写代码心里更踏实
- 很多工作无法量化
第一问题来源于工作内容的改变。TL承担了大量的管理工作。可能一天只写了很少的代码,甚至没有碰代码。但是由于思维的惯性,还在用代码量衡量自己的工作。觉得只有写代码才是落地的工作,才是有意义的工作。
当你成为TL后,意味着你的职责已经发生了变化。写代码只是你的职责之一。更重要的是带领整个团队完成系统开发。如何为团队铺路,提升团队效能,才是你更为重要的工作。不要只盯着自己写的代码量。
这里就引出了第二个问题。很遗憾,管理的工作很难去量化。通过精细化管理,收集数据,统计指标,能在一定程度上反映出管理的提升。但这只是管理成果的凤毛麟角。更重要的是,影响指标的杂音太多。所以指标更大的作用是帮助我们发现问题。
那么如何衡量你管理工作的成果呢?其实只要你身处团队之中你就能切身感受到管理带来的成功。比如团队成员做事情更让你放心、更乐于分享讨论技术问题、code review 发现的问题越来越少、团队做事情越来越有规范等等。