跳转至

第八章 · 老梁走了

双月会第二天,陈稳到公司,刷卡进闸机,等电梯,电梯门打开,里面没有人。他按了八楼,电梯门关上,缓缓上升,在三楼停了一下,门开了,没有人上来,又关上了。

他走到工位,坐下来,打开电脑。屏幕亮起来,右下角的时间是八点零七分。他打开邮箱,看了一遍,没有新邮件。他打开监控大盘,绿的,平的,拦截器状态正常,灰度数据没有异常。

他打开 IDE,开始写代码。他写了一个数据校验的单元测试,写完,跑了一遍,绿了,然后提交。commit message 写了三行。

他提交完,站起来,去茶水间接水。茶水间里没有人,咖啡机上面的指示灯闪着绿色,水箱里的水冒着热气。他接了一杯热水,喝了一口,烫的,他放下杯子,等了一会儿,又喝了一口。

他端着杯子往外走,在走廊拐角看到一个人,从副总办公室的方向走出来,往这边走。那个人穿着格子短袖衬衫,领口有洗不掉的印子,左手拎着一个帆布包,右手拿着一份文件。

陈稳停下来。

老梁也停下来。

他们隔了大概三米,走廊里没有别人,头顶的灯管发出嗡嗡的声音。

“陈稳。”老梁说。

“梁哥。”

老梁往前走了一步,把文件夹在腋下,然后从口袋里掏出一包烟,抽出一根,看了陈稳一眼,又放了回去。

“我老婆昨天跟我说了一句话,”老梁说,“她说,你再不走,命都没了。”

陈稳没有说话。

“我昨天想了一晚上,想通了。”老梁把烟盒放回口袋,把文件拿回手里,说,“技术支持中心也不去了。我提了离职。”

陈稳看着老梁的脸,老梁的嘴角有一道很浅的干纹,左眼下面的眼皮在跳,跳了三四下,然后停了。

“什么时候走。”陈稳说。

“今天。东西已经收拾好了。”老梁侧了一下头,往工位的方向看了一眼,“纸箱在那边,准备搬下去。”

陈稳没有说话。

“你那个拦截器,昨天上线了是吧。”老梁说。

“嗯。”

“灰度数据我看了一眼。一千八百多,全过。你那套代码我上周在 MR 里扫过一遍,逻辑没什么问题。”

“嗯。”

“后面的事,就看你自己了。”老梁说,“纪总这个人,不好糊弄,但也不坏。”

陈稳端着杯子,水已经凉了,他没有喝。

“我那位置,你坐过去也行。”老梁说,“窗户那边光线好一点。”

“不用。”

老梁点了点头,没有坚持。他往电梯的方向走了一步,又停下来,回头说:“电梯口那个纸箱,帮我看着一下,别让人拿走了。”

“好。”

老梁走了。陈稳站在那里,端着杯子,手臂伸着,杯口朝上,水面上映着天花板上的灯管,一条亮白色的线,在水面上晃了一下,又平静了。

他端着杯子走回工位,坐下来,把杯子放在桌上,没有喝。他打开 IDE,屏幕亮了,光标在最后一行后面闪,他看了几秒,没有打字。他关掉 IDE,打开监控大盘,绿的,平的,没有变化。

他站起来,往电梯口走。电梯口旁边放着一个纸箱,纸箱不大,大概是装打印纸的那种规格,开口用透明胶带封了两道,侧面用马克笔写着“梁栋”,字有点歪,笔画到末尾的时候拖了一下,收不住。

纸箱放在地上,靠墙,上面压着一个搪瓷杯,杯口朝上,里面积了一层灰,杯口有一个磕掉瓷的地方,露出里面灰色的底。

陈稳站在那里,看着纸箱,看了十几秒。他没有弯腰,没有碰那个杯子。

电梯门开了,有人走出来,看了他一眼,走了。电梯门又关上了。

他走回工位,坐下来,打开邮箱,看到一封新邮件,发件人是老梁,收件人是结算组全员,抄送纪衡,标题是“各位,我走了”。

他点开邮件,正文六行:

“各位同事,我梁栋今天正式离职。

在恒澜十一年,谢谢大家。

技术支持中心的工作已经交接给张毅,结算组的工作由纪总直管。

陈稳的 settle.guard 项目已上线,后续由他继续维护。

祝大家工作顺利。”

陈稳看了一遍,关掉。他看到右下角收到一条消息,是蒋辉发的。

“老梁走了?”

“嗯。”

“什么时候的事。”

“今天。”

陈稳把手机放下,打开 IDE,继续写代码。他写了一个小时,又提交了一次,站起来,去食堂吃饭。

食堂里人很多,他端着餐盘找位置,看到易文坐在靠窗的位置,对面空着,一个空位,他走过去,把餐盘放在桌上,坐下来。

“老梁走了。”易文说。

“你知道了。”

“群里有消息。他发了一封告别邮件,抄送了全公司他认识的人。”

陈稳拿起筷子,吃了一口饭,菜是青椒炒肉,青椒很老,皮厚,嚼了两下才咽下去。

“技术支持中心也不去了?”易文说。

“嗯。直接离职。”

“他老婆让他走的?”

陈稳看了易文一眼,说:“你怎么知道。”

“十一年恒澜,他老婆能忍到现在,已经算能忍了。”

陈稳没有说话,低头吃饭。

“你有没有想过,”易文说,“如果他十年前走,现在会在哪里。”

陈稳停了筷子,想了想,说:“不知道。”

“他最好的时候是三年前,结算系统从 Oracle 迁到自研中间件,他一个人扛了整个迁移方案。那时候如果走,他手里有东西,谈得下 tech lead 的位置。”

陈稳没有说话。

“但他没走。”易文说,“他老婆能忍他到现在,是因为他一直在说‘明年走’。”

陈稳吃了一口饭,嚼了很久,咽下去,然后说:“你为什么知道这些。”

“数据组跟结算组合作了三年,我看了他三年。他每个季度报的 OKR 都是‘稳定运行’,没有一个季度改过。”

陈稳没有说话。

“你吃完了?”易文说。

“快了。”

“我走了。下午有个会。”

“好。”

易文端起餐盘走了。陈稳坐在那里,把剩下的饭吃完,把餐盘端到回收处,走回工位。

他走到工位,坐下来,看到老梁的工位已经空了,桌面上的东西都没有了。搪瓷杯不在,资料架不在,显示器后面的那盆绿萝也不在。桌面擦过,但在左上角还能看到一圈白色的印子,是杯子放久了留下的。

他看了一眼,把视线移开,打开电脑,打开 IDE,继续写代码。

下午三点,他收到一条消息,是纪衡发的,群发,结算组全员。

“明天下午三点,会议室,全员会。议题:老梁离任后的工作交接与八月计划。”

他看了一眼,没有回复。

下午五点,他收拾东西,关掉电脑,走出办公室。他走到电梯口,等电梯,电梯来了,门打开,里面没有人。他走进去,按了一楼,电梯门关上的时候,他的手伸出去,挡了一下,门又开了。

他站在电梯口,停了两秒,然后走出去,走到电梯口旁边的墙角,纸箱已经不在了。地上有一道白色的划痕,是纸箱在地上拖过留下的。

他站在划痕前面,看了几秒,然后转身,走回电梯,按了一楼,门关上了。

电梯下到一楼,他走出去,穿过大厅,刷卡出闸机,往地铁站的方向走。路灯已经亮了,地面上有一层灰,没有下雨,空气是干的,风吹过来,带着马路上的热气,温的,不凉。

他进了地铁站,刷卡,过闸机,下楼梯,走到站台,等车。地铁来了,他走进去,车厢里人不多,他找了个靠门的位置站着,手扶着栏杆,手指握在金属杆上,杆子是凉的,空调吹出来的风也是凉的,吹在他的脖子上,他缩了一下。

他回到家,换了鞋,走到客厅,坐下来。他拿出手机,打开微信,看到何晚发了一条消息,问他吃饭了没有。他回了一个“吃了”。何晚回了一个“好”。

他放下手机,站起来,走到书房,打开电脑,打开 IDE,看了一遍今天写的代码,没有改动,关掉 IDE。他打开浏览器,搜索“恒澜科技 离职流程”,看了一篇内部文档,关掉。他打开记事本,把今天写的那段 commit message 又看了一遍,每行不到二十个字,三行,写了三件事。

他关掉电脑,站起来,走到窗边,拉开窗帘。

对面那栋楼,亮着灯的窗户不多。三楼亮着,五楼亮着,八楼亮着,九楼也亮着。他看了十一个月的那扇,还是黑的。

他站了一会儿,放下窗帘,走回卧室,躺下来,闭上眼睛,浮现出纸箱上的那行字——“梁栋”,笔画到末尾的时候拖了一下,收不住。

第二天下午三点,陈稳到会议室,里面已经坐了几个人。纪衡坐在靠窗的位置,面前放着一台笔记本电脑。蒋辉坐在靠门的位置,手里拿着手机,屏幕亮着,在看什么东西。

陈稳坐在靠墙的位置,坐下来,拿出手机,放在桌上。

纪衡看了一眼手表,说:“三点。开始。”

会议室的灯管亮着,投影仪开着,投在幕布上,白色的底,什么都没有。

“老梁离职的事,你们都知道了。”纪衡说,“今天说三件事。第一,交接安排。第二,八月计划。第三,组织架构。”

他停了一下,看了一眼所有人,然后说:“第一,交接。老梁在结算组的工作,由我接手。他在技术支持中心的工作,已经交给张毅。他的代码,暂时由陈稳负责维护。”

陈稳没有说话。

“第二,八月计划。拦截器全量,按计划执行。结算系统稳定性继续保持。双月报告正常提交。”

他翻了一页笔记本,然后说:“第三,组织架构。结算组暂时维持现状,不招人,不调岗。但你们的工作量会往上加。下个月开始,值班排班调整,每个人轮值,每周一次。”

会议室里没有人说话。

“排班表今天发。有问题私聊我。”

蒋辉举起手,说:“纪总,值班排班是按什么顺序。”

“按姓氏拼音。你第一个,陈稳第二个,按字母往后排。”

蒋辉点了点头,放下手。

“还有问题吗。”

没有人说话。

“散会。”

纪衡站起来,拿起笔记本电脑,拉开椅子,走了出去。会议室里的人开始站起来,收拾东西,往外走。陈稳坐在椅子上,没有动,他看着幕布,投影仪还没关,白色的光打在幕布上,中间有一块暗斑,是幕布上的灰,吸不住光。

蒋辉站起来,走到他旁边,说:“走吧。”

陈稳站起来,跟着他往外走。他们走出会议室,走到走廊上,蒋辉走在他前面,脚步不快,衬衫下摆塞在裤子里,皮带扣反射了一下走廊的灯光,和昨天一样。

“老梁走之前,有没有跟你说什么。”蒋辉说。

“没有。”

“他那个纸箱,我帮他搬下去的。放在电梯口,怕被人当垃圾扔了,就帮他搬下去了。”

陈稳说:“嗯。”

“他走的时候,没有回头看。”蒋辉说,语气不是描述,是一句陈述,像是在自言自语。

陈稳没有说话。

他们走到工位区,蒋辉往左拐,回到自己的工位。陈稳往前走,走到自己的工位,坐下来,打开电脑,打开监控大盘,绿的,平的,拦截器运行正常,灰度数据累计到两千一百多次了。

他打开 IDE,开始写代码。他写了一个异常处理的 catch 块,把捕获到的异常按类型分了四种,每种写了一个处理方法,写完了,跑了一遍,全绿,提交。

他放下手机,站起来,走到茶水间接水。茶水间里没有人,咖啡机上面的指示灯还是绿色的,水箱里的水还在冒热气。他接了一杯热水,喝了一口,烫的,他把杯子放在桌上,等了一会儿,又喝了一口。

他端着杯子走出来,经过老梁的工位,桌面还是空的,擦过,但左上角那圈白色的印子还在。他看了一眼,走过去,没有停。

他走回工位,坐下来,打开邮箱,看到一封新邮件,发件人是纪衡,时间是下午三点二十一分,正文是排班表,附件里有一个表格,他打开,看到自己的名字排在下周一,值班,二十四小时。

他看了一遍,关掉。

下午六点,他收拾东西,关掉电脑,走出办公室。他走到电梯口,等电梯,电梯来了,门打开,里面站着一个人,穿着白衬衫,黑西裤,戴黑框眼镜,是顾源。

陈稳走进去,按了一楼,电梯门关上。

“你好。”顾源说。

“你好。”

电梯从八楼往下走,七楼,六楼,五楼,中间没有停。

“老梁走了。”顾源说。

“嗯。”

“我上周在楼梯间碰到他,他跟我说了一句话,说‘你帮我看着点陈稳,他代码写得不错,但别让他学我。’”

陈稳看着电梯门上的数字,四楼,三楼。

“我答应了。”顾源说。

电梯到了二楼,停了一下,门开了,没有人上来,又关上了。

“你那个 settle.guard,我看了,逻辑没问题。但有一个地方,你那个 TODO 还没改。”

陈稳愣了一下,说:“跨天时间窗?”

“嗯。如果你的配置里同时出现‘22:00-02:00’和‘02:00-04:00’,第二个窗口会覆盖第一个。因为你的解析逻辑是按小时匹配,不是按时刻匹配。”

陈稳说:“我加了一个 TODO 注释。”

“注释不会修 bug。”

陈稳没有说话。

到了一楼,电梯门打开,顾源先走出去,走了两步,又停下来,回头看了一眼陈稳,没有说什么,转身走了。

陈稳走出电梯,站在大厅里,灯光明亮,地面是光滑的浅色瓷砖,能照出人的影子,模糊的,走上去有轻微的摩擦声。他穿过大厅,刷卡出闸机,走到外面,天还没有完全黑,西边的天是橙色的,有一层薄云,云边上镶着一道暗红色的边。

他站了一会儿,然后往地铁站的方向走。

他在地铁上站着,手扶着栏杆,列车在隧道里穿行,窗户外面是黑色的,偶尔有光,一闪而过,是站台上的灯。他看着窗户上的倒影,车厢内的灯管映在玻璃上,亮白色的,旁边坐着一个穿灰色外套的男人,手里拿着一本书,封面朝下,看不清书名。

他在自己的站下车,刷卡出闸机,上楼梯,走到地面,路灯亮着,路上人不多。他走回家,换鞋,走到客厅,坐下来,拿出手机,看到何晚发了一条消息。

“明天周末,要不要出来。”

他看了几秒,回了一个“好”。

“你想去哪。”

“随便。”

“那去南京路走走?”

“好。”

他把手机放下,站起来,走到书房,打开电脑,打开 IDE,找到 settle.guard 的配置解析代码,找到那个 TODO 注释,在它下面加了一行代码,把时间窗口的匹配逻辑改成了按时刻匹配,跑了一遍测试,二十三个测试,全部通过。

他提交了这次修改,commit message 写了两行:“fix: 跨天时间窗逻辑——按时刻匹配而非按小时匹配。顾源指出。”

他提交完,关掉 IDE,关掉电脑,站起来,走到窗边,拉开窗帘。

对面那栋楼,亮着灯的窗户不多。三楼亮着,五楼亮着,八楼亮着,九楼亮着。他看了十一个月的那扇,还是黑的。

他站了一会儿,放下窗帘,走回卧室,躺下来,闭上眼睛。

他想起老梁说的那句话——我老婆说,再不走命都没了。

他想起纸箱上的那行字,笔画到末尾拖了一下,收不住。

他翻了翻身,面朝墙壁,盯着墙上的光,从窗帘的缝隙里漏进来,在天花板上拉出一条细长的白色线条,和昨天一样,前天一样,和过去十一个月里的每一个晚上,都一样。

他闭上眼睛,没有睡着。

过了很久,他拿出手机,看了一眼时间,凌晨一点二十三分。他打开备忘录,写了一行字:“明天修 TODO——跨天时间窗解析改为按时刻匹配。”

然后他关了手机,把手机放在床头柜上,屏幕朝下,翻了个身,面朝天花板,闭上了眼睛。


← 第七章 蒋辉的方案 · 目录