管理者的作用
管理者的作用不是让大家去工作,而是创造环境,让大家可以顺利开展工作。
管理者类似于清障车,在项目启动时,清理道路上面的障碍,而清理完毕后,就是团队的表演时间了,而此时管理者就应该退居幕后。只有每当团队出现困境时,管理者才出现清除障碍。如果管理者一直出现在舞台上,很有可能管理者就是团队的障碍。
管理者需要承担的角色
- 领袖,管理者需要带领团队一起完成任务,所以最主要的是要承担起一个领袖的职责。
- 教练,管理者需要帮助团队学习成长,这样团队的能力才会越来越强,才能承担更重要的职责。
管理者的必备技能
大部分管理者实际上基本没有时间写代码了,毕竟管理者的主要职责在于管理,从编码的角度来说,管理者的价值很有可能不如团队成员的价值大。但是管理者最好还是要花一些时间在编码上,起码要接接地气,可以更好的理解团队的想法,但是最好控制一下比例,最好不要超过30%的时间在编码上。
既然管理者不是开发的主力,那管理者需要掌握哪些技能才能Hold住整个团队呢?或者说管理者的谋生技能需要哪些?下面是一些必备技能:
- 需求分析能力,一个开发团队存在的意义在于提供能为客户带来巨大价值的产品,因此管理者必须能够准确的分析理解客户的需求,把握产品的方向,整个团队的价值才能最大化。
- 系统架构能力,从技术角度出发,整个产品的成功或者可扩展性、可维护性取决于项目的架构的合理性,因此管理者必须能够对项目的技术架构做到一定程度的把控,同时可以更好的和团队沟通。
- 测试能力,这是从产品质量角度出发,管理者虽然通常不会去做测试工作,但是必要的话,管理者还有要有能力去通过测试来保证产品的质量的。
- 制定流程,一个一直比较优秀的团队必然有一些流程来帮助他们减少失误,制定一些合适的流程可以帮忙团队不要犯重复的错误。当然不合适的流程会严重降低工作效率。