本文主要写给初做管理工作的工程师, 本文将帮助这些人在思维模式从工程师转变成为一个管理者。希望各位能够从本文中得到些启发,从而运用到团队的管理当中。
在一名优秀的工程师发展到一定阶段后,无论是业务测试能力和技术能力都需要在团队内有所输出,所以在这个阶段必然会培养一些工程师或者转向管理方向。在这个阶段需要考虑的就不仅仅是怎样做好项目,而是更多的关注在人的身上,所以就要思考的方式,处理问题的逻辑,以及出了自己做好事情外还要考虑团队的培养这些问题,一时间会束手无策。在这种角色转变过程中我发现了很多优秀的工程师开始怀疑自己,面对变化没有很好的应对策略,最后不仅自己心力俱疲,团队还因此往不健康的情况发展。
【思考方式】
优秀的测试工程师面对项目的思考往往是自己需要怎么做好排期,怎么测试全面,怎样提升技术技能等。都是以自己的维度出发,常年工作经验的积累会有自己的一套方法论,所以在遇到这些问题的时候可以从容应对。
但是一旦开始带团队后,就会发现原来一些很简单的事情,团队其他工程师怎么就做不好。这个时候的问题在于思考的维度过于单一,只是基于自己做工程师时的认知去看待别人的结果。我们仔细分析下,你自己在一块业务上有了长时间的积累,你很熟悉业务,你合作的研发和产品也都很熟悉,你能给很好的处理业务和人际关系,但是换了别人他都需要重新积累,所以一些你看似容易的事情在别人那并不会很顺利。
这个时候一些不恰当的行为就是反正他搞不定,我就去搞,我教他的时间我都搞定了。这种思考方式非常错误,你能帮他搞定一次,你不能永远帮他。如果你一直这样,你就会发现你团队的人谁都不行,这对团队的打击会非常大。正确的思考方式是帮助他更快的融入团队,把你在项目的经验以及团队其他角色的工作习惯和方式告诉他,多去监督他的过程指标,比如项目进展,peer的反馈,自己的主动性等。而不是只关注结果标,只看最后做的好不好。当你把控过程标没有问题的时候,结果不会差到哪里去。
忘掉那个无所不能的自己,在团队不要做英雄角色,要做领路人的角色。
【处理问题】
处理问题的方式在初做管理的同学可能是最大的挑战。工程师面对项目及其他问题,都是线性思维。计算机的世界只有0和1,所以大家往往会养成非黑即白的处理问题习惯,没错在工程上这种方式没有问题,因为有没有bug或者问题是非常客观的,常年工程上的训练已经让你对工作甚至生活上的处理逻辑都是0和1了。当做管理的时候,问题就来了,当你看到问题的现象时你很惯性的给出了个非黑即白的解决方案,而不是深入问题,突破表面,寻找问题的根源去解决问题。举个我遇到的例子,团队有个工程师跟我说,能不能增加pre环境,我问他为什么要加,回答是项目太多pre不够用。如果不深入去了解问题的本质,我可能就会加机器了。大家都知道pre是上线验证用的环境,一般是快速过下主流case,看是否有明显问题的,但是为什么大家会在这堵塞,造成环境紧张呢,我深入的了解了下,发现在线下环境好多服务的不可用的,所以无法再线下完成基础的测试工作,所以就强依赖pre了。那么这个问题的本质就是我们怎么去解决线下某些服务不能用的问题,因为项目只会越来越多,如果要扩pre可能永远都不够用。
深入挖掘问题本质的能力是需要长时间去训练的,在这给大家几个技巧。
1.无论在工作还是生活中遇到问题,多去想想这问题是怎么发生的,多问几次自己为什么,你问的次数越多,你就越接近问题的本质了。
2.每次解决问题的时候,别着急给方案,先自己仔细推敲下方案的可行性及是否有弊端等。管理者的每一个决策都要慎重的,因为一线执行就说按你的建议,如果拿不到结果要多看自己的方案是不是有问题,而不是一线执行。
3.多去听听一线的建议,别拿自己历史经验去拍方案。每个公司每个项目都有自己独特的问题,看似跟之前自己经验差不多的问题,往往在认知上存在巨大gap,所以我一直有个习惯,没事多去跟一线工程师聊,他们的问题往往更直接。
【团队培养】
做工程师的时候我比较关注今天我还有哪些活没干完,哪些承诺别人的事还没做。现在我每天问自己的问题是:
1.团队现在最大的问题是什么?
2.团队工程师是否有成长?
3.我改怎样去解决面临的问题?
这些问题看似都比较宏观,但是在每个团队所面临的问题都不一样,给的解决方案当然也都不一样。所以慢慢就会发现通过一个人在不同业务方向和技术方向上解决所有问题已经越来越不现实了。这时候需要管理者在团队内部要更多的放权,让团队每一个人都要为团队有所贡献,无论技术还是业务。通过一段时间的实践我总结了一些适合初做管理同学的建议。
业务相关:
业务测试上涉及到排期和测试策略的问题,要让工程师自己去主动,管理者不要参与太多,因为他们是最了解产品情况的。管理者做好过程管理,在提测,测试,上线等重要环节进行时间和质量的把控,防止在测试环节出现问题。切记只看结果,放手不管。
经验沉淀上工程师往往因为太忙或者自己总结意识差,团队的项目经验的积累比较少,造成有些业务或项目只有个别人了解,一旦请假或离职短时间很难有合适的人力补充。所以管理者在团队经验沉淀上一定要严要求,甚至苛刻一些。
技术相关:
技术能力强的工程师一大特点就是喜欢用自己的理解去快速落地一些技术工作,以显示自己的技术能力。时间长了会发现,我们做了很多技术项目,也都号称节省了多少人效,但是把时间轴拉长,就会发现很多技术项目在初期根本没有想明白到底解决那些业务测试问题,搞了个平台可能解决的只是自己认为的痛点,根本没法解决一类问题和持续解决问题。所以管理者要在技术工作上自己想明白,想透彻,知道痛点,再去解决。技术工作的投入,如果拿不到结果,对团队工程师是个很大的打击。