出了正月十五,庚子年春节假期也结束了。结束了这个忙碌的“假期”,撇了一眼窗外微微泛青的天色,安静得出奇,然而分明“城头铁鼓声犹震,匣里金刀血未干”。心头热血难平,以此小记团队抗疫的点滴。
年末将至。为了避免耽误全年的研发进度,大家把年假都集中在春节前后,年底冲刺的紧张氛围稍稍消减。1月13日,如往年一样,制定好了2020春节保障计划,确认好了一级值班、二级响应的名单和排班表。并准备好了保障群,随时响应一线需求。预防针每年都得打,已经成了职业习惯。没想到这个群后来成了一个不打烊群,成了PE抗疫的主战场。
1月20日晚的新闻联播发布正式从国家层面开始组织防控新冠肺炎。之后的每一个小时的所见所感都在刷新我们的认知。白衣逆行,全民筹捐,党员奔走,疫情之下,英雄辈出。然而你我皆凡人,联系你我与此大事件的唯一羁绊,也就是我们的事业了。万国数据响应了疫情防控,这个不意外,意外的是如此迅速,让大家始料未及。公司层面最大限度的识别到风险,并于1月20日就早早的开启了应急预案。
1月25日0点,除夕夜的钟声敲响,在庚子年的第一个子时,华南数据中心率先启动了“半封闭”应急预案,以此保障数据中心人员的安全,保障数据中心运行的安全,进而保障客户业务连续性的安全,一线的执行力让人惊叹。之前还调侃说春节保障的微信群最好连红包都不要发,怕被吓着。然而13点03分,第一个系统支持的需求,就摆在了我们面前。调得了情,打得了闹,应得了急,干得了票。玩笑归玩笑,面对紧急事务我们还是专业沉稳的,干起活来大家还是认真的。大年初一的年饭桌上直接掏出电脑,一小时设计UI定稿,2个前端3个后端1个测试的小分队也在一小时内就位。
初战:客户服务app通知,人员进出系统添加疫情接触选项,站内信,微信提示,同步开始提前规划并开发统计数字地图的处理逻辑及汇总表。
下午16点20,开始报表需求收集及确认,一旦需求确认,等不了UI设计,只能同步开始,并快速迭代开发。这个时候每个人都想尽量跑在用户前面。
晚上23点56分,系统功能上线完成。报表也完成统计,线下提供。
团队没有让需求过夜,初战告捷,小试牛刀。
1月27日19点52分,人员进入防控升级。需要全新的交互流程支持并记录人员的体征、近期行程,且与人员进出系统联控。
28日00点34分,二维码入场规则系统,需求范围确定,目标全国数十多个园区完成上线。流程系统相对复杂,紧急状态下,需求确认的效率非常之高。12点21分流程梳理完成,详细设计完成。有了上次的经验,全员已经进入备战状态,开发人员早早就调配到位,4人小分队迅速投入开发。花了不到15个小时,29日03点08分系统上线,外高桥园区试运行,全国逐步推广上线,至1月31日全国三十多个园区入口二维码下发完毕。全国上线目标达成,执行率100%。
上线后,一直到2月3日,每天的人员体征及其他核验条件都在调整,业务规则,审批流程都不断有新的优化。每次迭代周期都没有超过12个小时。
1月31日11点52分,就在刚刚迭代完“二维码入场规则系统“,且全国上线的那一刻,“五色标签规则优化”,及“封闭人员GPS定位监控”的需求降临了。
在经历了三次需求变更、人员数据收集,审批规则等各种调整,现场把贴纸准备到位后,才于2月3日22点19分更新上线。
然而需求并不只有这一个,随着返岗日期的临近,形式严峻,需求井喷。
1月31日17点34分,接到“五色标签规则优化”需求后的5个小时,同时启动“工地准入系统”,开始需求收集和系统设计
2月1日21点55分原型设计完成
2月2日3点55分UI设计完成
2月3日2点25分上线
2月3日16点44分二次迭代上线。
2月2日11点54分,完成疫情数据统计系统的需求设计,项目启动。
2月2日20点23分,UI设计完成。
2月4日1点47分,开发上线。
同日17点10分迭代更新,UI还颇用心的一口气做了3个海报。23点33分迭代更新第二版,这也创造了一个记录,一天之内同一个系统,发布迭代了三个版本。只能用有求必应使命必达来形容了。
到这里,大量的应急性需求均处理完毕,告一段落,接下来2月5日至9日,开始对前几天上线系统的持续性需求进行迭代,并且对之前暂缓的次级需求进行评估排期。
一切工作有条不紊,应急工作为后续措施优化争取了时间。团队开始要针对现有风险流程和监控措施进行优化了。
风险流程需要针对疫情风险进行专题治理。
数据中心值班监控管理也因为封闭措施,急需升级区域化监控来降低人员压力。
风险系统快速响应了一套侧重疫情防控的风险流程。2月9日确认需求,2月10日完成设计,连续两晚的通宵,赶在2月13日凌晨5点上线。
T2是针对值班岗区域监控的升级,为了响应疫情需要,这个需求早在2月2日就提上议程,2月6日完成需求定稿几个产品原型设计,2月9日硬件到场、UI定稿,2月10日开发测试kickoff,2月14日情人节晚21点上线。
回顾这次春节紧急开发,参与产品经理8人,架构师4人,前后端开发共计11人,测试4人,项目经理1人,上线团队5人,UI 1人。识别需求86个,累计完成设计上线77个。需求到开发的条线,最多的时候并行三条,上线日期分布密集,平均交付时间不足48小时,而且最最要命的,还是完全分散的远程协作开发,沟通成本巨大。从业十四年,谦虚的说,我没碰到过。如果没有日积月累的业务经验、协作方式、和彼此的信任默契,委实难以完成这种任务。
那么业务经验是什么?2019年团队全年完成了7000张票,上线了30多个项目,最多的时候一次上了9个。团队离职率为0,团队数据中心工具研发经验人平均大于3年。
协作方式又是什么?除了微信群,还有需求开发过程把控的平台以及代码版本控制平台。
疫情针对性开发的一开始,就创建了这个dashboard。
每个针对性的开发,都对应清晰的需求文档,开发过程都关联了代码的版本管理,上线时把相关票号的修改内容合并发布。一目了然,避免遗漏,亦方便寻踪。
同时git的发布流程早已标准化,经过一年的每周迭代发布的打磨和成员熟悉,版本控制效果不错。发布质量和效率也一直维持较好的状态。这个能力极大的支撑了这段时间的疯狂迭代发布。
最后,解释下什么是默契和信任吧。看下这些藏在群后面,电话、视频另一端的兄弟们吧。
生日当天发烧,把自己关在小书房的小昭。
整个春节坚守数据中心,为大家收集第一线需求,交付产品设计的人称“GDS刘德华”的阿华。
两位预产期依然在岗的准爸爸,明星和理杰。
奔波在亲人病榻和岗位间的兄弟。
那天,凌晨5点多,风险上线的时候突然起意让大家都开了下摄像头,截图做了一下记录。这就是这段时间并肩作战的伙伴们的工作状态。连续十几日的高强度交付,团队尽管已是一身疲惫,还是难掩上线的喜悦。