先讲1个需要转变的观念:

追求确定性,转变为:在不确定的环境下思考、决策、执行。

以下是详细介绍:

做技术开发都讲究精确。

一个公式、一段代码、一个算法,得出的结果都是可预测的、确定性的。

做了技术管理后,则要在大量不确定性的条件下思考、决策并成事

如果技术管理者还像做技术开发时那样,凡事追求精确,则很容易碰壁。

举个例子:

1)小伙伴想要确定性的信息和计划

昨天一位下属问胜哥某个项目A明确的完成时间,把胜哥问的一愣。

因为前几天刚在项目组内部,讨论、确定了项目A近期的目标和开发计划。

他随后向胜哥解释到,之所以这么问,是感觉现在市场和项目侧,都没有给出特别明确的项目交付时间,虽然前几天在研发内部确定了月底的一个初步目标,但感觉随时都可能变。

胜哥大概明白了他要表达的意思:

希望产品项目团队给出确切的产品研发完毕并上市的时间,以便研发团队更精准地制定并执行开发计划。

这其实反映了研发人员普遍存在的一个特质——做事喜欢确定性,明确的目标、明确的需求、明确的完成截止时间、固定不变的人力配置等等。

2)胜哥必须在不确定性中做出决策并带领团队执行

实际情况是,正在开展的项目A,其市场订单还在谈判中,什么时候能给出明确的量产交付时间点,都是不确定的

上级给出的指示是,研发要尽快投入,具体的研发完成时间则没有给出来,或者说,他也没法给出(因为市场谈判还在进行中)。

而胜哥作为团队负责人,肯定要按照领导的指示,带领大家动起来。

时间周期不确定,怎么安排并行动呢?胜哥做了以下事情:

1)多次直接找市场和产品了解订单能够谈成的概率,能拿到的大概份额,客户可能期望的交付时间

2)咨询上游团队的负责人,我们团队开发所需的资源大概什么时候能够到位

3)结合团队当前的人力情况和在研项目情况,以及第1、2步得到的信息,和大家大致敲定了一个近期目标和完成截止时间,并进行大致的任务分工

然后,大家就动手做起来了。

可以看出,胜哥的计划都是基于一些大致的、不精确的信息做出的,而且这个计划可能随着情况的变化而随时需要调整

这正常吗?

其实这才是大部分产品研发特别是2B产品研发的实际情况——到处都是不确定性

  • 客户需求无法完全确定
  • 市场订单不是100%能拿下来
  • 交付时间只有大致的预估
  • 对应的资源到位时间是不确切的
  • 领导的指示是比较模糊的
  • 团队随时可能有新增任务
  • ……

胜哥这样的安排合适吗?当然存在风险。

能不能在前置条件都确定后,再启动开发?

答案是否定的。

2B项目有个特点,前期的沟通、需求引导及谈判往往会持续很长时间;

而一旦确定,交付周期又会很短。

因此,如果不提前风险投入,等到订单真正拿下来后,往往只有2个选择:

1)延迟交付,这往往是客户不愿意接受的。

2)项目组拼命加班加点赶工。

这样做的结果就是,质量无法保证,而且很考验团队的执行力!

有没有什么改进办法呢?有!

在不确定性中,找到不变量

胜哥的做法是,在等待外部条件从不确定逐步走向确定的过程中,优先开展以下事项

  • 开发可复用至其他产品或项目,或者能沉淀为团队公共能力的架构、模块、算法等。
  • 能够帮助团队成员激发兴趣、打开视野、提升能力的开发事项。

从技术转为管理,要学会从确定性的做事思路,转变为在不确定性中带人、做事!

2022.8.8

已更新155/365天。

我是胜哥,软件开发及管理12年,为你分享简历面试、职场答辩、技术管理的那些事儿。

这里有我精选的文章,欢迎阅读:

文章精选-2022.8.7

期待您的点赞、关注,更多原创文章正在路上~

加客服微信:3304222535,开通VIP下载权限!