提升心力:摆脱拿着锤子看啥都是钉子
从程序员到一个团队的管理者,这中间需要经过一次又一次的蜕变,最终才能变得处理任何事情都得心应手。
韩非子曾说:下君用己之力、中君用人之力、上君用人之智。大部分的管理者可能都处在用人之力的阶段,并向着用人之智前进。最近看了一些关于管理的视频,提到了更高维度的用人之心和用人之愿,如果能做到,那必定会是一支战无不胜的团队。
2019 写过一篇《技术管理者怎样跳出泥潭》,文中主要写的是「术」层面的内容,也就是怎样用人之力,相信每个管理者都希望能更进一步,但就是这一小步却难倒了很多人。也包括我自己,所以最近也思考很多,希望下面的内容对您有所帮助。
用人之智,我的理解是使用最小的成本带来价值的最大化,那怎么样才能做到呢?同样的一件事情不同的人会有不同的处理方式,比如针对怎样提升开发质量的问题:
- 管理者是开发背景:首先想到的是怎么制定开发规范、做代码审查、写单元测试等
- 管理者是测试背景:首先想到的是怎样提高测试的覆盖率、怎样优化测试用例等
上面的做法都没有错,但实施成本很高,见效慢,属于需要平时积累去做的事情,而且你会发现,不同的背景想到的办法完全不同,这才是最大的问题所在。
人都习惯待在自己的舒适圈,也很习惯使用最擅长的技能来处理任何问题,对于上面的两种管理者来说,他们所想到的方法在他们自己看来都是“成本最小”的办法。也就是说当我们只有一把锤子用的顺手的时候,出现任何问题,我们都会使用这把锤子,这里存在两种情况:
- 只有一把锤子,没有办法,只能使用这一把
- 手里的锤子有很多,但一把是最顺手的,越顺手的使用频率就越高,越是不顺就越是抗拒使用
经验是重要的,但是完全依赖过去成功的经验,是一件很可怕的事情。就像大公司的成功管理经验就不能直接套用到小公司中,在落地实践时会出现各种问题。所以在遇到问题时,我们需要跳出自己当前所站的位置,打破思维的局限,以一个上帝视角来进行思考,这就需要锻炼我们的心力。
心力我认为是一种通过现象看本质的能力;一种打破思维局限的能力;一种高屋建瓴的能力。目前我还没发现有什么很好的办法能够立即有效,就像道理谁都明白,真正实践的时候还是会按照惯性往前走。得慢慢悟,提升认知的维度、转变思考模式才能最终使行为发生变化。
举个小例子,最近某个项目生产环境的一个导入功能有性能问题,影响用户使用,需要快速解决,开发人员在排查问题的时候永远是关注细节,提出了很多可以优化的点,最后一起分析发现,有一行代码在循环内被重复执行,提取到外面便可使性能有大幅提升。
如果站在更高一个维度去看上面的问题,重点关注的就三点:
- 问题要快速处理,因为影响生产使用
- 要保证系统稳定,因为没有时间做全覆盖测试,需要以最小影响的方式进行修改
- 找到性能最大的瓶颈点,使用 20% 的改动来解决 80% 的问题
针对这三个点最后只是调整了一行代码便解决了问题。
再回到文章一开始的质量问题,如果我们跳出研发背景或测试背景这个标签,便会有更多维度的思考:
- 是不是可以使用质量作为开发人员的一个考核指标?
- 是不是可以将测试团队和开发团队通过一些制度进行制约?
- 是否团队中的奖惩(物质或精神层面)不明确,导致开发人员做事没有激情或有怨气?
- 团队中的成员是不是有人遇到了什么困难(生活或工作),导致状态不佳?
先是在认知上需要多维度去想问题(前提是要善于发现问题),头脑风暴列出所有的可能性,然后再进行思考,那种方法的成本低,而且能快速见效,这样能迅速知道方向有没有走偏。大家都知道,方向不对,越使劲,偏的越厉害。
很多时候我们都在抱怨,公司少流程缺制度, 却未曾想到作为管理者,我们自己就可以是这个制度或流程的制定者。
前段时间听了樊登读书的《一生只做一件事》,里面提到了两个观念:
- 我想不想和你一起
- 我想不想和你一样
一个产品团队中的所有成员,从工作本身来看,每天都在一起努力做着同一个产品,但每个人为什么会留在这个团队中,可能每个人的答案都不一样:
- 为了混一份工资
- 为了能学习到新的技术,提升自己
- 虽然对目前现状不满意,但限于各种压力
- 真心的喜欢团队的氛围
在心力提升后,能够到达用人之智的境界后,管理者应该要多思考,怎样能让团队和我一起,让团队和我一样,每个层级都能够以这样的思想向上对齐,那么也就不需要管了,当然,这是终极目标,也就是上面提到的,用人之心和用人之愿。
看一篇文章或写一篇总结肯定不能有立竿见影的效果,但我觉得这是一个好的开端,一个思维转变的开始。就像跑步,看了大量的书籍、买了大量的装备,但没有迈开步子跑出第一步,而现在已经换好装备出发在路上了。
希望本文对您有所帮助!