跳转至

第二十四章 · 电话

十月十三日,星期二,下午两点。

消息服务 MR 已合入,CI 跑完,十七个测试全绿。陈稳关掉页面,打开对账模块重构方案。

方案文档右上角写着「v5.1」,最后修改时间十月十二日二十三点十一分。他昨天改完的那一版,保存在本地,没有发出去。纪衡说「按你的计划执行」,但没有说发给谁。

方案第一页的标题已经改了:「对账模块重构方案——事件驱动加增量比对,实现 T+0 实时对账(可推广)」。「可推广」三个字是他加上去的,括号。加完以后他看了三遍,觉得不对,但说不出来哪里不对。

他打开张磊上周五那条消息,读了一遍。

「数据治理方案我们这边已经在推广了。营销技术部那边反馈说字段对齐效果很好,人工操作时间从四十分钟降到了十五分钟。周其正那边也在问能不能用。」

人工操作时间从四十分钟降到十五分钟。这个数字张磊写了,陈稳没有写进方案里。方案的数据治理部分只写了「字段对齐,统一四十二个字段」。

他打开记事本,写一行:十月十三日,下午。张磊说字段对齐,营销技术部人工操作时间从四十分钟降到十五分钟。这个数字应该写进方案里。

手机亮了。易文的消息:「纪衡怎么说。」

他打字:「方案可以。按计划执行。先做结算系统,做完再跟张磊对接。」

「他有没有说,做到什么程度算做完。」

方案里三个阶段,每个阶段的时间他都写了,但「做完」的标准没有写。纪衡也没有问。

「没有。」他打字。

「那你要自己定一个标准。」

易文是对的。如果他不定标准,纪衡的标准就会变成「什么时候我觉得可以了」。八月那次双月汇报,纪衡说「没有重点」,他回去想了三天才想明白「重点」是什么。他现在不想再等别人告诉他。

他导出方案,发过去。文件大小三百四十KB,十六页,两张 E-R 图,一张流程图。

二十分钟后,易文回复了。

「第三部分可配置数据加载接口,你写的是'支持按业务线配置字段名、字段类型、数据源'。你现在有几个业务线能接入。」

「结算系统一个。」

「第二个呢。」

方案里写的是「可推广」,但没有第二个业务线来验证。纪衡没问,但下周他问的时候,陈稳答不上来。远处空调的风口,塑料片被吹得啪啪响。

「那我现在找第二个业务线。营销技术部。周其正之前问过数据治理方案能不能用。他那边有对账需求。」

「那你问过他,他需要什么吗。」

「没有。」

「那你先问。」

陈稳打开通讯录,翻到周其正的名字。上一次联系是九月下旬,周其正问字段映射的问题,他回了一段话,周其正回复「谢谢,我试一下」,然后就没有了。

他打字:「周其正你好,我是结算组的陈稳。之前聊过字段映射的事。我这边在做对账模块重构,想了解一下你们那边对账的需求,看有没有可以合作的地方。」

发送。屏幕左上角显示「已读」,然后没有回复。

他等了三分钟,把手机翻过去,屏幕朝下。

消息服务日志最后一条是十三点五十八分发送的,消费成功,无异常。他刷新了一下,又一条,也消费成功。他按 F5,多了四行,全部通过。他继续刷新,第七次,第九次,第十四次。全部通过。

他关掉日志页面,打开方案,开始写第一阶段的技术方案。第一件事:建全局数据字典。他复制二号楼那三个视图的建表语句,字段名统一为 settle_ 前缀,类型统一为 varchar(64) 和 decimal(18,2) 和 datetime。他写了一段注释:「字段对齐原则:统一字段名,统一字段类型,统一空值策略,统一时间戳类型。」

下午五点四十一分。阳光从窗外照进来,在桌面上投下一块斜的亮斑。他盯着那块亮斑,觉得它每天下午都在同一个位置出现,但他说不上来是什么时候开始的。

手机震动了一下。周其正回复了。

「方便的话明天上午十点过来聊一下。一号楼四楼,营销技术部会议室。」

「好。」

他放下手机,又拿起来,打开易文的对话框。

「周其正说,明天上午十点过去聊。」

「可以。你准备一下,去的时候带三样东西:你的方案,你之前做的字段对齐样例,还有一个数字——他现在做对账,一个人,一天,能做多少条。」

「好。」

「你问完他,告诉我。」

陈稳把手机放下,打开方案,在第三页加了一行:待确认营销技术部对账数据量级。

他写完,保存,关掉。然后重新打开记事本,在最后一行写:「给易文打电话。」

纪衡说「你学的东西,最后是你自己的。不是她的。」这句话的意思是,以后不要再问她。但陈稳知道,如果他不问,明天去见周其正的时候,周其正问三个问题,他可能又答不上来。上一次方案评审有易文在背后帮他预判了蒋辉会问的三个问题。这一次没有。

他按下了通话键。

「喂。明天上午十点,我去营销技术部找周其正。他问我的时候,我不知道他会问什么。」

「你带方案了吗。」

「带了。」

「字段对齐样例呢。」

「也带了。」

「那你还怕什么。你怕他问你一个你答不上来的问题。」

「嗯。」

「你现在能做的最好的准备,不是猜他会问什么,是把你方案里每一句话都变成你自己的。如果你方案里的每一个字都是你自己写的,他问什么你都能答。」

陈稳把方案打开,翻到第一页。

「方案标题里'可推广'三个字,是你自己写的还是我帮你写的。」

「我自己写的。」

「那它为什么可推广。」

「因为数据加载接口设计成可配置的,业务线只需要改字段名、字段类型、数据源,不用改代码。」

「你方案里写了吗。」

「写了。」

「那你为什么还怕。」

「因为我不知道,他会不会问一个我没有想过的问题。」

「他会。因为他是业务方,他不知道你的方案有多复杂,他只想知道一件事:这个方案能帮他解决什么问题。你只要告诉他,你现在做对账,一天做多少,做了多久,用这个方案以后,能省多少时间,就够了。」

「你那个字段对齐,营销技术部人工操作时间从四十分钟降到了十五分钟。这个数字你在方案里写了吗。」

「没有。」

「写进去。」

「还有别的事吗。」

「纪衡说,我跟你学的东西,是我自己的,不是你的。」

电话那头停了大概两秒。键盘声节奏变了一下,然后恢复。

「他说的没错。」

「那你为什么还接我电话。」

「因为他说的没错,不代表他说的是对的。」

这句话陈稳没有立刻理解。

「你明天去的时候,问周其正三个问题。第一,他现在做对账,一个人一天能做多少条。第二,他那边对账异常率是多少。第三,他想不想把异常率降下来。三个问题问完,你再说你的方案。挂了。」

电话挂断。屏幕回到通讯录,通话时长四分十七秒。

他打开方案,在第三页数字后面加了一行:「营销技术部字段对齐后,人工操作时间从四十分钟降至十五分钟,降幅百分之六十二点五。」他写完了,看了一遍,保存。

晚上七点。何晚发消息:「今晚吃什么。」

他打字:「我回来做。」

回到家,何晚在沙发上坐着,手机屏幕亮着,是备课的课件。他换鞋的时候,何晚抬起头。

「你那个方案,改完了吗。通过了。」

「通过了,你不高兴吗。」

「没有不高兴。」

「那你怎么看起来不太高兴。」

陈稳打开冰箱,拿出一把青菜,两个鸡蛋。他关上冰箱门的时候,何晚站在厨房门口。

「你那个方案,做完了,然后呢。」

「然后做第二个业务线。营销技术部。明天上午十点过去聊。」

何晚看着他打鸡蛋,蛋液在碗里转圈。

「你现在会主动去找别人聊了。」

「以前不知道自己做的东西有什么价值。现在知道了。结算系统稳定运行,不出事,就是最大的价值。但以前觉得,只要做到了,别人就会知道。现在知道,我做到了,还要让别人知道。」

「你变得会说话了。我不知道这是好还是不好。」

何晚说这句话的时候,语气和之前几次不一样。之前她说的「你变了」后面跟的是「但你不知道你变了」。这一次她没有加后面那句。

陈稳把菜端上桌,盛了两碗饭。何晚坐下来,夹了一口菜,嚼了,咽下去。

「你做的菜,比以前咸了。」

陈稳夹了一口,确实咸了。他以前做菜从不咸,放盐的量是固定的,半勺,从来不改。今天放盐的时候,他在想明天的问题,手抖了一下,多放了。

晚上十点。陈稳坐在电脑前,打开方案,从第一页开始读。

第一页:标题、背景、现有问题。异常发现时间 T+1、异常率百分之十一点七、人工核对耗时平均每人每天三小时。这三条是他自己写的,易文没有改过。

第二页:方案概述。事件驱动加增量比对,T+0 实时对账。

第三页:数据治理。字段对齐、视图创建、数据清洗、数据质量监控。四十二条字段映射规则。

第四页:字段对齐原则。他改了一处措辞。

第五页:实时对账流程图。六个节点:事件监听→数据加载→规则比对→异常标注→结果入库→告警通知。

第六页:可配置数据加载接口。

第七页:时间计划。

第八页:风险与应对。他加了一条:方案失败后的回退方案——如果实时对账不可用,回退到现有 T+1 对账流程,数据不丢失,仅延迟。

他关掉方案,打开记事本,写一行:十月十三日,晚上十点。方案读完。加了一条回退方案。明天上午十点去营销技术部。

手机上有易文的消息:「明天去之前,把方案发给我看一下。」

「刚才发你了。我明天早上看。」

「你今晚早点睡。」

他放下手机,躺在床上,看着天花板。天花板没有裂缝。他想起两个月前躺在床上看天花板上的裂缝,想着物业说「不影响结构」。现在那条裂缝还在,但他已经两个月没有抬头看它了。

对面那扇窗的灯,还是黑的。

他闭上眼睛,想着明天的三个问题。他不知道自己能不能问好这三个问题。但他知道,如果他不问,他永远不知道答案。

十月十四日,星期三,上午九点四十分。

他提前二十分钟到了营销技术部。一号楼四楼,走廊尽头,门牌上写着「营销技术部·会议室」。门开着,没有人。

他坐在会议室里,面朝门,手机放在桌上,方案放在手边,打印出来的,十六页,订书机钉在左上角。

九点五十八分,周其正走进来。

「陈稳,早。」

「早。」

周其正坐下来,手里拿着一杯水,没有带笔记本。他看了一眼陈稳面前的打印稿。

「你带了方案过来。」

「我看看。」

陈稳把方案递过去。周其正翻到第一页,看了大概三十秒,翻到第二页,又看了大概三十秒,然后合上,放在桌上。

「你这个方案,我看懂了。但我有一个问题:做完了,我能直接用吗。」

陈稳想起易文说的三个问题。他问第一个问题之前,周其正已经问了他一个问题。这个问题不在预判里。

「不能直接。但如果你需要,我可以帮你做配置。」

「需要我做什么。」

「你告诉我,你现在做对账,一个人,一天能做多少条。」

周其正把水杯放在桌上,没有端起来。「大概两千条。」

「一个月呢。」

「十万条左右。」

「异常率呢。」

「没有统计过。」

陈稳在记事本上记:营销技术部,对账一人一天两千条,月十万条,异常率未统计。

「你想不想把这个异常率统计出来,然后降下去。」

周其正看了他一眼。「想。」

「那我帮你做。先做配置,一周。跑起来一个月。」

「好。配置好了,告诉我。」

周其正站起来,伸手拿水杯,又放下。「你那个数据治理,张磊那边已经在用了。效果不错。」

「你那个方案,做完以后,能共享吗。」

「能。」

「那就好。」

周其正走出会议室,在门口停了一下,回头说:「你变了很多。上次见你,你话没这么多。」

周其正说完,走了。

陈稳坐在会议室里,一个人,面前是那杯他没有喝的水。他拿起方案,翻到第六页,在「可配置数据加载接口」下面加了一行:营销技术部,配置周期一周,运行周期一个月。

他打开手机,看到易文的消息。

「去了吗。怎么样。」

「他一个人一天做两千条,一个月十万条,异常率没有统计过。他说想降下去。配置一周,跑起来一个月。」

「可以。你什么时候开始做配置。」

「今天。」

「你做完配置,告诉我。」

他放下手机,把方案装进包里,站起来,走出会议室。走廊里没有人,阳光从窗户照进来,在地板上投下一块斜的亮斑。他踩上去,走了两步,又停下来,在亮斑中间站了一会儿。

他想起自己来恒澜的第一天,人事带他走了一圈,最后停在这个位置,说「你们结算组在二号楼,不在这一层」。他当时站在走廊尽头,不知道自己在哪。

现在他知道了。

回到工位,他打开方案,在第三部分加了一页:营销技术部接入示例。数据量级、配置样例、接入后的预期效果。他写完了,保存。

然后打开消息服务日志,刷新了一下。最后一条消息是十四分钟前发送的,消费成功,无异常。他刷新了一下,又一条,也消费成功。他继续刷新,第五次,第六次,第七次。全部通过。

他关掉日志页面,打开记事本,写一行:十月十四日,上午十点。营销技术部接入确认。配置周期一周,运行周期一个月。

他写完了,保存,关掉。然后重新打开,在下面加一行:「给易文打电话,说纪衡说的那句话。」

他按下通话键。

「配置开始做了吗。」

「还没开始。纪衡说,我跟你学的东西,是我自己的,不是你的。这句话我知道他说的意思,但我不知道我该怎么想。」

「你不需要想。你只需要继续做。你学会了什么,你做成什么,最后都是你自己的。不管纪衡说什么,不管别人怎么看,你做的事,你自己知道。」

「你昨天说,他说的没错,不代表他说的是对的。」

「他说的是事实,不是真理。你确实从我这里学了很多东西。但这些东西是你学会的,不是我给你灌输的。你问的那些问题,你自己想的那些答案,你写的那些方案,都是你自己的。他说的没错,'你学的东西,最后是你自己的'。但他那句话的潜台词是,'你不要再跟她学了'。这个潜台词,不是对的。你听懂了吗。」

「听懂了。」

「那你继续做你的配置。」

电话挂断。他放下手机,打开方案,开始写营销技术部的接入配置。接口配置、数据源配置、字段映射配置。写完了,跑了一遍,提交 MR。

commit message:「feat: 可配置数据加载接口——营销技术部接入示例,字段映射配置,数据源配置。

接入方:营销技术部 数据量级:一人一天约两千条,一月约十万条 配置周期:一周 运行周期:一个月」

他写完提交,合入,没有 reviewer。他不需要 reviewer,因为这是配置,不是代码。

窗外阳光很亮,对面楼的玻璃反射着光,刺眼。他看了一会儿,收回目光,落在监控大盘上。结算成功率百分之九十九点九九。资源池使用率百分之三十三。消息服务积压零。全部正常。他刷新了一下,又刷新了一下,又刷新了一下。全部正常。

他关掉监控大盘,继续写方案。第一阶段全部内容,两千三百字,数据字典、数据质量监控、字段对齐规则、视图创建脚本。他写完,看了一遍,保存。

晚上七点。何晚在厨房里,锅里在炒菜。他换好鞋,走到厨房门口。

「回来了。洗手,吃饭。」

一盘青菜,一盘肉丝,一碗汤。和昨天一样,但味道不一样,不咸了。

「你那个方案,怎么样了。」何晚说。

「今天早上去了营销技术部,跟他们的负责人聊了。他说可以接入。做配置,一周。跑起来一个月。效果好了就推广到其他业务线。」

「你变了。你以前只会说,'我做了'。现在你会说,'我做了什么,接下来做什么,一个月以后怎么样'。」

「因为以前不知道怎么回答。现在知道了。」

「你那个易文,她教了你很多。你学到了什么。」

「学会了怎么把一件事说清楚。」

何晚看着他,筷子停在半空中。「你学会了,那你觉得,你现在说清楚了吗。」

「还没有。但比以前清楚了。」

何晚把筷子放下了。「你以前不会说这样的话。你以前只会说,'还行'。现在不一样了。」

「以前不知道,'还行'是不够的。现在知道了。」

何晚看了他一会儿,拿起筷子,继续吃饭。

晚上十点。他坐在电脑前,打开方案,从第一页读到第十六页,没有发现需要改的地方。

他关掉方案,打开记事本,写一行:十月十四日,晚上十点。方案已定稿。营销技术部接入配置已提交。明天开始做数据质量监控的 SQL 脚本。

手机上有易文的消息:「今天怎么样。」

「配置提交了。方案定稿了。」

「明天做什么。」

「数据质量监控的 SQL 脚本。」

「写完了告诉我。」

他放下手机,躺在床上,看着天花板。天花板没有裂缝。

对面那扇窗的灯,还是黑的。

他闭上眼睛,想着明天要写的 SQL 脚本。他想起自己两个月前写的那段数据质量监控脚本,十五行 SQL,写了两个小时,因为当时他对数据质量的理解就是「不为空、不重复、不超时」。现在他知道,数据质量监控不只是这些,还包括字段值分布、字段值格式、字段值之间的逻辑关系。

他不知道自己什么时候学会的。但他知道,他已经学会了。

过了一会儿,他拿起手机,打开记事本,在最后一行写:10.14.1.88。确认周其正是否知道这个 IP 的分配记录。

他写完了,保存,关掉。窗外很安静,对面楼的灯亮着几扇,零星的。他看了一年多的那扇窗,灯是黑的。

他想起自己第一天来恒澜的时候,站在办公室窗前,看到对面那扇窗亮着灯。他当时想,那扇窗里住着谁,是不是也像他一样,加班到很晚才回家。

他闭上眼睛,没有继续往下想。


← 第二十三章 谈话 · 目录 · 第二十五章 三分钟 →