复盘

Peter 于 2021-04-03 发布

复盘不是什么新鲜的概念,古人云“吾日三省吾身:为人谋而不忠乎?与朋友交而不信乎?传不习乎”其实讲的就是每日复盘自己,反省自己每天的待人处事,工作学习有没有尽心尽责,诚实守信。复盘简单来讲就是针对过去自己做出决策所依赖的假设,以及产生的结果进行分析和判断,并考虑如何改进以便对未来可以做出更好的决策提供参考。

我们每天每时每刻都在做着各种决策,工作中生活中处处都需要做决定。大到找工作,买房买车,小到每天早饭吃什么都需要做决策。回首看看过去的各种决定,少数决策的结果现在看上去还不错,但是大部分其实可能就没那么好。其实做决策的过程,是我们针对所遇到的问题做出假设的过程,我们假设这个问题的原因是什么,然后基于我们的假设给出解决方法(也就是做出决策)。平时做决策时,我们通常都是随心所欲的,跟随自己的直觉,不假思索就做了决策,也就是《影响力》书中提到的“自动播放”模式。因为缺乏了理性的思考,决策的质量也就可想而知。每一天的生活看似都是一些的琐事,但其实其中埋藏着富有启发,值得反思的案例。复盘的目的,就是从每天的工作、任务中反思,获得启发,吸收养分,让自己进步。

复盘要求我们在反思的过程中,能够跳出自己的视角,客观中立的审视自己,记录自己的思考和执行的过程还有自己的情绪状态,并从中找出可以改善的空间。为什么还要记录情绪状态?主要是情绪状态可以让我们在回顾的时候更容易切换到当时的情境,能够做到感同身受。按照这个要求我们可以设计一个复盘的模板,以后可以按照模板直接填入相关的内容就比较方便了。下面是我的工作中遇到的一个问题的复盘:

  1. 遇到的问题

    现象是在芯片开机过程中碰到系统启动过程中挂起的问题。具体情况是系统软件在初始化完某一个IP 之后,系统hard hang。

  2. 问题出现的原因

    分析发现,代码中遍历IP的数量大于芯片实际支持的数量,代码访问了不存在的IP寄存器导致问题出现。原因是负责初始化bank个数的系统软件继承自前一个项目,没有针对这个项目做相应的更改,相关的文档也有问题。

  3. 情绪态度

    情绪比较急躁,因为是bringup,被push的很紧,压力很大,当发现是其他软件没有初始化正确之后,直接assign给相关软件负责人转移压力,要求对方解决。态度糟糕。

  4. 解决方法,启示

    解决方法:在我负责的部分不依赖对方的初始化过程直接填入固定的值,这样就可以workaround 这个问题。问题的根源还是文档错误以及相关的软件没有仔细检查相关的代码。 启示:要控制住情绪,应该和相关的软件负责人员一起合作解决这个问题,而不是直接assign回去转移压力,这样其实是恐惧和不自信的表现。另外在项目准备阶段要熟悉所有的相关环节,做到对所有的代码的工作原理都要知其然并知其所以然,这样才不至于碰到紧急的问题时不知所措,手忙脚乱。

决定我们所做决策正确与否是看我们所做出的假设是不是符合世界运行的规律,符不符合普世的价值观。复盘的过程就是我们通过反思,修正自己的世界观,价值观使之接近真实世界运作规律的过程。