《构建之法》读后感
17.1 领导力
在软件开发过程中,有很多平等合作,但是也有上下之分的领导/被领导关系,即使都是平级的员工之间,也有老师傅/新人,某领域的专家/新手之间的指导关系。
在口语中,很多人认为领导就是管人的,名称大概是经理。很多技术人员在展望将来的职业发展的时候,说“我以后想做管人的”。其实,领导(leader)和经理(manager) 是有区别的,计算机行业的先驱 Grace Hopper 说过:
You manage things, you lead people. We went overboard on management and forgot about leadership.
你管理事务,你带领团队。我们过分重视了“管理“ 而忘记了”领导“。
请读者看你所在机构的那些 "管人的领导", 他们擅长的是把人当作东西来管理,还是领导大家达成团队的目标?
所谓“领导”也有很多种:
Thought leadership:思想的上领先
Technical leadership:技术上的领先和指导
Organizational leadership:在机构里是领导关系,又如学校里的老师
Project Leadership: 在一个项目中是领导
一个人可以是自己的领导: 一个有雄心壮志,有紧迫感,有纪律的“我”,领导一个灰心丧气,有拖延症,得过且过的“我”。每年,每学期,每天的开始,一个人似乎展现很多对自己的“领导” 特性,但是随着时光流逝,领导力在慢慢丧失,直到下一次觉醒。
在软件团队的语境中,领导力有几个要素:
- 设定目标
- 知人善任
- 带领团队解决问题
- 绩效管理
设定目标这个要素在其他章节有不少描述。 简要地说,好的目标有下面的特点SMART:
Specific:具体的,无二义性的,能描述 “成功” 是什么样的。
Motivating: 目标能激发团队成员对目标的兴趣么?实现目标对团队成员来说意味着什么?他们会为之自豪么?
Achievable: 能做到么?是挟泰山以超北海?还是把墙角一堆砖头搬走?
Relevant: 和大团队的方向、目标吻合
Trackable: 能衡量进度的,和有些资料提到的 Measurable 相似。