近几年随着个人技术的积累和自我成长,自己开始独挡一面,并带领团队一起来完成工作。一个人把事情做好和带领一群人把事情做好,对人的要求和挑战是完全不同的。尤其团队在沟通和意见出现冲突的时候,如何让大家达成一致,为了共同的目标都努力向前,这都不是简单技术能力的问题,需要自己总结和沉淀技术管理的能力。
自己理解的技术管理
技术管理一般比较偏实施和落地环节,你是需要身处一线和开发、测试人员一起共进退的。那如何把控项目的进度和风险,进行有效的技术管理? 以下是我自己对技术管理的一些理解
-
一、任务的分配
现在一个大项目一个人单打独斗是很难完成,基本都是大家一起分工合作来完成。那首先就涉及到如何来分配任务?
- 任务划分的粒度要合适(时间周期最好在一周内,任务较独立,也可衡量)
- 不同难度的任务要合理分配(有挑战性的任务和较简单的任务分配要因人而异)
- 任务不论大小一定要有责任人,责任人要对各自任务负责
-
二、任务的规划排期
任务分配完成后,就要确认好任务的时间截点,也就是deadline。这其中各自肯定会站在不同的立场,最大限度的给自己多去争取时间。只要任务的时间相对合理,此时团队成员多去思考和争论,对于整个项目来说,其实都是合理的,但是会议上达成了一致,大家就要去遵守和执行。
在会议上大家都可以踊跃发言表达自己的观点,但是形成了最终的结论,大家就都要进行遵守。
-
三、进度的把控
项目的进度,一般会进行日例会和周例会。如果大家手头的任务都比较重,可以不用频繁过进度,只要每个人了解自己手头上的事情以及时间截点,大家都在努力完成项目,这其实就是一个比较好的状态。
对于比较有经验和能力的老员工,进度把控不需要时时刻刻盯着任务,只需要大家在关键时间截点上达成共识,一起向前基本不会有太大问题。
但是对于刚入职或者刚进入项目的新员工,这时候才需要较强的进度把控,主要在于他们对任务的理解不透彻,可能识别不了风险,或者根本不知道要干什么。
-
四、风险的识别
项目的风险有已知风险和未知风险两种呈现方式。
已知风险相对还好,大家提前就想到哪些地方有坑,只是还没有好的解决方案。这样的问题相对好解决,提前就会跟上层领导知会,时间和人力会提前进行一定的安排。
未知风险才是比较可怕的,大家提前没有识别到风险,到了任务的时间截点,才意识到风险。所以我们在进度把控的时候,就要有针对性的去识别,哪些地方可能会出现风险,比如:新员工不了情况或部分同学只局限了解自己任务,没有关联上下游等等。
-
五、沟通和协调
技术管理最费时间和精力的事情就是沟通和协调。不同部门的事情你要负责组织和拉通,团队内部的安排和协调你也要进行管理,这里没有明显的边界,而是需要你来确定这个边界。
- 能和团队成员打成一遍,也能让大家诚服于你
- 学会拒绝,不是所有问题都需要你来解答
- 要抓大放小,不要做过于细节的管理
如何更好的技术管理
基于自己的理解,技术管理主要还是以事情为核心,如何有效协调和组织团队成员,更好的完成工作任务。这里面其实还缺少了以人为本的工作思路,因人而异的管理方式。那如何更好的进行技术管理,我总结了如下几点:
1、针对新员工要从给答案到做指引
每个人的转变其实都是一个漫长的过程,不能一蹴而就。基于不同的任务和阶段给新员工的指导也不同。
- 如果他刚进入全新的领域,此时不妨直接给答案,因为对于他来说所有的一切都是新的知识。
- 如果他有了一定经验后,可以通过问正确的问题,通过问题引导他们进行深入思考,找到解决方案。
2、如何帮助团队成员成长
一个技术管理者的成功并不在于自己代码多好,能力多强,他的成功一定建立在团队成功的基础之上。只有团队成员不断成长,这个团队才可以做成更大的事情,而你才可以在团队的基础上,站得更高,看得更远。
对管理的员工,可以多做如下思考?
- 怎么做能够让员工进步到更高层次
- 不同团队成员的潜力在哪,如何培养和挖掘
- 如何帮助他人发现错误和缺点,并帮助他人认识和改进
- 如何帮助他人在不擅长的领域建立信心
3、不做微观的管理者
管理既不能过度关注和掌握过多的细节,也不能简单地给了目标就放任自流。要因人而异,因事而异,确定跟进的粒度,保持一定的交流。
因人而异
如果是工作多年的职业工程师,尽管各个公司的一些流程和工作方式不太一样,你只要给出指导性的建议和准则,他们就能很快调整适应。如果是刚刚从学校毕业的新人,那么从各种工具的使用、开发流程的熟悉、代码的规范化,都需要更多的指导。这样的人往往需要安排一个有经验的工程师去带,才能获得最快的成长速度。
因事而异
先问问自己,这个任务在整个项目中是不是很重要,是不是很紧急。如果是,并且每一步的完成有很强的时间限制,在 “怎么做”的方面会因为各种要求或者限制并没有太多的发挥余地,那么,这时候,更多的介入是你更好的选择,不过在介入之前,你需要让对方理解为什么需要频繁沟通。
跟进的粒度
制定目标、确保传达;多给指导、少亲手做;设定频率、保持跟进;交流难点,给出建议。
保持一定的交流
人和人之间的交流太容易产生信息丢失,很多时候我们都以为双方对交流的信息达成了一致,结果确认的时候发现完全不是一回事。
对每个团队成员要保持定期的沟通,确保彼此都了解各自的期望和目标,大家才能更好更愉快的合作。
技术管理本身就是一门很深的学问,这既包括了你的技术能力也包括了你的管理能力。如何成为一个好的技术管理者,这其实也没有一个标准的答案,需要自己不停的去摸索和改进,最终才能找到适合自己的方法和思路。
大家有什么好的技术管理思路,欢迎一起讨论