部门重点在web端,app组就我一个测试的,安卓、iOS、后端自个儿一并负责了。互联网公司嘛,基本都是一个人当三个人用。
曾碰过一个大项目,前后端涉及改动达10个系统。好家伙,这是当时工作三年的我第一次遇到牵连这么大范围的项目,还只有我一人负责。
到上线那天我我将checklist写清楚,发布失败的回滚步骤也准备好后,开始发布第一个项目。
一开始顺顺利利的,一边代码上线一边看我们组的监控,很正常。快到第8个项目时,部门的故障群里开始有人反馈某某系统打不开了。
我心想那是别组的,前两天在同样的高峰期也遇到这个问题,我这个项目都发了快两个小时了,应该和我风牛马不相及。
可那天就我发布上线,隔壁组的开发TL急忙忙找过来说,应该是我发的其中一个系统导致的。于是大伙一致决定暂停发布,先回滚。
我当时是有些不淡定了。我的手紧张得有些发抖,故障群一个接一个报问题。10个系统啊,我一个个窗口打开,眼前有些花有些乱,一着急还真将一个系统回滚错了。后来深呼吸,冷静下来认认真真地比对回滚步骤操作完。
此时,系统已挂了半个小时,造成的损失须评估。
负责那有问题的系统开发是部门唯一一个女开发,她紧张得一行一行地检查代码。饭也不吃了,咬着手指头一遍一遍地看自己写的代码。两个小时后发现原来是merge代码的问题,将前几天发生故障的脏代码merge进来这个新分支了,导致同样的慢查询问题出现两次。在测试环境数据太少,所以没发现。
我有些丧,无论如何线上有问题就是测试的锅。压力不小,吃完饭去公司旁边的居民区溜溜,发个仅自己可见的朋友圈:
bug修完是晚上9点。我决定今天将后端系统全部署上线,等观察稳定了,再对外发app。
这次挺顺利的,凌晨2点dev开始处理数据,我去沙发眯会。两个小时后数据处理完,我将剩余的系统全部署后,开始观察数据,发现新数据没吐出来。
dev排查问题,处理缓存,我俩验证完数据后已是天亮了。我小睡两小时,开发一眼没合,不能说不累的。
项目一天没完成利索心里不舒服,回去小睡几个小时,上午十点多回去继续完成app发版事宜。
这个项目完成的下个月我就怀孕了,再也没有碰过这么刺激的项目。后来公司主张“大前端”理念,app组被拆散,我重新归测试TL管。app人员被开的开,自己走的走,等我休完产假回来已是物是人非了。
这一行有太多年轻人付出睡眠、时间,甚至是健康。如果你想知道北京的IT是怎么样的,可以凌晨去看看中关村,高楼灯火璀璨,今天又是多少程序员的不眠之夜?
现在想想,在app组里时竟是最好的时光。PM对待产品严谨细致,不允许任何“随便”,会自己动手设计UI,app开发脾气一个个的好脾气,有问题马上改,从不甩锅。都是相处两年的同事,经常组织线下活动。
李笑来说,大多数人的价值观是现在>过去>未来,而如果换一个角度:未来>现在>过去,选择可能会不一样。
我想我该是活在过去的人吧,所以迟迟不move on。所以有了这个公号的产生,做个普通的记录者,将遇到过的程序员故事甚至是事故给记录下来。
你我皆凡人,生在人世间,可这些故事不应该被遗忘。