Luna职场 | 聊聊「靠谱」

November 13, 2022 字数 1670 4 min


0. 前言

这周工作压力很大,有过加班到凌晨的日子,也有过惶惶不安无比焦虑的时刻。

压力的来源是一个老系统的数据迁移项目,这个项目上线了一个月,爆了好多大大小小的雷,我被任命为该项目的「救火队队长」。


1. 项目情况

  • 上个月(10 月)中旬项目上线,当时的负责人 A 说上线的时候遇到了很多的问题,于是拉着一群人开了个复盘会,还写了一些会议记录和待办事项;
  • 上线后第一周,发现当天原本应该发送的问卷数量是正常数量的十倍,这是第一个严重事故,也就是从那天开始我被任命为该项目的「救火队队长」,介入了这个项目的善后工作;
  • 当时根据大家给的信息,我整理了一些项目存在的问题,开始着手分配任务,其中有一项工作跟剩余数据迁移相关(我们第一次只迁移了一年的数据,而客户要求所有历史数据都能看到);
    • 那时候我根据收集到的信息,认为第一次的数据迁移没有问题,只需要用同样的方式去迁移剩余数据即可;
    • 为了测试剩余数据迁移,我们需要有足够的数据去测试,于是 A 搞了一个单独的 VM,去测试这个过程(这个 VM 的权限只有 A 有);
  • 上周三 A 说测试没问题,周四按照计划部署,但是当天又发现了一些数据对不上的问题,只能把这次的部署进行了回滚;
  • 上周五我仔细去看了部署的细节,发现其中一个数据库脚本有问题,而且这个脚本是第一次部署的时候就用到的(所以第一次部署就错了);
  • 这周我们紧急修复了脚本的问题,刚修完又发现另一个问题(也是第一次部署中就存在的),又做了一次紧急修复;
  • 这周我拿到了 VM 的权限,周四我把所有的数据都比对了一遍,确定第一次部署没有其他问题之后,模拟了剩余数据迁移的情况,并且继续去跟原始数据比对,保证所有数据都能对得上;
  • 周五基本上所有数据我都查过一遍了,心里比较有谱,确定下周二可以上线,恢复所有数据;

2. 复盘 —— 哪里出了问题?

最大的问题在于,我过于相信「第一次部署没有问题」这个判断,没有坚持要求拿到数据库的权限并且去做一次比对,而是直接让同事沿用第一次的方法来做剩余数据迁移;

其次,这个项目前前后后大概有 3 名程序员经手,我对其中几位程序员的技术能力非常信任(我觉得他们技术都比我强,做的东西肯定没问题),因此我没有实质性地参与到具体的细节中,只是给出了要求和目标;

最后,我起初没有意识到,在整场救火过程中,细心和靠谱是最重要的品质,而这两项是我的强项。


3. 我对「靠谱」的理解

很长一段时间(包括现在),我都特别羡慕那些思路敏捷的硬核程序员,我掌握概念和解决问题的速度没有他们快,而且一旦他们说话语速太快我就会跟不上。

这也导致我总觉得自己没有「天份」做一个好的程序员,虽然我在努力去补自己的短板,但和他们相比,差距还是遥不可及。

于是我把自己的重心放在了管理这块,告诉自己,只要别人能补足我的技术短板,我就可以依靠他们的强项来完成项目。

这次我也选择了「信任他人的技术能力」,我去做统筹协调。

但是这周的经历中有几个让我印象深刻的点:

  1. 周一我坚持说数据库脚本是第一次部署的时候就搞错了,而其他程序则说是第二次部署开始才有问题;
  2. 我说这个脚本出错会导致数据出现错误关联,我们需要进行修复(而且修复要考虑多种情况),而其他程序一开始认为这个问题的修复很简单;
  3. 周四我做记录比对的时候用一个专门的 excel 文档来记录,把所有的异常数据都一条条做了排查,这个过程花了6-7小时,全神贯注、一丝不苟,每一条数据都必须要对得上或者能解释清楚为什么没对上;

简而言之,我高估了「技术能力」对项目成败的影响,低估了我的强项 ——「细致」和「靠谱」—— 的价值,而好的程序员不仅要有敏捷的思维,更要值得信赖。

他们确实更快,但我更稳。

我依旧需要依赖其他程序员的协助来完成项目,但我不应该完全放手,盲目相信别人的「稳定性」;我也不应该完全相信别人的判断,我要相信自己的经验和直觉,坚持自己的看法(很多时候,我都能看到不同角度的盲区)。

我的确不是那种「高天份」的程序员,但我是个能把事情办成、把控细节、保证项目质量的程序员。

虽然这周的救火经历并不那么愉快,但庆幸的是,我从中看清了自己独特的价值。

毕竟,所有管理者都知道,能委以重任的人必须足够「靠谱」。


Talk to Luna


Support Luna