网易首页 > 网易号 > 正文 申请入驻

被解雇我搬空工位。晚上全部门庆祝签下订单,总裁:你们干了什么

0
分享至

被解雇我搬空工位。晚上全部门庆祝签下订单,总裁:你们干了什么

楔子

“赵总,启明系统不能造假。”林默话音未落,赵天辰将解聘书推过桌面:“你被开除了。”

工位上,旧保温杯、绿萝、女儿照片、代码笔记本,一样样落入纸箱。周明远递来交接单,低声劝他别较真。刘艳路过,冷嘲“早该清理”。

电梯门合拢,林默听见身后有人轻喊“启明”。

楼下秋阳刺眼,他给苏晚发消息:“接小禾,买菜。”笑脸秒回。

十八楼窗边,周明远捡起一张便签,上面只有一行代码和两个字。

第一章 搬空的工位

上午十点,天辰科技十八楼技术部,空气里弥漫着一种黏稠的安静。

林默的工位上,旧保温杯的塑料盖被拧开又拧紧,那盆绿萝的叶片上还沾着昨晚加班时溅上去的咖啡渍。他一项项清点:保温杯,绿萝,女儿小禾三岁时的照片,一本翻得卷了边的代码手写笔记本。顺序和五年前入职第一天摆放时一模一样。

“林默,交接单签一下。”周明远把一张纸搁在桌角,声音压得很低,像是怕惊动什么。他穿着那件永远笔挺的浅灰衬衫,袖口露出一截银色表链。“赵总的意思,今天上午办完。”

林默没抬头,拿起笔在交接单末尾签上名字。那三个字写得平稳,一如他五年里写下的每一行代码。

“你也是。”周明远顿了一下,目光扫过那盆绿萝,“太较真了。赵总给你机会,你低个头,报告改一改,什么事都没有。”

林默终于抬起眼。他没有看周明远,而是望向走廊尽头那间挂着“天道酬勤”匾额的办公室,玻璃墙后面,赵天辰正靠在真皮椅背上打电话,笑得很响。

“报告里的数据,改动一个,整个启明系统的安全校验就是假的。”林默的声音不高,“恒泰的单子一点二亿,交付一个假系统,后面出问题谁担?”

周明远眉头跳了一下,伸手拍了拍他的肩膀,动作很快,像完成某种仪式。“行了,走吧。我帮你叫了货梯,人少。”

这时刘艳从销售部那头走过来,高跟鞋敲在地砖上发出清脆的嗒嗒声。她手里端着一杯星巴克,经过林默工位时停了一拍,目光从纸箱里的旧保温杯扫到那盆绿萝,嘴角弯了弯。

“早该清理了。”她说,声音不轻不重,刚好能让半个技术部听见,“占着核心的位置,耽误公司几个月的进度。赵总留你到今天,够意思了。”

旁边几个同事埋头敲键盘,没人接话。只有坐在林默邻座的实习生小杨从显示器后面探出脑袋,咬了咬嘴唇。

林默把最后一摞打印出来的设计文档放进纸箱。他拿起绿萝,花盆是白色塑料的,边缘有一道裂痕,是去年小禾来公司时不小心磕的。他犹豫了一秒,转身放在小杨的桌面上。

“帮我养着。”他说。

小杨猛地站起来,椅子往后滑出半米:“林哥,我……”

“每周浇一次,别暴晒。”林默打断他,把纸箱抱起来。里面东西不多,底部垫着几张当天的报纸,上面是女儿的照片朝上,小禾举着一朵蒲公英笑得露出豁牙。他看了一眼照片,又看了一眼窗台上空出来的那块位置,五年来他每天对着那盆绿萝写代码,解决一个又一个技术难题。

周明远已经替他按开了货梯门。这部货梯平时用来搬运设备,空间逼仄,灯管嗡嗡作响。林默走进去,纸箱抵住胸口。电梯门合拢前,他听见走廊里有人喊了一声“启明”,声音不大,被门截断了。

他没回头。

一楼大堂空荡荡的。前台的小姑娘抬头看了他一眼,嘴唇动了动,最后只挤出一个勉强的笑。玻璃门推开,十月的阳光劈头盖脸砸下来,林默眯了眯眼,站在台阶上停了两秒。十八楼的那排窗户映着天空的灰蓝,其中一扇后面曾经放着他的绿萝。他收回目光,把纸箱放在脚边,掏出手机。

给苏晚发消息:“晚上我去接小禾,顺便买菜。”

回复几乎是瞬间弹出来的,一个笑脸表情,跟着一行字:“好,想吃什么?”

林默盯着那个笑脸看了两秒,打了一行删掉,又打了一行:“排骨,小禾上周说想吃。”发完把手机塞回口袋,弯腰抱起纸箱往地铁站走。箱子不重,但抱久了纸壳边缘勒得小臂发红。他走得不快也不慢,和平时下班没什么两样。

身后传来一声急促的喊:“林哥!”

他回头。小杨从旋转门里跑出来,手里攥着什么东西。跑到跟前,摊开手掌,是那张从交接单上撕下来的便签,上面只有林默临走前用铅笔写的一行字——

`#define TRUTH 1`

下面还有两个字:启明。

“他们……周总监在会议室发火,说找不到核心密钥。”小杨喘着气,“刘总监在打电话,好像是恒泰那边要测试报告。”

林默把便签折好,放进胸前的口袋。“你回去吧。”他说,“绿萝别忘了。”

小杨站在原地,看着林默抱着纸箱走远。梧桐树的落叶在人行道上铺了薄薄一层,踩上去有细碎的声响。林默走了大约五十米,在一家便利店门口停下,把纸箱放在台阶上,进去买了一瓶水。收银台旁边的货架上摆着棒棒糖,他拿了一根草莓味的,小禾喜欢这个。

走出便利店时,手机又震了。周明远的来电。他按了静音,把手机翻了个面扣在纸箱上。阳光照在纸箱侧面,那行他刚才顺手写下的单词被晒得微微发亮。

他蹲下身,把水瓶也放进箱子,重新抱起来。地铁口的风卷着落叶灌进来,吹起他衬衫的衣角。林默往闸机走去,步子很稳。纸箱里那本代码笔记本的硬壳封面翘起来一角,露出扉页上一行小字,是五年前苏晚写给他的:“做你认为对的事。”

闸机打开。他走进去,没有回头看一眼身后的写字楼。

地铁车厢里人不算多,林默找了个角落把纸箱放在脚边,靠着车厢壁站定。玻璃窗映出他的侧脸,胡茬冒了一层,眼睛里的红血丝还没退干净。昨晚他改了一夜的兼容性测试方案,早上刚发到周明远邮箱,下午就被叫去总裁办公室。

赵天辰当着整个技术部核心团队的面把那份报告摔在桌上。“林默,我请你来是做交付的,不是让你来挑公司毛病的。”赵天辰的声音从十八楼会议室传出来时,外面工位上的人全听见了,“启明这个项目你前后拖了快一年,现在恒泰要签单,你跟我说系统有风险?什么风险?你一个人说了算?”

林默当时只说了一句:“赵总,压力测试的数据不会骗人。现在上线,三个月内必然出重大故障。”

赵天辰笑了,笑得会议室里的空气都凝住了。“行,你厉害。你走。今天就办离职。”

手机又震了,屏幕亮起来——“周明远”。林默没接。震动持续了十秒,停了。隔了半分钟,微信弹出一条语音,转文字后显示:“林默,赵总也是气头上,你手上那个密钥交接单填一下,恒泰明天要入场做联调。”后面又跟了一条:“算哥求你,别让哥难做。”

林默盯着那行字看了几秒,长按,选择“不显示该聊天”。屏幕安静下来,壁纸是小禾在幼儿园运动会上举着奖牌的照片,额头上贴着老师奖励的小红花。

到站了。他抱起纸箱走上扶梯,出站口的晚风裹着桂花香扑面而来。街对面的小学刚放学,孩子们背着书包成群结队涌出来。林默把纸箱在花坛边放稳,远远就看见小禾排在队伍最后面,一只手拽着书包带,另一只手举着朵从路边摘的野菊花。

“爸爸——”小禾跑过来,直接撞进他怀里,野菊花蹭在他衬衫上。她抬头看见花坛上的纸箱,踮脚往里瞄了一眼。“爸爸你今天这么早下班?”

“嗯,今天不加班。”林默蹲下来,把棒棒糖从口袋里掏出来,草莓味的。小禾欢呼一声拆开包装纸,腮帮子立刻鼓起一个小包。

“妈妈呢?”

“妈妈在家做饭。”他单手抱起女儿,另一只手拎起纸箱。小禾趴在他肩头,嘴里含着糖,含含糊糊地问:“爸爸,你的绿萝呢?你不是说那是你的上班搭子吗?”

林默的步子顿了一下。“送人了。”

“为什么呀?”

“那个搭子想换个地方晒太阳。”

小禾似懂非懂地点点头,忽然伸手从纸箱里抽出那张代码笔记本,翻开扉页。“妈妈写的字!”她指着那行小字,一个字一个字地念,“做、你、认、为、对、的、事。”

念完仰起脸:“爸爸,什么是对的事?”

林默把女儿往上掂了掂,让她坐得更稳些。晚风把梧桐叶吹得沙沙响,远处天边泛着橘粉色的光。

“就是晚上能安心睡觉的事。”他说。

第二章 庆功宴上的空席

鸿宾楼牡丹厅的转盘圆桌上已经摆满了冷盘,水晶灯照得餐具反光。技术部六个工位来了五个人,销售部倒是全员到齐,刘艳穿了件酒红色连衣裙,坐在赵天辰左手边,正低头看手机。

“小杨,你往那边挪挪,给沈工留位置。”赵天辰挥了挥手,指的是恒泰派来的技术代表沈冰。沈冰穿一件深灰西装外套,头发利落地扎在脑后,从进门起就没怎么说话,只和人点头致意,手里拿着一沓打印出来的技术文档。

周明远坐在赵天辰对面,衬衫领口解开了两颗扣子,露出底下汗湿的圆领衫领边。他面前那杯茶从坐下就没动过,手指头一直在桌布边缘来回蹭。

“人都齐了吧?”赵天辰站起来,举起面前的红酒杯,“来来来,第一杯,敬咱们恒泰项目。一个多亿的单子,不容易!这杯酒,我代表公司谢谢各位。”

众人纷纷起身碰杯,玻璃声叮叮当当响成一片。小杨端着橙汁跟着碰了一下,坐下的时候悄悄看了眼门口方向,又把视线收回来。

“特别是销售部,刘艳这边前前后后跟了恒泰大半年。”赵天辰拍了拍刘艳的肩膀,“辛苦。”

刘艳笑着摆手:“都是赵总指挥得好,我们就是跑腿的。”她端起酒杯抿了一口,放下杯子时像是忽然想起什么,“对了赵总,今天上午那个……林默,已经办完手续走了吧?”

桌上安静了一瞬。技术部几个人互相看了看,小杨低下头扒拉面前的花生米。

赵天辰面色如常,夹了一筷子凉拌海蜇。“走了。思想不统一的人,留着也是消耗团队精力。”

“早该这样了。”刘艳把酒杯在桌上轻轻一磕,“有能力是不假,可脾气比能力还大。公司拿订单容易吗?三天两头这不行那不行,好像全天下就他一个明白人。”她环顾四周,笑着说,“这下好了,咱们心往一处想,劲往一处使,项目肯定顺顺利利。”

周明远忽然端起酒杯站起来。“赵总,我敬您一杯。”他的声音有点哑,“这段时间我这边配合得不够好,恒泰的对接也有一些疏漏,我……”

“老周你坐下坐下。”赵天辰摆摆手,“都过去了。今天只谈好事。”

周明远把酒喝了,坐回去的时候杯底在桌上磕了一下,发出闷响。他垂下眼,用只有自己听得见的声音说了句什么,没人听清。

酒过三巡,气氛热络起来。销售部开始挨个敬酒,技术部这边勉强应付着。到第三轮的时候,赵天辰把筷子一放,朝周明远抬了抬下巴:“老周,把电脑打开,给沈工现场演示一下系统原型。让恒泰的同志看看咱们的技术实力。”

周明远夹菜的手停在半空。“现在?”

“对,就现在。投影接一下。”赵天辰笑呵呵地转向沈冰,“沈工,你也是技术出身,咱们边吃边看,提提意见。”

沈冰放下筷子,从包里取出一副眼镜戴上。“可以。”

周明远起身的动作慢了半拍。他从公文包里掏出笔记本电脑,放在转盘旁边,又去调试包厢角落的投影设备。幕布降下来,占了半面墙。

电脑屏幕亮起来,周明远的手指在触控板上滑动,找到桌面快捷方式,双击。一个蓝底白字的登录界面弹出来,logo下方是四个字——“启明智能”。

周明远输入账号,密码。回车。

进度条转了两秒,跳出一行红色报错。

“签名密钥缺失,核心模块无法加载。”

周明远的手指僵在键盘上方。他又按了一次回车,红色提示重新弹出,这次底下还多了一行小字:“模块签名:Lin.Mo 未授权。”

“怎么回事?”赵天辰的声音从桌子那头传过来,还带着笑,“老周你换电脑了?”

“可能是……运行环境不对。”周明远退出程序,重新打开。一样的报错。他额头上开始冒汗,手指在触控板上划得越来越快。“我试一下兼容模式。”他又点开了一个什么设置界面,操作了几下,再次启动。

报错依旧。

“Lin.Mo。”沈冰忽然开口。她的声音很轻,但包厢里安静得能听见空调风声,所有人都看向她。沈冰推了推眼镜,目光从幕布上的报错提示移向周明远,“这是开发者的签名标识。核心模块只有这个签名能解锁?”

周明远的喉结上下动了一下。“是……但是……”

“但是什么?”

“但是按理说……林默……之前的版本是自动授权的,这次可能是……可能是授权文件出了点问题。”周明远说到最后几个字时声音几乎低得听不见。

赵天辰脸上的笑容彻底消失了。他从椅子上站起来,走到投影幕布前,盯着那行红色报错看了好几秒。“密钥在谁手里?”

周明远咽了口唾沫。“这个模块……启明的底层架构是林默搭的,加解密那一层也是他做的。当时为了赶进度……”

“我问你密钥在谁手里。”

“在林默手里。”周明远的声音像砂纸蹭过木头。

刘艳在旁边小声接了一句:“他不是都走了吗?公司电脑里的东西没交接?”

没人理她。小杨盯着自己面前那碗已经凉透的汤,手指攥着汤勺柄,指节发白。技术部另外几个人面面相觑,一个刚来半年的小伙子小声跟旁边人嘀咕:“我根本不知道启明有加密层……”

赵天辰深吸一口气,转头看向沈冰,挤出个笑容:“沈工,不好意思,小问题。今天就是演示,正式交付肯定没问题。明天我让团队把授权重新配一下。”

沈冰合上自己面前的文件夹,站起来。她走到投影幕布前,又看了一眼那行报错,然后掏出手机对着幕布拍了张照片。

“赵总。”她把手机收进口袋,语气客气但没什么温度,“开发者签名是系统日志的一部分,删不掉也改不了。这个‘Lin.Mo’如果不在恒泰的技术对接名单里,我需要知道为什么。”

“他是离职员工。”赵天辰说。

“我明白。”沈冰点了点头,“那麻烦赵总明天把完整的授权链路说明发我一份。今天不早了,我先走。”

她拿起包,朝众人微微颔首,径直出了包厢。门合上的瞬间,赵天辰猛地把手里的酒杯墩在桌上,红酒溅出来洇湿了白色桌布。他的目光像刀子一样扎在周明远脸上。

“周明远。”赵天辰压着嗓子,“你告诉我,这个系统到底还有多少东西是只有林默一个人知道的?”

周明远的脸色在灯光下白得发灰。“赵总……之前一直是他在维护核心模块,我这边主要是做外围开发……”

“三天。”赵天辰伸出三根手指,“恒泰三天后要入场联调。你现在告诉我,三天之内能不能搞定?”

周明远张了张嘴,没发出声音。

桌上那台笔记本电脑还亮着,报错提示的红光映在每个人脸上。小杨看着那行“Lin.Mo”的签名标识,忽然想起今天上午林默走之前把绿萝递给他时说的话——“别忘了浇水,它不挑地方,给点光就能活。”

窗外的霓虹灯牌把“鸿宾楼”三个字映得忽明忽暗。包厢里的转盘还在慢悠悠地转,上面的菜早就凉透了。

第三章 谁也接不住的代码

赵天辰没有立刻发火。他盯着投影幕布上那行红色报错看了将近半分钟,包厢里安静得能听见隔壁划拳的声音从墙缝里钻进来。周明远的衬衫后背洇出一片深色汗迹,他手指还搭在键盘上,像是随时准备再试一次。

“再试。”赵天辰说。

周明远点开系统目录,翻到授权文件夹。里面只有三个文件,其中两个的修改日期显示是三个月前,最后一个的图标上带着一把灰色小锁。他点了右键,属性栏里连“安全”选项卡都消失了,只剩一行提示:此文件受数字版权管理保护,所有者:Lin.Mo。

“把电脑重启。”赵天辰的声音压得很低。

重启花了四十秒。周明远重新输入账号密码,报错如约而至。他换了一台笔记本,从U盘里拷了一份备份程序过去,运行到第二十七秒时弹窗跳出来,直接闪退。周明远的手开始抖,鼠标点开任务管理器,发现进程在后台停留了三秒后自动终止,连崩溃日志都没生成。

“换人。”赵天辰的目光扫过技术部几个人。

小杨硬着头皮走过去,在周明远的位置上坐下。他比周明远年轻十岁,手指灵活,但操作路径和周明远一模一样。他甚至尝试用命令行强行加载模块,屏幕跳出一串乱码,最后一行英文清晰可辨:Access Denied. Signature Required.

“赵总,这……”小杨转过头,嘴唇发干,“启明的底层是林哥一个人写的,所有接口都做了签名验证。没有他的私钥,我们连模块都解不开,更别说改了。”

“你们平时怎么开发?”赵天辰的声音里压着什么东西。

“平时……”小杨看了一眼周明远,“平时林哥会把开发版单独打一个包给我们,那个包不用签名。但那个包只能跑测试数据,连真的数据库都连不上。我们实际上……只做了界面和部分外围功能。”

赵天辰闭上眼睛,胸口起伏了两下。他再睁开眼时,目光落在刘艳身上。“你说,找外面的人破解,要多久?”

刘艳愣了一下,随即摇头:“哥,恒泰的合同里写了,交付系统不得含有未经授权的第三方修改。一旦被他们发现破解痕迹,不光合同作废,咱们还得赔违约金。一点二个亿的合同,违约金至少三千万。”

“那就让他回来。”赵天辰说。

“谁?”

“林默。”

这三个字一出口,包厢里的空气像是被抽走了一层。周明远张了张嘴,想说什么又咽了回去。刘艳的眉头拧起来,声音拔高了几分:“哥,上午刚把他开了,晚上又叫他回来?传出去像什么话?”

“那你告诉我,明天上午九点,恒泰的技术团队要看可运行的系统演示。你拿什么给他们看?这个?”赵天辰一挥手把桌上的酒杯扫到地上,玻璃碎在瓷砖上的声音脆响。服务员推门探了下头,被赵天辰一眼瞪了回去。

刘艳不说话了,嘴唇抿成一条线。

周明远终于开口,嗓子哑得像砂纸:“赵总,林默的脾气你也知道。他认准的事……上午你当着所有人的面说他‘不服从公司战略安排’,现在去找他,他未必肯回来。”

“那就让周总监去。”赵天辰盯着他,“你不是他直属领导吗?你上午不是还挽留过他?”

周明远的脸色更难看了。他确实挽留过,但所有人都看得出来那只是做样子。他当时说的是“林哥你再考虑考虑”,而林默只是把那盆绿萝放到窗台上,回了一句:“老周,这盆花你帮我留着,我养了三年。”

“我去可以。”周明远说,“但他提条件怎么办?”

“什么条件都答应。”赵天辰咬着后槽牙,“只要明天系统能跑起来。”

小杨在旁边小声插了一嘴:“赵总,就算林哥回来,他那个签名密钥是和员工账号绑定的。他被开除之后,IT那边把他的账号停了吧?得先把账号恢复了才能……”

赵天辰转头看向周明远:“账号谁管的?”

“IT部的老孙,他今天下午就按流程把林默的域账号禁用了。”周明远顿了顿,“不过后台应该还有管理员权限,可以恢复。”

“现在打电话。”赵天辰把手机扔到周明远面前,“让老孙爬起来把账号恢复了。然后你去找林默。”

周明远拿起手机,拇指在屏幕上悬了两秒才按下拨号键。电话响了很久,老孙接起来的声音带着明显的困意和困惑,听完之后只说了一句“明天上班我操作行吗”就被周明远堵了回去。周明远最后说了句“赵总说的,现在,立刻”,那边才不情不愿地应了。

挂了电话,周明远站起来,拿起外套。刘艳忽然开口:“周总监,你打算空手去?林默上午刚被扫地出门,晚上你拎两瓶酒过去说‘回来吧’,你觉得他缺你那两瓶酒?”

周明远停在原地。赵天辰看了刘艳一眼,难得没有反驳她。“你说怎么办?”

“我去。”刘艳把包拿起来,“他老婆苏晚我认识,以前公司团建的时候聊过。我去找苏晚,女人之间好说话。”

“你去?”赵天辰皱眉,“你上午在茶水间说什么了你自己清楚。”

刘艳的表情僵了一瞬,随即恢复如常:“我说的是实话。他不服从安排被开除,全公司都看着呢。现在需要他回来,总得有人放低姿态。我去找苏晚,至少苏晚明事理。”

周明远把外套又放下了。他看得出来,赵天辰在犹豫。刘艳是赵天辰的表妹,让她去确实比自己去有分量,但刘艳那张嘴上午刚得罪过人,晚上又登门,谁知道是去请人还是去拱火。

“让老周去。”赵天辰最终开口,“老周,你去。带着小杨。小杨平时跟林默关系好,他说话林默能听进去。”

小杨猛地被点名,手里的汤勺差点掉进碗里。“我……我怎么说?”

“你就说系统跑不起来,技术部没人会弄。实话实说。”赵天辰看着他,“别绕弯子。林默这个人不吃虚的。”

周明远把外套重新穿上,拍了拍小杨的肩膀。两个人一前一后往包厢门口走,经过那台还亮着报错提示的笔记本电脑时,小杨忍不住又看了一眼。红色提示底下多了一行滚动日志,是刚才他试图用命令行强行加载时留下的记录。日志末尾有一行时间戳,显示他操作的时间是晚上九点四十七分。

而在这行时间戳上面,密密麻麻排列着几十条同一个操作记录,最早的一条可以追溯到三年前。

小杨忽然意识到一件事:林默从来没有把启明的完整权限交出去过。三年,一千多天,每次系统更新他都自己重新签名、自己打包、自己加密。技术部其他人拿到的永远是剔除核心后的空壳。包括周明远。

这不是林默藏私,这是赵天辰亲手把一个人逼成了唯一的守门人。

电梯门打开的时候,走廊尽头的窗户忽然灌进来一股冷风。小杨打了个哆嗦,把外套拉链拉到顶。周明远在旁边掏出车钥匙,按了一下解锁键,远处的霸道车灯闪了两下。

“老周。”小杨忽然开口。

“嗯?”

“林哥上午走的时候,把绿萝放窗台上了。他说‘给点光就能活’。”

周明远脚步顿了一下,没有说话。两个人沉默着走进电梯,楼层显示屏上的数字一格一格往下跳。电梯门合上的瞬间,小杨听见楼上包厢里传来赵天辰压不住的吼声,隔着两层楼板和一道防火门,听不真切,但那股火气像是能把整栋楼的玻璃震碎。

走廊尽头,沈冰刚才坐过的那把椅子还歪着。服务员进去收拾的时候发现桌布下面压着一张名片,背面用签字笔写了一行字:核心技术交付物清单,请于明日九点前提供。落款是一个手机号码。

服务员把名片随手扔进杂物筐,又回头看了一眼幕布上那台还亮着的电脑。报错的红色提示在屏幕上安静地闪烁着,那行“Lin.Mo 未授权”像是某种无声的宣告。

窗外飘起雨来,雨点打在“鸿宾楼”的霓虹灯牌上,把“宾”字的偏旁浇得模糊不清。

第四章 夜色里的电话

林默坐在客厅的地垫上,面前散落着一堆积木。小禾正把一块红色的三角形往城堡顶上摆,试了两次没放稳,扭头看他。

“爸爸,你帮我扶着。”

他用两根手指轻轻按住底座,小禾终于把尖顶卡进了卡槽。她拍着手笑起来,说这是给妈妈住的公主塔。林默说妈妈是公主,那你是什么。小禾歪着头想了想,说我是公主的小跟班。

厨房里传来油锅翻炒的声音,苏晚的声音穿过走廊:“小禾,别让爸爸一直弯腰,他腰不好。”

“知道啦——”小禾拖长了尾音,又去翻积木筐里的窗户零件。

手机在茶几上震了第一次。林默瞥了一眼屏幕,周明远。他把一块蓝色方块递给女儿,没动。第二次震动隔了不到半分钟,还是周明远。小禾抬头看他:“爸爸你电话。”

“不接也没事。”

第三次震动的时候,苏晚从厨房探出头来。她看了一眼林默的表情,没说话,把火关小了一点。手机屏幕亮着,周明远的名字在黑暗的客厅里格外刺眼。震动停了,屏幕暗下去,小禾把一块积木塞进他手里:“爸爸,你搭这个。”

他刚把积木放上,手机第四次响了。陌生号码,座机。

林默接起来的时候,对面沉默了两秒。然后赵天辰的声音传过来,语调又硬又急,像是被人推着才按下这串号码:“林默,系统的事你回来处理一下,待遇好说。”

客厅里很安静,积木偶尔磕碰的塑料声都能听得清清楚楚。林默把手里那块积木轻轻放回筐里,声音很平:“赵总,我已经不是天辰的员工了。”

“你别拿公司利益开玩笑。”赵天辰压着火,但压不住呼吸里的粗重,“恒泰的单子一点二亿,你也知道这单对公司意味着什么。启明是你写的,出了问题你比谁都清楚。”

“我没有开玩笑。”林默说,“我五年来从没拿工作开过玩笑。今天上午您当众宣布开除我的时候,理由是不服从公司战略安排。我服从了。收拾东西走人,没有争辩一句。”

电话那头沉默了。苏晚端着盘子从厨房走出来,把清炒时蔬放在餐桌上。她经过林默身边时脚步放慢了,手掌轻轻贴了一下他的肩膀,然后收回,什么也没问,转身去拿碗筷。

赵天辰的声音再次传来,语调降了半度,但每个字都像是从牙缝里挤出来的:“上午的事……当时那个情况你也看到了,恒泰的人在,我必须表个态。你要理解。”

“我理解。”林默说,“所以我没有当着恒泰的面说什么。”

这句话像一根细针扎进了沉默里。赵天辰的呼吸变了节奏,隔了好几秒才重新开口:“那你回来一趟。明天上午。我让周明远把合同准备好,技术总监的位置给你留着,薪资翻倍。还有什么条件你提。”

小禾把一块拱形积木举到林默眼前:“爸爸,这个放哪里?”他用口型说“等一下”,小禾便乖乖地自己摆弄起来。

林默对着手机说:“明天上午我可以去一趟。但只谈一件事。”

“你说。”

“技术报告的事。”

赵天辰像是被什么东西噎住了。过了好一会儿才说:“林默,有些事情过去了就过去了,你回来把系统跑起来,其他的以后再说……”

“赵总,明天上午九点,我到您办公室。谈什么我已经说了。如果您觉得可以谈,我就去。如果您觉得不能谈,那就不用等我了。”

他没有等赵天辰回答,按了挂断。

苏晚把一碗汤放在他面前,在小禾旁边坐下来。她给小禾的碗里夹了一片胡萝卜,然后才抬眼看林默,目光里没有催促。小禾咬着勺子,眼睛在爸爸妈妈之间转来转去,忽然说:“爸爸你刚才说话好认真,像在跟客户开会。”

林默愣了一下,笑了:“像吗?”

“像。但是爸爸开会会皱眉头,你刚才没有皱眉。”小禾把勺子从嘴里拿出来,一本正经地说,“所以肯定不是开会。”

苏晚低头喝汤,嘴角弯了一下。

吃完饭,林默去厨房洗碗。水龙头开着,热水冲过指尖。苏晚靠在厨房门框上,手里端着一杯温水,没有递给他,只是握着。她说:“周明远打了三个。”

“嗯。”

“赵天辰说了什么?”

“让我回去,待遇翻倍。”

苏晚沉默了一会儿,把水杯放在台面上。她靠在旁边,声音很轻:“你怎么想的?”

林默把最后一个碗扣在沥水架上,关掉水龙头。厨房忽然安静得只能听见冰箱的嗡嗡声。他抽了张纸巾擦手,转过身看着苏晚。

“上午走的时候,我把绿萝放窗台上了。技术部那个窗台光线好,我养了三年,叶子一直绿着。小杨他们应该会记得浇水。”

苏晚看着他。

林默继续说:“启明的核心代码是我一个人写的,密钥也是我管的。赵天辰三年没让我交出去,可能是嫌麻烦,可能是想控制,也可能他根本没想过我会走。不管哪种,今晚他打这个电话,是因为全公司没有第二个人能接手。周明远懂架构,但他没有底层权限。小杨会操作,但他不知道每一层加密的原理。”

苏晚拿起水杯喝了一口,然后递给他:“所以呢?”

“所以明天我去,不是因为他开的条件。是因为我写的东西出了问题,我得知道问题出在哪里。但怎么修,以什么身份修,得说清楚。”他接过水杯喝了一口,“我写了五年的技术报告,每一版他都在上面改过数据。这次我不打算再让他改了。”

苏晚伸手把他衬衫领子翻正,动作很轻。她看着他眼睛说:“明天穿那件深蓝的,显得精神。”

林默低头笑了一下:“好。”

小禾从客厅跑过来,手里举着一张纸:“妈妈,明天幼儿园要带全家福照片,我们好久没拍了。”纸上是她今天画的,三个火柴人,最高的那个手里拿着一盆绿色的东西。

林默蹲下来看那幅画,手指点了点那盆绿萝:“画得真像。”

“爸爸你不是说绿萝在办公室吗?什么时候拿回来?”

“快了。”他说,“爸爸明天去拿。”

苏晚把小禾抱起来往卧室走,经过林默身边的时候,手掌在他背上按了一下,没有停留。她哄孩子睡觉的声音从卧室传出来,模模糊糊的,像远处传来的潮声。

林默一个人站在客厅里。手机屏幕又亮了一下,周明远的短信,只有四个字:明天等你。

他把手机翻扣在茶几上,走到窗边。外面下着小雨,路灯的光晕被水汽晕开了,一片一片的,模糊得像没上胶的照片。楼下花坛里的绿植被雨打得微微摇晃。

他站了一会儿,走回茶几旁边,拿起手机翻到通讯录,置顶的那个名字是“苏晚”,第二个是“小禾幼儿园李老师”,第三个被他今天上午删掉了,空了一行。他往下翻,停在“沈冰”两个字上面。拇指悬在拨号键上方两秒,最终退出了界面。

明天有很多事要做,今晚先把积木收好。

他蹲下来,一块一块把那些彩色的塑料块码进收纳筐。小禾搭的公主塔还立着,红色的尖顶在客厅顶灯的照射下投下一小片影子。他把收纳筐放进电视柜下面的抽屉,又去把餐桌上的碗筷收进洗碗机。一切停当之后,客厅恢复到了早晨出门前的样子,干净,安静,像什么都没有发生过。

苏晚从卧室出来,小声说:“睡了。”

“今天没讲睡前故事?”

“讲了。她自己编了一个,说小绿萝离开家去旅行,遇到了一朵云,云问它为什么出来,它说主人走了,它得自己找水喝。”

林默站在客厅中央,听着这句话,忽然觉得胸腔里有什么东西松动了一下。

苏晚走过来,拿起茶几上那杯已经凉了的水,倒掉,又接了杯热水放在他手里:“早点睡。明天你要开车。”

他握着杯子,感觉到温度从掌心一点点渗进来。窗外的雨还在下,细密地敲着玻璃,像无数根手指在轻轻叩门。

第五章 一张旧照片

林默把手机翻扣在茶几上,屏幕的光从边沿漏出来一点点,像一条细线。

苏晚从卧室出来时顺手把客厅顶灯调暗了一档,暖黄的光铺在餐桌上。她没有问电话的事,只是把两副碗筷摆好,又去厨房端了最后一盘菜出来。青椒炒鸡蛋,鸡蛋金黄蓬松,是林默喜欢的火候。

“叫她吃饭。”苏晚朝卧室方向扬了扬下巴。

林默走到卧室门口,小禾正坐在床上,把几只毛绒玩具排成一排,给它们盖纸巾当被子。她抬头看见爸爸,眼睛亮了一下:“爸爸,今天小熊不乖,它不肯睡觉。”

“那你跟它说,明天还要上幼儿园,起不来就没有小饼干。”

小禾认真地点了点头,对着小熊的耳朵压低声音说了一句话,然后从床上滑下来,牵住林默的手指往餐厅走。她的小手热乎乎的,指甲缝里还藏着一小片蓝色颜料,大概是今天在幼儿园没洗干净。

饭桌上,苏晚给小禾盛了半碗米饭,把青椒挑到自己碗里,鸡蛋都拨到女儿这边。小禾拿着勺子,挖了一口饭,忽然想起来什么,抬头说:“妈妈,今天老师让我们画全家福,我画了。”

苏晚看了林默一眼:“画呢?”

“在书包里,我拿给你们看。”小禾滑下椅子,跑进客厅翻书包,挎包带子拖在地上,她蹲着翻了好一会儿,抽出一张皱巴巴的画纸,又跑回来,铺在餐桌上,用手掌来来回回抹了好几下才抹平。

画面上三个火柴人,高个子的是爸爸,旁边是妈妈,最矮的小人扎着两个冲天辫,手举得很高。最左边画了一盆绿植,叶子张牙舞爪,盆是红色的。

“这是爸爸的绿萝。”小禾指着那盆绿色,“爸爸说它在办公室,什么时候拿回来?我画的是它在家里的样子。”

林默盯着那幅画看了几秒。女儿画的那盆绿萝比真实的茂盛许多,每一片叶子都圆鼓鼓的,像气球。他把画纸拿起来对着灯看,背面还有一行铅笔字,歪歪扭扭的:“我的家。”

“明天或者后天,爸爸去拿回来。”他说。

小禾满意地点头,继续埋头吃饭,饭粒沾在嘴角。苏晚拿纸巾给她擦了擦,又给林默碗里夹了一筷子鸡蛋。她没有追问“明天去公司”那件事,只是等小禾说起幼儿园其他事情的时候,偶尔接一两句话,声音平稳,像平时任何一个晚上。

吃完饭,苏晚带小禾去洗澡,卫生间里传来水声和断断续续的儿歌声。林默收了碗筷,擦干净桌子,走到客厅角落的储物柜前,拉开最下面那层抽屉。里面堆着旧笔记本、几根数据线、一个没拆封的鼠标垫,还有那本黑色封皮的代码笔记。他伸手抽出来,封面有些磨损,边角翘起,翻口处有手指常年摩挲留下的浅痕。

他坐进沙发,翻开笔记本。前面几十页是他五年前刚入职天辰时记的,字迹很密,画着系统架构图,箭头标注数据流向,旁边偶尔有红笔批注。翻到中间某一页时,一张照片从纸页间滑出来,落在他的膝盖上。

照片是六年前的,大学编程大赛颁奖之后拍的。背景是一块深蓝色的展板,上面印着密密麻麻的获奖名单。照片里两个人并排站着,手里各捧着一张证书。左边的林默比现在瘦一些,头发短得贴着头皮,表情有点僵硬。右边的沈冰扎着马尾,白色衬衫,笑容明亮,手指比了个剪刀,歪着头。

照片背面有一行蓝黑色钢笔字,笔画利落——“代码不会骗人。”下面是日期和沈冰的签名缩写。

林默看着这行字,指腹在纸面上轻轻擦过。那场比赛他们拿了金奖,题目是实时数据流加密传输,三天两夜没合眼。评委宣布结果之后,沈冰去买了两瓶汽水,递给他的时候说这句话:“代码不会骗人,你写一行它跑一行,对就是对,错就是错。”她说这话时语气很淡,像是在说一件理所当然的事。

后来毕业,林默去了天辰,沈冰去了恒泰。头两年还偶尔在技术论坛上碰见,互相留言交流,后来各自忙碌,联系渐渐少了。只是每年除夕会互发一条祝福,字数不多,模式几乎一样。去年沈冰那条末尾加了一句:听说你们在天辰做智能家居,有机会合作。

没想到机会是以这种方式来的。

苏晚从卫生间出来,小禾已经换好了睡衣,头发半干,被妈妈用毛巾包着。苏晚看到林默手里的照片,走过来在沙发扶手上坐下,偏头看了一眼。

“沈冰?”她语气里没有波澜,“你们好久没联系了吧。”

“嗯。她现在在恒泰,负责技术评估。”

苏晚把毛巾从头上拿下来,长发散在肩上。她看着照片上那个笑容明亮的女孩,轻声说:“她以前来家里吃过一次饭,记得吗?你加班没回来,她带了一箱车厘子,我一个人吃了一个星期。”

林默想起来了,那时候刚搬家,家里连像样的茶杯都没有。沈冰坐在客厅的纸箱堆里,说“你们这个房子采光不错”。她坐了不到半小时就走了,临走时说“告诉林默,他那套加密思路我用了,效果很好”。苏晚当时觉得这个女孩说话简洁得像写代码。

“明天我去公司,把该说的说清楚。”林默合上笔记本,照片夹回那一页,“系统的事,报告的事,还有我这五年改过的每一个数据。”

苏晚把毛巾叠好放在膝上,看着他:“不管你怎么决定,我和小禾都在。”

她说这话的时候没有加重语气,甚至没有看他,只是低着头把毛巾的边角对齐。但林默听到了里面每一层意思。他伸手覆上她放在毛巾上的手背,停了两秒。她没有抽开,翻过手掌,手指穿过他的指缝,轻轻扣了一下,然后起身去厨房倒水。

林默翻开笔记本最后几页,那里夹着一支旧钢笔,笔帽上有牙齿咬过的痕迹。他把照片重新夹好,合上本子,在封面上按了按。小禾从卧室探出头来:“爸爸,明天你能送我去幼儿园吗?我想让你看老师贴的全家福。”

“好。”他说。

小禾缩回去,卧室的门留了一条缝,暖光从里面漫出来。苏晚端着两杯水走出厨房,一杯放在茶几他这一侧,一杯自己拿着,在沙发另一头坐下来。她没有再说话,只是打开手机翻看幼儿园群里的消息,屏幕光映在她脸上,神情安宁。

窗外雨已经停了,夜风从半开的阳台门缝里挤进来,把茶几上那张全家福的一角吹得微微翘起。林默伸手压住它,指尖正好落在画里那盆绿萝上面。红色的花盆,绿色的叶子,女儿用蜡笔涂得满满当当,每一笔都用力。

他把画纸翻过来对着灯,又看了一遍背面的字。我的家。铅笔写的,笔画稚嫩,但每一个字都站得稳稳的。他把画纸轻轻放回桌上,拿水杯喝了一口。水是温的,从喉咙一路暖到胃里。

笔记本就放在手边,黑色封面在灯光下泛着哑光。明天他要带着它去公司。里面有五年的技术记录,有真实的数据,有一切该说清楚的事。还有一张旧照片,背面那行字他记了六年——代码不会骗人。

人也不能。

第六章 回到天辰

第二天早上八点四十,林默把车停在幼儿园门口,看着小禾背着小书包跑进大门。她跑到一半又折回来,隔着铁栅栏朝他挥了挥手,手里攥着那张要贴到墙上的画。林默点了点头,小禾才转身跑进教学楼,辫子一颠一颠的。

他坐在车里没有立刻发动引擎,副驾驶座上放着那个黑色笔记本,封面上有道浅浅的压痕,是昨晚写报告时钢笔太重留下的。他把笔记本拿起来翻到中间,里面夹着的那份打印稿有十二页,每一页都有他标注的红笔数据和修改痕迹。这是他没有签字的那份技术报告,“启明”模块的压力测试结果清清楚楚列在第七页和第九页上——在持续高负载运行四十八小时后,核心调度模块出现三次不可恢复的内存泄漏,最严重的一次发生在去年十一月的模拟环境,恢复时间用了将近四十分钟。

林默合上本子,发动车子往天辰科技的方向开。

雨后的清晨路面还带着潮湿,阳光从云层侧面斜切下来,把行道树投在路面上的影子拉得很长。天辰科技的办公楼在科技园区东侧,灰色玻璃幕墙,没有任何装饰性的线条,看上去像一块竖起来的金属板。林默第一次来这里面试时觉得这楼很实在,跟他的性格合得来。

他把车停进地面访客车位,拿了笔记本推门下车。园区里上班的人陆陆续续往各自公司走,没有人特别注意他。他在天辰工作五年,技术部在六楼,他每天从东侧电梯上去,刷卡,左转,第三个工位。这些动作重复了将近两千天,今天走起来却格外清晰。

一楼大厅的玻璃门自动滑开,前台小宋正在接电话,看见他进来,声音顿了一下。她左手握着话筒,右手悬在键盘上方,眼睛微微睁大,嘴唇动了动,最后只点了一下头,算是打招呼。林默也点了一下头,没有多说什么,径直走向电梯区域。

电梯门打开的时候,里面站着财务部的两个女孩,挽着手在聊昨晚的庆功宴。三个人打了个照面,聊天声戛然而止。电梯上行,六楼到了,门打开,林默走出去,身后那扇门合上之前,他听到其中一个女孩小声说了一句什么,没听清。

这一层的走廊尽头是赵天辰的办公室。技术部在走廊左侧,销售部在右侧,中间隔着一道玻璃隔断。林默经过技术部大门时朝里面看了一眼,小杨坐在工位上,正对着屏幕发呆。窗台上那盆绿萝还在,晒着早晨的光,叶片油亮。他没有停下来,继续往前走。

赵天辰的办公室门关着。林默抬手敲了三下。里面传来一声“进来”,声音比平时闷一些。

推开门,赵天辰坐在那张深色办公桌后面,衬衫领口敞着,没有系领带。桌上摊着一堆文件,烟灰缸里有三个烟头,房间里有种隔夜烟味和咖啡混在一起的气味。墙上那块“天道酬勤”的匾额擦得很亮,枣红色的底漆反射着顶灯的光。

赵天辰看见他,身子往前倾了一下,随即靠在椅背上,做了一个请坐的手势。林默没有坐,站在办公桌对面。

“来了,”赵天辰把桌上那堆文件往旁边推了推,从抽屉里拿出一份文件夹,推到他面前,“先看看这个。”

林默低头看了一眼。那是一份劳动合同,封面印着天辰科技的标志,右下角贴着便签,上面手写着一行字:技术总监,年薪翻倍,即时生效。他没有翻开,只是把笔记本放在桌上,从里面抽出那份十二页的技术报告,轻轻放在合同旁边。

赵天辰的目光落到那份报告上,眉头皱起来。封面上“启明模块压力测试异常报告”几个字是他自己拟的,打印体,黑色。他认得出来。

“赵总,系统我可以恢复运行,”林默的声音不高,语速跟平时一样,“密钥和核心逻辑只有我掌握,这一点昨晚你们都清楚了。但这份报告必须提交给恒泰,同时内部启动全面整改。”

赵天辰的手指在报告封面上点了一下,脸上看不出太多表情。“你这是在跟我谈条件?”

“不是条件,”林默说,“这是底线。这份报告是我离职之前写的正式文件,按照技术管理规范,它应该随交付物一起提交给客户。我没有签字确认系统可以交付,所以昨晚的庆功宴——严格来讲——庆祝的是一个未通过验收的项目。”

赵天辰忽然站起来,手掌拍在桌面上,声音在封闭的办公室里格外响。那份合同滑出去几厘米,差点掉下桌沿。“林默,你不要得寸进尺。昨晚给你打电话,是你自己说要来公司谈的。”

“我是来谈的。”林默低头看了一眼那份合同,又抬起来看着赵天辰的眼睛,“谈怎么把这件事做对。”

赵天辰的嘴唇抿成一条线,鼻翼微微翕动。他绕过办公桌走到窗前,背对着林默站了几秒,窗外是园区里穿梭的人流和远处高架上的车。转过身的时候,他的语气平了一些,但每个字都像从牙缝里挤出来的:“这个订单对公司有多重要,你比我清楚。一点二亿,技术部三年的预算都在里面。报告提交上去,恒泰那边会怎么想?沈冰那种人,抓到一点问题能把整个项目翻个底朝天。”

“沈冰是什么样的人,我比你了解,”林默说,“如果她知道数据有假,翻过来的就不只是项目了。”

这句话让赵天辰沉默了。他重新走到桌前,拉开椅子坐下,两只手交叉着搁在桌面上。他盯着那份报告,嘴唇动了动但没出声,过了十几秒才说:“报告先放着,系统你立刻去恢复。其他的——后面再说。”

“没有后面,”林默把报告又往前推了推,“赵总,我在天辰五年,改了无数版代码,加过无数个班,从来没有在技术结论上打过折扣。这一次也一样。签名栏是空的,我不会在没有整改的情况下把它填上。”

办公室门外传来一声极轻的响动,像是皮鞋底蹭过地面。走廊里有人停了一下。林默没有回头,赵天辰的视线越过他的肩膀看了一眼门口,脸色沉下来。

“你先出去,”赵天辰说,“给我半天时间。”

林默把笔记本收好,拿回那份报告,转身往门口走。经过门边的时候,他看到门缝下面有一道影子闪了一下,很快消失。打开门,走廊里空荡荡的,技术部方向传来键盘敲击的声音,急切又杂乱,像有人在同时按好几个键。销售部的磨砂玻璃门关得严严实实。

他走了几步,余光扫到消防通道的门微微开了一条缝,缝隙那边有个人影靠着墙站着,一只手捏着手机,手指关节发白。是周明远。他看到林默的目光,整个人往后缩了一下,消防门轻轻合上,发出极细微的一声响。

林默没有走过去。他沿着走廊回到技术部,推开门,所有人的动作都停了一拍。小杨从显示器后面探出半个身子,嘴张了张,最终只叫了一声“林哥”。窗台上那盆绿萝的叶子探出来,新抽的那片嫩叶比昨晚打电话时又展开了一点,卷曲的边缘正在慢慢放平。

林默走到自己原来的工位前面,桌面已经空了。他拉开椅子坐下来,把笔记本搁在桌上,插上电源线——那根线还缠在桌腿的理线架上,没有被人动过。屏幕亮起来,跳出一个登录对话框。他输入工号和密码,系统识别通过,桌面加载出来,十二个窗口分门别类排开,每一个都在他脑子里有一个对应的位置。

他活动了一下手指,右手放在鼠标上,点开了“启明”的核心控制台。红色的错误提示铺满半屏,警告日志在下方滚动。他看了一会儿,然后调出命令行,右手在键盘上敲入第一行指令。屏幕上的红字开始变绿。

身后传来脚步声,周明远站在技术部门口,脸色发白,嘴唇干得起皮。他手里攥着手机,屏幕还亮着,上面是赵天辰的来电界面,已经显示了五个未接。他看着林默的背影,张了张嘴,喉咙里滚出一句话,轻得像叹气。

“林哥,你别为难我。”

林默没有回头,手指在键盘上停顿了一下,继续敲。

第七章 绿萝还在

林默的手没有停。键盘声清脆而连贯,像是某种只属于他的节奏。屏幕上的红色警告一行行消失,系统资源占用率从百分之九十七降到百分之十二,“启明”主控界面终于跳出了正常的绿色运行指示灯。

小杨不知什么时候站到了他身后,手里捧着一个纸杯,里面是刚接的热水。他把杯子放在桌角,声音有点发紧:“林哥,你走了之后,周总试了七种办法,连数据库都回滚了两次,启明就是不认。你那个签名密钥……到底藏在哪里?”

林默侧头看了他一眼,伸手从外套内侧口袋里摸出那个两寸见方的旧笔记本。翻开最后一页,右下角用铅笔写着一串二十位的字符。他把笔记本递给小杨,小杨看了一眼又赶紧合上,像是看到什么机密文件似的,双手捧着放回桌面。

“核心签名在硬件加密狗里,加密狗跟我的工号绑定。工号注销了,系统就锁死了。”林默说这话时语气很淡,像是在解释一道普通的技术问题,“我可以远程解锁,但如果公司要换人维护,必须走密钥移交流程。正式的那种,有文档、有记录、有签字。”

“那你……”

“我已经不是天辰的人了。”林默把最后一组参数敲进去,回车。“启明现在能跑了,但只是临时恢复。正式交付还有二十三个未测模块,其中十四个在高负载情况下会出问题。这些,技术报告里都写了。”

小杨愣愣地点头,嘴笨拙地张了两次,不知道该说什么。他回头看了一眼部门里其他人,大家都各自盯着屏幕,但没几个人真的在打字。空气里有一种沉甸甸的东西,压得人喘不过气。

这时周明远终于从门口走进来。他的衬衫袖口皱巴巴的,领带歪了一边,平时梳得整齐的头发此刻有几缕贴在额角。他走到林默桌侧,弯下腰,声音压得很低,带着一种踩在薄冰上的小心:“林哥,你别为难我。赵总那边,我扛不住。你回来,报告的事可以再商量……”

林默的手指停在回车键上,目光从屏幕移到周明远脸上。他看了他两秒,平静地开口:“周明远,你也是写代码出身。十年前你写第一个仓储管理系统的时候,测试报告要是造假,现在会怎样?”

周明远的目光闪了一下。

“你比我清楚,”林默继续说,“恒泰这个项目,测试数据差了多少,你也知道。那份报告我看了,振动测试的阈值调高了百分之四十,老化测试从一千小时直接跳成四千小时。这种数据交出去,不是技术问题,是底线问题。”

周明远的喉结上下动了一下,手指无意识地攥紧了裤缝。“我……我知道。可是赵总说,先签合同,后面补测……”

“后面补测?启明二版的架构你不懂吗?高负载下的内存泄漏是结构性的,不是打补丁能解决的。三个月内恒泰系统上线,撑不过第一次集中调度。”林默的声音始终平稳,但每个字都像钉子一样钉在桌面上,“到时候用户端的设备全部掉线,恒泰损失的就不是三千六百万违约金了。”

周明远张了张嘴,没发出声音。他直起身,退了一步,后腰撞上旁边的文件柜,发出一声闷响。他扶住柜子,低着头,像是在看自己的鞋尖,又像是在看某个只有自己能看见的东西。

销售部的门被人从里面大力推开,撞在墙上弹了回来。刘艳踩着高跟鞋走进技术部,手里还攥着一支签字笔,脸上带着酒气未散的红晕。她径直走到林默桌前,笔尖几乎戳到他面前。

“林默!你都走了还回来搞什么事?”她的声音尖利,整个技术部的人都抬起了头,“系统崩了有你什么事?你已经被开除了!赵总请你来帮忙是给你面子,别蹬鼻子上脸!”

林默缓缓靠向椅背,双手从键盘上拿开,搁在扶手上。他抬头看着刘艳,目光平静得像在看一份出错的报表。

“刘总监,”他说,“启明核心模块目前的状态,每小时有十七次未记录的内存溢出。如果在下一次演示或者用户测试时崩溃,恒泰可以依据交付合同第4.2条判定根本违约。违约金是一点二亿合同的百分之三十,也就是三千六百万。这笔钱,是销售部承担,还是你个人承担?”

刘艳的脸从红转白,又从白转红。她张着嘴,手里的签字笔停在半空,笔尖微微颤抖。旁边有人把椅子往后挪了挪,发出刺耳的摩擦声。

“你——”刘艳憋出一个字。

“系统日志我已经导出了。”林默转回屏幕,手指在触控板上滑动,“从昨晚八点到今天中午,启明一共有两百四十七次异常记录,全部保存在独立日志区。我会发一份给沈冰。”

“沈冰?”刘艳的声音拔高,“恒泰的沈冰?你凭什么——”

“凭她是我大学同学,也凭她是恒泰方技术负责人。”林默点开邮件客户端,附件拖拽进去,“她有权限在交付验收前审查所有技术异常。这件事,瞒不住。”

邮件发送成功的提示弹出来。进度条走完,一个绿色对勾。刘艳瞪着那个对勾,好像它是什么能咬人的东西。她后退两步,脚跟差点踩到周明远的脚。

周明远一直没走。他靠在文件柜边上,看着林默的每一个动作。当那封邮件发出去的时候,他的肩膀塌了下来,整个人像是被抽掉了什么东西。他慢慢从口袋里摸出手机,屏幕上赵天辰的未接来电已经累积到十一个。他没有回拨,把手机翻了个面扣在掌心。

“林哥。”他开口,声音哑得像是吞了砂纸,“你当年教我写的第一段代码,注释里写着‘诚实是工程师的第一行代码’。”

林默的手指停了一下。

“我一直记得。”周明远把手机塞回口袋,转身往门口走,经过刘艳身边时脚步没有停,“赵总那边,我自己去说。”

技术部的门在他身后合上。窗台上那盆绿萝安静地垂着藤蔓,新叶已经完全展开了,叶面在日光灯下泛着一层薄薄的柔光。小杨走过去,把晒蔫了的花盆转了个方向,让那片新叶朝着窗户。

林默站起来,拔掉电源线,把笔记本合上。他看了那盆绿萝一眼,把笔记本夹在腋下,往门口走去。经过小杨身边时,他停了一步。

“帮我给那盆花浇点水。”他说,“别浇太多,根会烂。”

小杨用力点头,眼圈有点红。

走出技术部的时候,走廊尽头的电梯正在上行,数字从1跳到2。林默没等电梯,推开消防通道的门,一级一级往下走。楼梯间里很安静,只有他的脚步声和手机震动的嗡鸣。屏幕上跳出一条新消息,是沈冰的回复,只有六个字。

“收到。明天见面。”

林默把手机放进口袋,推开一楼的防火门。外面的阳光白花花地照在园区路面上,他眯了眯眼,朝大门方向走去。走到一半,手机又响了。这次是苏晚。

“小禾说想你了,晚上想吃什么?我去买菜。”

林默停下脚步,站在一块晒得发烫的地砖上,仰头看了看天。云层很高,很薄,阳光从云缝里漏下来,在地上投出大片明亮的光斑。

“红烧排骨,”他说,“多放点糖。”

电话那头传来小禾奶声奶气的喊声:“爸爸!我想要那个绿色的——”

“绿萝还在,”林默说,“爸爸给你带回去。”

第八章 沈冰的评估

沈冰的办公室在恒泰大厦二十七层,落地窗外是这座城市最贵的一段江景。但她很少抬头看江,桌上三台显示器占满了全部视线。此刻,中间那块屏幕正同时打开着两份文档:左边是天辰科技上周提交的《启明系统技术白皮书》,右边是林默两小时前发给她的运行日志和内部测试报告。

她滑动鼠标滚轮,逐行比对。第二十三页,压力测试数据标注着“并发用户数一万,响应时间低于200毫秒”,而林默的日志显示同一时间段内,系统实际承载的并发峰值只有三千四百,响应时间中位数是1.2秒。差了三倍。

她继续翻。第三十七页,安全审计结论写着“无高危漏洞”,而林默的报告中,同一天记录的未修复缺陷有十四个,其中三个被他自己标注为“可导致数据泄露”。沈冰的食指在触控板上停住,指甲边缘泛着淡淡的青白色。

她拿起手机,翻到林默的号码,拨了出去。响了两声就接了。

“你在哪儿?”沈冰问。

“家里。刚把小禾从幼儿园接回来。”

“你发的日志我看了。”沈冰靠在椅背上,目光还钉在屏幕上,“天辰提交的白皮书,第二十三页和第三十七页,数据对不上。”

电话那头安静了几秒。然后林默说:“第二十三页,他们删了三个压力测试批次。第三十七页,安全审计用的是旧模板,模板本身就有格式错误,结论栏是手填的。”

沈冰闭上眼睛,深吸了一口气。“你什么时候发现的?”

“上周二。周明远让我签字确认最终报告,我没签。第二天赵天辰就把我叫去办公室了。”

“所以开除你,是因为你拒绝在这份报告上签字。”

“嗯。”

沈冰睁开眼,重新看向屏幕。她做技术评估八年,见过为了赶进度跳过测试的,见过在文档里美化数据的,但直接伪造核心指标和审计结论——这已经超出了商业伦理的底线,触到了法律的红线。涉及金额一点二亿,一旦交付后系统在客户现场崩溃,恒泰的损失会远超合同金额。

“你还是老样子,”沈冰说,声音比刚才轻了一些,“认死理。”

电话里传来林默极淡的一声笑。“你也是。当年编程大赛,你就非要查我的代码,明明我的程序已经跑通了。”

“你那程序有内存泄漏,不查出来你决赛要吃亏。”

“对,结果你查了四十分钟,差点耽误我拿冠军。”

“最后不还是你拿的冠军。”

两人同时沉默了一瞬。窗外的江面上有一艘游轮缓缓驶过,拖出一条白色的尾迹。沈冰用拇指摩挲着手机侧边的音量键,斟酌了一下措辞。

“林默,恒泰内部已经有人质疑这笔订单了。采购那边核过价格,天辰的报价比行业均价低了将近四成。这个价格做不出合格的系统,除非偷工减料。我需要完整的证据链——不是零散的日志,是系统性的、有时间戳的、能够证明数据造假的全部材料。”

林默没有立刻回答。手机里传来小禾的声音,远远的,在喊“爸爸我的积木倒了”。林默应了一声,然后对沈冰说:“你等一下。”

沈冰听到他放下手机的声音,脚步声,几句模糊的对话,然后脚步声回来,手机被重新拿起。

“我做了五年,”林默的声音平稳而清晰,“每一个版本的测试报告,每一次代码审查记录,每一回缺陷跟踪的完整快照,从启明V0.1到现在的V1.7,全部按时间线整理好了。包括周明远让我签字的那版伪造报告,原始文件和我标注的差异点都放在一个文件夹里。”

“存哪儿了?”

“一个U盘。三年陈的茶叶罐里,放在书架最上面一层。小禾够不着。”

沈冰忍不住弯了一下嘴角。“你知道这么做,赵天辰不会放过你。他在行业里的关系网不小。”

“我更怕半夜睡不着。”林默说,“过去半年我每天凌晨两点醒一次,脑子里全是那份报告上的数字。我签了字,系统三个月后崩溃,客户那边有人因为错误操作被系统误导——哪怕只是一个人,我都过不去。”

沈冰把椅子转了个方向,面朝窗外。江面上的夕阳正在下沉,把天空染成一大片暗金色的渐变。她想起大学时候的林默,坐在机房最后一排,对着屏幕一行一行地调代码,别人都去吃饭了,他还在那里,直到整栋楼只剩他键盘的敲击声。教授说过一句话,说林默这种人以后可能发不了财,但绝不会做亏心事。

“明天,”沈冰说,“恒泰会派技术组正式进场评估。名义是交付前的例行审查,实际上我会亲自带队。你那份完整的材料,今晚能给我吗?”

“约个地方。”林默说。

沈冰看了一眼手表。六点四十。“我公司楼下的咖啡厅,七点半。你方便吗?”

“苏晚今天加班,我先把小禾送到我妈那儿。”

“好。”

电话挂断之前,沈冰又叫了他一声。“林默。”

“嗯?”

“谢谢你。愿意把这些交出来。”

林默沉默了两秒。“谢谢你还愿意查。”

沈冰放下手机,把两份文档并排摆好,截了图,存进加密文件夹。然后她打开一封新邮件,收件人是恒泰集团法务部和技术委员会,标题栏敲下“关于天辰科技启明系统技术评估的紧急报告——初稿”。正文里她只写了一句话:发现系统性数据造假,建议暂缓交付确认,待完整证据链核实后启动合同违约审查程序。

邮件没有立刻发送。她把它存在草稿箱,关掉屏幕,拿起外套。经过走廊时,玻璃幕墙上映出她的影子,步伐不快不慢,像当年从机房走出来时一样稳。

而此刻林默正在家里翻书架。那罐茶叶在最上面一层,蒙了薄薄一层灰。他拧开盖子,里面除了茶叶包,还有一个黑色的U盘,用密封袋裹着。他把它抽出来,在灯下看了一眼。旁边的小禾抱着她的积木桶跑过来,仰头问:“爸爸,这是什么?”

“一个记录。”林默蹲下来,把她散开的辫子重新扎好,“记录爸爸有没有说谎。”

小禾不太懂,但她点了点头,把一块三角形的积木塞进他手里。“给你。盖房子用。”

林默把积木和U盘一起攥在掌心,站起来,把茶叶罐放回原处。窗外暮色渐浓,客厅的灯亮着,暖黄色的光铺在地板上。手机震了一下,是苏晚的消息:加班取消了,我买了排骨,二十分钟到。

他回了一个字:好。

然后他走进小禾的房间,把U盘放进自己明天要穿的外套内侧口袋,拉上拉链。绿萝在窗台上安静地生长,新叶已经完全舒展开,嫩绿色的叶脉在灯光下清晰可见。他浇了一点水,不多。小禾趴在门框上看他,突然说:“爸爸,绿萝长新叶子了。”

“嗯。”林默把水壶放下,“它一直在长。”

第九章 庆功宴变成问责会

第二天上午九点,天辰科技前台接到恒泰集团技术组的进场通知。前台小姑娘愣了好几秒才反应过来,电话放下后一路小跑去了赵天辰办公室。赵天辰正在和周明远讨论“启明”系统的演示方案,听到消息,手里的笔停在半空。

“怎么提前了?”赵天辰站起来,“不是说下周三吗?”

“对方说例行审查,临时调整了排期。”前台声音发紧,“人已经到楼下了,一共六个人,带队的姓沈,沈冰。”

赵天辰脸色变了。周明远下意识看了他一眼,嘴唇动了动,没敢出声。赵天辰很快恢复了笑容,整了整西装领口:“走,下去接。”

电梯门打开时,沈冰已经站在大厅。她穿一件深灰色西装外套,内搭白色衬衫,头发利落地扎在脑后,手里一个平板电脑和一份装订好的文件夹。身后跟着五名技术人员,表情都很平静,目光却在大厅里扫了一圈。

赵天辰迎上去,笑容饱满:“沈总,欢迎欢迎,怎么不提前打个招呼,我好安排接待。”

沈冰和他握了手,力道不轻不重。“赵总客气。按照合同附件第七条,交付前甲方有权进行技术评估,提前二十四小时通知即可。昨天下午我已经发了邮件。”

赵天辰笑容没变,但眼底闪了一下。他确实收到了邮件,昨晚看得心烦,没回,以为拖一拖没关系。

“是是是,邮件我看了。”赵天辰侧身引路,“那咱们先去会议室,我让技术部把资料都准备一下。”

“不用去会议室。”沈冰说,“直接去技术部吧,我想看看开发环境。”

赵天辰脚步顿了一下。周明远从后面跟上来,笑容殷勤:“沈总,开发环境比较复杂,我们先把文档调出来,您先看——”

“周总监,”沈冰打断他,语气客气但不容商量,“恒泰的评估流程是先看代码再看文档,这样能避免版本错位。麻烦带路。”

周明远看向赵天辰。赵天辰微不可察地点了一下头。一行人穿过开放式办公区,往技术部走。沿途工位上的员工纷纷抬头,又赶紧低下头去,键盘声忽然轻了很多。

技术部的门被推开时,小杨正对着屏幕上的启明系统发愁。看到沈冰和赵天辰同时出现,他慌慌张张站起来,凳子往后一推,撞到了后面的文件柜。

沈冰径直走到最近的一台开发机前。“这台机器谁在用?”

“我……我的。”小杨声音有点抖。

“麻烦让一下。”沈冰坐下,手指落在键盘上,敲了几个命令。屏幕上跳出系统信息。她又敲了一串,界面跳转,直接进入了代码仓库。小杨在旁边看得额头冒汗——这串命令不是常规操作路径,沈冰对启明系统的底层架构非常熟悉。

沈冰盯着屏幕看了将近两分钟,滚动条上上下下。然后她开口了,声音不大,但因为技术部太安静,所有人都听得清清楚楚。

“当前代码分支的最后提交时间是昨天下午五点四十三分,提交人周明远,备注是‘修复紧急缺陷’。”她转过头看着周明远,“但恒泰上周收到的版本说明文档里,开发团队的代码冻结时间是三天前。昨天提交的代码属于冻结后的非法变更。周总监,这个怎么解释?”

周明远张了张嘴。赵天辰往前一步,挡在周明远身前,笑着说:“沈总,是这样的,我们昨天发现了一个小问题,为了确保交付质量,临时做了一次修复——这是对客户负责。”

沈冰没有笑。“赵总,合同技术附件第三条规定,代码冻结后任何变更需要提交变更申请,经甲方技术负责人书面确认后才能执行。我没有收到过任何申请。”

她从平板上调出那份附件,翻到对应条款,把屏幕转向赵天辰。上面白纸黑字,红色标注,清清楚楚。

赵天辰的笑容终于挂不住了。他回头看了周明远一眼,周明远的额头全是汗,手指捏着自己的工牌挂绳,越捏越紧。

“进去说。”赵天辰压低声音,示意所有人去会议室。

大会议室里,沈冰坐下后没有寒暄,直接把文件夹打开。“赵总,我需要明确几件事。启明系统的核心模块加密密钥由谁掌握?”

赵天辰没有立刻回答。周明远在旁边小声接话:“密钥由技术部统一管理,我们有备份——”

“我问的是,”沈冰直视赵天辰,“核心架构师是谁?系统文档里写的架构设计人是‘林默’,但林默的姓名已经在半个月前从所有对外文档中删除了。说明什么?”

赵天辰的嘴角抽了一下。他往椅背上一靠,摊开手,摆出一副坦然的姿态:“沈总,你可能不了解,林默已经离职了。他的工作有完整的交接——”

“交接给了谁?”沈冰问。

周明远硬着头皮开口:“交给了我。所有文档和代码都——”

沈冰打断他:“周总监,我刚刚在机器上看了代码签名。启明V1.7的核心模块签名ID是LM20190312,这是一个个人开发者签名的格式。如果用团队交接的方式,签名应该更换为新的开发者ID。这个签名还是林默的。也就是说——”

她合上文件夹,声音平稳:“你们所谓的交接,根本没有触及核心代码。赵总,如果现在系统上线,恒泰拿到的将是一套随时可能崩溃的框架,而唯一能修复它的人已经不在了。”

会议室安静了。赵天辰的脸色肉眼可见地白下去,像是被抽走了血色。他的手指在桌面上无意识地敲了两下,停住。

刘艳坐在会议桌的另一端,这时候笑着站起来,给沈冰倒了杯水,语气亲昵:“沈总,您别急。技术细节嘛,可以慢慢对。林默虽然走了,但周总监能力也很强,给点时间——”

“刘总监。”沈冰没有接那杯水,“合同里写得很清楚,技术参数不符,甲方有权单方面终止合作并追责。恒泰的订单金额是一亿两千万,如果因为技术造假导致项目失败,违约金和损失赔偿由天辰科技全额承担。这个‘慢慢对’的时间,天辰有多少钱可以买?”

刘艳的笑容僵在脸上。她端着那杯水,放下也不是,拿着也不是。

赵天辰深吸一口气,站起来说:“沈总,给我十分钟。我协调一下。”

他快步走出会议室。没回自己办公室,而是径直去了走廊尽头,掏出手机拨出一个号码。电话响了很久才接通,那头传来林默平静的声音:“赵总。”

“林默,”赵天辰的语气压得很低,“沈冰带人来评估了。现在人在会议室。你跟她是同学,你说句话。系统到底什么情况你最清楚,只要你帮我把这关过了,条件你提。”

电话那头沉默了几秒。然后林默的声音不疾不徐地传来:“赵总,事实就是事实。”

“林默——”赵天辰的声音拔高了一截,又硬生生压下去,“你知道这意味着什么吗?”

“我知道。”林默说,“启明系统的核心模块只有我能解密。但我也知道,三个月前你让我签字的那份报告,篡改了二十三处关键测试数据。我签了一次,签字笔还没干就后悔了。这一次,我不会再签。”

赵天辰握着手机的手指关节发白。他张了张嘴,想说什么,喉结上下滚了一下,最终只说出一句:“你考虑清楚。”

电话挂断了。林默那边一片安静。赵天辰靠在走廊墙上,头顶“天道酬勤”匾额的反光正好落在他脸上。那是一块他三年前特意定制的牌匾,黑底金字,挂在办公室最显眼的位置。此刻那个“勤”字在日光灯下亮了又暗,暗了又亮。

他转身往回走的时候,脚步很重。推开会议室的门,所有人的目光都落在他身上。沈冰面前放着那份文件夹,周明远低着头不敢看任何人,刘艳坐回了角落,脸上的笑已经彻底消失了。

赵天辰坐回椅子上,最后看了一眼沈冰。“沈总,”他的声音有些沙哑,“你想怎么审,就怎么审吧。”

沈冰翻开文件夹,从第一页开始。会议室里只剩下翻纸的声音和偶尔的键盘敲击声。空调出风口送着冷风,吹得桌上的文件边角微微翻卷。阳光从窗外照进来,落在赵天辰的办公桌上,那面朝南的落地窗外面,整座城市在阳光下秩序井然地运转着,没有人知道这间会议室里正在发生什么。

沈冰拿出一支录音笔,按下录制键,放在桌面正中。

“赵总,周总监,”她说,“我们从启明V0.3的测试记录开始核对。第一份,日期是去年三月十二日,测试结论写的是‘通过’。但根据原始日志——”

她停了一下,抬起眼。

“原始日志显示,当天测试环境根本没有启动。系统全程处于离线状态。”

周明远终于抬起头。他的嘴唇在发抖,手从桌下伸出来,放在桌面上,像是要说什么。但最终他只是把那份文件推到了沈冰面前,声音干涩地挤出来一句:“这份……不是我做的版本。”

赵天辰猛地转头看向他。周明远没有回看,只是盯着桌面,额头上的汗珠一颗一颗地往下掉。

第十章 周明远的选择

晚上九点,便利店的灯牌在夜色里亮得有些刺眼。林默站在货架旁边,手里拿着一盒牛奶,是给小禾明天早餐准备的。手机震动了一下,周明远的消息只有五个字:楼下,能聊聊吗。

林默付了钱,走出店门。周明远靠在路边的灯柱上,西装外套搭在手臂上,领带扯松了半截。他手里拎着一罐啤酒,已经喝了一半。看见林默出来,他站直了身子,嘴唇动了动,像是不知道怎么开口。

“林哥。”周明远的声音有些哑,“我扛不住了。”

林默没有接话,只是走到他旁边,把牛奶放进自己的旧背包里。路灯把两个人的影子拉得很长,投在便利店玻璃幕墙上,变形又重叠。

“三年前就开始了。”周明远盯着手里的啤酒罐,像是盯着什么罪证,“赵总第一次让我改测试数据,说是‘优化一下’。就一处,把响应时间从八百毫秒改成三百毫秒。我改了。”

他抬起头看林默,眼眶泛红。

“后来就停不下来。每一次版本迭代,每一次交付前夕,他总要我调一调。调着调着,整套日志都对不上了。上个月恒泰那套方案,二十三处测试数据,他让我全部重做。我知道那是假的,可我做了。全都做了。”

林默看着马路对面小区门口的保安亭,一个保安正在打瞌睡,脑袋一点一点的。他想起三年前,周明远刚升技术总监那天,请他吃了碗牛肉面,说“以后技术部就靠咱俩了”。那时候周明远眼睛里有光。

“为什么。”林默的语气很平,没有质问的意思。他知道答案,但还是问了。

周明远笑了一声,很难听的笑,像是从嗓子眼里硬挤出来的。“房贷。孩子。怕丢工作。”他掰着手指头数,“我跟我老婆每个月要还一万七,我儿子明年上小学,私立学校一年六万。赵总说,配合他,年底奖金翻倍。不配合,就换人。林哥,我没有你那份底气。你技术硬,走到哪儿都有人要。我——”

他把啤酒罐捏扁了,铝皮发出清脆的咔嚓声。

“我丢的是工作,你丢的不是良心。”林默说。

这句话像一根针,扎在周明远绷了三年的人造表皮上。他整个人抖了一下,背靠着灯柱慢慢滑下去,蹲在地上,双手捂住脸。肩膀在抖,啤酒罐从他手里滚出去,在路牙子上转了两圈才停住。路过的行人看了一眼又移开目光,便利店的店员隔着玻璃窗张望了一下,没有出来。

林默没有拉他,也没有走开。他蹲下来,和周明远平视。

“赵天辰让你改数据的时候,有没有说过什么。”

周明远抹了一把脸,掌心里全是水和鼻涕。他从西装内兜里掏出一支录音笔,黑色的,外壳磨得发亮,像个用了很久的旧物件。

“都有。”他的声音从指缝里漏出来,“去年十一月十四号,启明第一次内测前一天,赵总把我叫到他办公室。我留了个心眼,开了录音。他说,‘测试数据调一下,别让恒泰看出来。合同签下来,后面的事情慢慢补。’这句话我存了快一年,没敢动。”

他把录音笔塞进林默手里,指尖冰凉。

林默握着那支录音笔,感觉到上面还有周明远的体温。他沉默了几秒,然后说:“明天恒泰的终审会,你自己决定来不来。”

周明远抬起头。路灯的光打在他脸上,泪痕清晰可见,但那双眼睛里的东西变了。三年前的光重新亮起来,只是一闪,又暗下去,像快要没电的灯泡。他点了点头,没说话,扶着灯柱慢慢站起来。西装外套掉在地上,他弯腰捡起来,拍了拍灰,搭回手臂上。

“林哥,”他走出去几步又停下来,没有回头,“绿萝该浇水了。”

林默看着他的背影消失在小区拐角处。便利店的灯牌还在闪,欢迎光临四个字循环滚动。他低头看了眼手里的录音笔,把它和那盒牛奶一起放进背包侧兜,拉链拉好。

回到家的时候,客厅只开了一盏落地灯。苏晚蜷在沙发一角,身上盖着条薄毯,手里还攥着本绘本。她听见开门声便睁开眼,坐起来,没有问他去了哪里,只是指了指餐桌。桌上扣着两个碗,一碗米饭,一碗排骨汤,旁边放着双筷子,汤碗下面垫着隔热垫。

“小禾非要等你,撑到九点半,实在困了。”苏晚的声音带着刚睡醒的沙哑,“我给她讲了三个故事才肯睡。”

林默把牛奶放进冰箱,坐到餐桌前。排骨汤还温着,冬瓜炖得透亮。他喝了一口,说了句“周明远找我”。

苏晚把毯子叠好放在一边,坐到他对面,用手撑着下巴看他吃。她什么都没问,只是看着他。这种安静让林默觉得心里那根一直绷着的弦慢慢松了下来。

“他给了我这个。”林默从背包里拿出录音笔,放在桌上。

苏晚看了一眼,没有去拿。“有用吗。”

“有用。”

“那明天你去公司?”

“去。”

苏晚站起来,把碗筷收进水槽,拧开水龙头冲了冲手。她背对着他说:“小禾今天画了幅画,说等爸爸回来给他看。我放你书桌上了。”

林默走到书房门口看了一眼。书桌上摊着一张A4纸,蜡笔画,歪歪扭扭的三个人。高的那个穿着蓝色衣服,手里举着什么东西,绿色的,像棵小树。旁边写着四个大字,歪歪斜斜的,小禾用左手写的,有点潦草——“我的爸爸”。林默看了一会儿,把画折好夹进自己那个手写代码笔记本里。

回到卧室的时候,苏晚已经躺下了,背对着他,留了一盏床头灯。他躺下去,感觉到她的手从被子里伸过来,握住了他的手。那只手温热干燥,指腹有些粗糙,是常年做家务留下的。

“不管明天怎么样,”苏晚的声音很轻,像是怕吵醒隔壁房间的小禾,“我和小禾都在。”

林默握紧她的手。窗外夜色浓稠,对面楼栋亮着零星几盏灯。他知道有一盏是自己这间卧室的,从外面看应该很暖。

录音笔放在床头柜上,黑色的外壳在灯光下泛着一层柔和的光泽。里面有赵天辰的声音,有周明远三年的犹豫和挣扎,有启明系统被篡改的证据。明天沈冰会听到这段录音,恒泰的技术组会介入,天辰科技那套精心编织的谎言会被一层层剥开。

他闭上眼睛。苏晚的呼吸渐渐均匀下来,手还握着他的,没有松开。

小禾的房间里传来翻身的轻微声响,然后安静了。绿萝在窗台上,白天浇过水,叶子在夜色里耷拉着,叶尖垂向地面,像一个小小的问号。明天太阳升起来,它还会朝着光的方向慢慢挺起来。

林默在黑暗里睁开眼,想着周明远最后那句话。绿萝该浇水了。他翻了个身,把苏晚的手拢在掌心里,呼吸渐渐沉下去。

第十一章 终审会

上午九点,天辰科技的大会议室比平时提前半小时亮了灯。行政部的人搬了六箱矿泉水进去,又在每张椅子前摆了名牌。长条会议桌是浅胡桃木色,擦得能映出天花板上日光灯的倒影。沈冰带着恒泰技术组四个人坐在一侧,面前摊开的是天辰两个月前提交的那套系统方案文档,纸页边角已经翻得起了毛。

赵天辰坐在另一侧的主位,衬衫领口系得规整,脸上还挂着惯常的从容。他身后站着周明远,再往后是技术部几个组长,小杨也在其中,手指不安地绞着工牌挂绳。

“沈总舟车劳顿,”赵天辰先开口,语气热络,“其实终审不用这么正式,我们这边所有材料都备好了,演示环境随时可以跑起来。”

沈冰抬起眼。她的目光很平,不带任何情绪,像在读一份与本己无关的日志文件。“赵总,先不急着演示。我这边核对文档的时候发现几个参数对不上,想请技术负责人当面解释一下。”

赵天辰的笑容顿了一瞬。他侧头朝周明远递了个眼色。周明远翻开面前的笔记本电脑,指尖在触控板上滑了两下,投影幕布上出现了启明系统的架构图。他开始讲,声音比平时低了半个调,讲到核心加密算法的时候,语速明显快了起来,几个技术名词含糊带过。

沈冰打断他:“周总监,文档第七页写的是模块化部署,为什么架构图里是单体集成?”

周明远张了张嘴。他看了一眼赵天辰,后者接过话头:“那个是早期版本,后来优化过,文档更新滞后了。”

“滞后了三个月?”沈冰把文档翻到附录页,手指点在一行参数上,“这里的吞吐量数据,和架构图的设计逻辑完全矛盾。赵总,我是做技术出身的,这种程度的对不上,不是更新滞后的问题。”

会议室里安静下来。恒泰那边一个戴眼镜的工程师开始在自己的平板上调阅东西。赵天辰脸上的笑意收拢了,他靠向椅背,两只手交叉搁在桌上,拇指互相绕着圈。

“沈总,技术细节我们可以会后再对。今天主要是终审流程……”

“赵总,”沈冰合上文档,声音不大,但每个字都落得很稳,“我这里有份东西,想请在座各位一起听一下。”

她从公文包里取出一支银灰色录音笔,放在桌面正中央。会议室所有人的视线聚了过去。赵天辰盯着那支笔,交叉的手指停住了。

沈冰按下播放键。

录音一开始有些底噪,然后是椅子挪动的声音,接着一个男声响起来,在场的人都认得——赵天辰。他的声音带着一种压低了的急切:“测试数据调一下,别让恒泰看出来。合同签下来,后面的事情慢慢补。”

这句话在安静的会议室里回荡。只此一遍,沈冰就按了暂停。

赵天辰的脸色变化只用了半秒。他猛地坐直,右手在桌面上拍了一下:“这是伪造的!沈总,你从哪里拿到的这种东西?这是商业陷害!”

他转向周明远:“明远,你说,我们什么时候做过这种事?”

周明远站在原地。他面前摊着那本翻烂了的笔记本,手指按在纸页上,指节泛白。过去的三年像一帧帧过场动画在他脑子里飞速闪回——第一次帮赵天辰改数据时的手抖,后来的麻木,再后来的理直气壮。他想起昨天便利店门口林默看他的眼神,没有责备,也没有同情,只是问他“为什么”。

“赵总。”周明远的声音不高,但会议室拢音,每个人都听得清楚,“是我录的。”

赵天辰整个人僵住了。

“去年十一月十四号,你办公室。你让我改启明的内测数据,说先签合同,后面再补。”周明远一字一字地说,语气平板得像在念一份测试报告,“我留了心,录了音。这支笔在我抽屉里放了一年。”

赵天辰猛地站起来,椅子腿在地板上刮出一声尖响。他的脸涨成猪肝色,嘴唇哆嗦了两下,但没发出声音。他转头去看会议室里其他人的脸——技术部的组长们低着头,刘艳缩在角落里假装翻手机,恒泰那边四个人面无表情地记录着什么。

沈冰把录音笔收回包里,动作不急不缓。她看向会议桌末端,那里坐着一个穿深灰西装的年轻人,胸前别着天辰科技的董事徽章。年轻人推了推眼镜,翻开面前的文件夹。

“赵总,”他的声音很年轻,但措辞老练,“董事会昨天收到了恒泰方面的问询函。按照公司章程,在调查期间,您的职务暂停,由技术副总裁暂代日常管理。”

赵天辰站在那里,嘴巴张了又合。他环顾四周,像是在找谁能够反驳这句话,目光扫过每一个人,最终落到周明远身上。周明远没有回避,他盯着赵天辰的眼睛,那里面有种破釜沉舟后的空茫,像刚烧完一堆旧文件,只剩灰烬。

“你们……”赵天辰的声音哑了,“你们这是串通好的。”

刘艳悄无声息地从侧门溜了出去。她那双高跟鞋踩在地毯上几乎没有声响,门合上的时候只发出一声极轻的咔嗒。

沈冰转向董事会代表:“恒泰集团的决定是,原合同终止。”

会议室里响起一阵压抑的抽气声。坐在后排的技术部员工互相交换眼神,有人拿出手机又赶紧放回去。赵天辰终于坐了下来,两只手撑在桌沿上,肩膀塌下去,像是被人抽掉了脊椎。

“但是,”沈冰的声音缓了半拍,目光投向会议室门口。

林默不知道什么时候站在了那里。他穿着昨天那件深灰色的夹克,内搭一件洗得有些发白的藏蓝衬衫,手里拿着一个黑色文件袋。他站得很直,像一棵被风吹过很多年、根却始终扎得很深的树。

“恒泰愿意与天辰重新谈判,”沈冰看着林默说,“前提是技术团队由林默负责。”

赵天辰抬起头,眼神复杂地看了林默一眼,有恼怒,有不甘,更多的是一种说不清的疲惫。他嘴唇动了动,最终什么都没说。

林默走进会议室。他走路的声音很轻,鞋底是软的。他在沈冰对面坐下,把文件袋放在桌上,没有看赵天辰,也没有看周明远,目光直接落在董事会代表身上。

“我有条件。”他开口,声音一如既往地低沉,语速不快。

董事会代表做了个“请”的手势。

“公司要成立独立的技术伦理委员会,”林默说,“由外部专家、内部工程师和董事会代表共同组成。所有技术交付物和测试报告,必须经过双签——项目负责人签字,伦理委员会代表签字。任何一方拒绝签署,报告不得对外提交。”

他的话说完,会议室里安静了几秒。沈冰微微点了下头,嘴角有一丝极淡的弧度。董事会代表翻看手里的文件夹,像是在确认权限。

“可以。”年轻人抬起头,“董事会这边可以授权。伦理委员会章程由你起草,一个月内提交审议。”

赵天辰突然笑了一声。那声音干涩,从喉咙里挤出来,带着一种破罐破摔的自嘲。“你们以为换了个人、设个委员会就能解决所有问题?”他站起来,把椅子往后推,目光扫过在座每一个人,“启明的核心代码还在他脑子里,你们离了他照样转不动。”

没有人接话。赵天辰站了一会儿,像是在等谁来挽留他。等来的只是周明远翻开文件夹的沙沙声,和恒泰工程师在平板上划动的轻响。

他推开椅子,大步走出了会议室。门在他身后合拢,发出一声沉闷的撞击。

周明远慢慢坐下来,双手插进头发里,肩膀轻微地起伏着。小杨从后排走过来,在他旁边放了瓶矿泉水,没说话就退回去了。

沈冰转向林默:“什么时候可以开始?”

林默打开文件袋,抽出一沓手写笔记,是那本代码笔记本上的复印页。“启明系统目前的状态做不了交付,”他把笔记摊在桌上,“给我两周,把核心模块重写。测试用例我会同步补上。”

沈冰拿过一页笔记翻看,上面是密密麻麻的手写代码逻辑,字迹工整得像打印体。“你还是老样子,”她淡淡地说,语调里有一丝旁人难以察觉的旧日熟稔,“写代码永远用手写先。”

林默没有接这句话。他把文件袋重新整理好,站起来走向门口。经过周明远身边时,他停了一秒。周明远抬起头,眼眶泛红。

“明天开始,”林默说,“你来重写测试用例。全部过程双签。”

周明远愣住。旁边的几个技术组长也都愣住,面面相觑。谁都知道测试用例是启明被篡改最严重的地方,让周明远来重写,等于让他亲手覆写过去三年自己的每一个错误。

“我……?”周明远的声音哑得厉害。

“你最熟悉漏洞在哪里。”林默已经走到门口,手搭在门框上。他回头看了周明远一眼,眼神平静,和昨天便利店门口一样,只是多了一层东西,像是在说:我信你还能写干净的代码。

周明远低下头,把笔记本合上,用手掌压平了封面翘起的边角。他点了一下头,动作很轻,但整个会议室的人都看见了。

沈冰收好文件,带着恒泰团队起身离场。经过林默身边时,她低声说:“咖啡厅那杯咖啡,还欠着。”

“记着。”林默说。

恒泰的人陆续走出会议室。偌大的空间只剩天辰自己的员工,日光灯发出细微的电流声。小杨走到林默身边,小声问:“林哥,那盆绿萝……还在技术部窗台上呢。”

林默回头看了一眼会议室窗外。走廊尽头,技术部的玻璃门半开着,隐约能看见窗台的一角,绿萝的藤蔓从里面探出来。阳光从东面照进来,照得那些叶子绿得发亮。

“先不搬,”林默说,“让它再长两天。”

第十二章 新的工位

一周时间说长不长,说短也不短。

林默的返聘通知是周五下午发出的,全公司邮件,抬头是董事会。措辞很正式,说是“经研究决定,返聘林默同志担任技术副总裁,全面负责启明系统的重构与交付工作,并牵头组建技术伦理委员会”。小杨把邮件截图转到技术部的群里,后面跟了三十多个鼓掌的表情。周明远没有在群里说话,但那天下午他把自己工位上那堆乱七八糟的测试报告全清理了,桌面收拾得一尘不染,连键盘都拆下来擦了键帽缝隙里的灰。

周一早上,林默到得比平时还早。七点四十分,他把车停在地下车库,坐电梯上到三楼。技术部的门禁还没完全启动,他按了指纹,玻璃门滑开,里面灯只亮了一半。靠窗那排工位空荡荡的,只有绿萝的藤蔓在晨光里泛着水润的光泽。他走过去看了一眼,叶子又多了几片新芽,有一根藤已经爬到了隔断顶端的金属横梁上,自然卷曲的须子扒着铝合金的边缘,像是要把整面隔断都变成自己的地盘。

他站在那儿看了几秒,然后去了人力资源部。手续办得很快,签字、领工卡、确认合同条款。人力专员是个去年才来的小姑娘,把合同推过来的时候手有点抖,大概是听说了上周终审会的事,看林默的眼神带着一种小心翼翼的敬意。林默认真看完每一条,在一份补充协议上多停留了一会儿,那是关于技术伦理委员会权限的条款。他提笔改了两处措辞,把“建议权”改成了“否决权”,又加了一行“委员会决议对技术交付物具有一票否决效力”。人力专员犹豫了一下,还是盖了章。

新办公室在四楼,独立空间,落地窗正对园区中央的银杏大道。行政部已经布置好了,一张宽大的实木办公桌,一把人体工学椅,墙边立着资料柜,窗台上摆了两盆新的蝴蝶兰。林默在门口站了半分钟,转头对跟着过来的行政专员说:“帮我把桌子搬到三楼技术部去。”

专员以为自己听错了:“林总,这间是副总裁办公室,按级别……”

“我知道。”林默把自己的旧保温杯放在那张光洁的实木桌面上,杯底和桌面磕出轻微的一声响,“但我大部分时间都在写代码和看文档,一个人在四楼不方便。三楼的开放区还有位置吗?”

“有倒是有,就是靠打印机那边,可能有点吵。”

“吵没关系。”

于是上午十点,技术部的人都目睹了这样一幕:行政部两个小伙子抬着那张实木桌子进了技术部开放区,林默自己拎着椅子跟在后面。小杨第一个反应过来,把打印机旁边的杂物清走,又用抹布把桌面擦了两遍。桌子摆好之后,林默坐下去试了试,抬头能看见整个技术部的工作状态,左手边是小杨,右手边空着一个位置,正对面是那面爬满绿萝的隔断墙。

“林哥,坐这儿你不嫌闹腾?”小杨递过来一杯热水。

“我在这儿干了五年,习惯了。”林默接过杯子,目光扫过整个开放区,“而且写代码的时候听点键盘声,思路更顺。”

周明远从自己的工位往这边看了好几眼,手里的笔转来转去,就是不过来。直到林默主动走过去,在他桌边站定。

“伦理委员会的首席工程师,你来当。”林默没有寒暄,直接开口。

周明远手里的笔啪嗒一声掉在桌上。旁边几个工位的同事耳朵都竖起来了,但没人敢转头。周明远张了张嘴,脸上的表情像是在几秒钟内经历了好几种情绪的快速切换,震惊、困惑、惭愧,还有一点说不清的惶恐。

“林哥,我……”他声音压得很低,低到只有两个人能听见,“我做过那些事,你让我进伦理委员会?你不怕别人说闲话?”

“别人说什么不重要。”林默拉开他旁边的空椅子坐下来,把声音也放低了,“你签过假的测试报告,改过数据,你比任何人都清楚一份报告从哪一步开始变形、在哪一个环节最容易被人动手脚。我需要一个能从反面看懂漏洞的人。”

周明远低下头。他的手指按在笔记本封面上,指节发白。

“你懂哪里容易出问题,”林默看着他的侧脸,“因为你走过弯路。”

这一句话像是一颗沉在水底很久的石子终于被捞了上来,带着湿漉漉的重量。周明远的肩膀抖了一下,他把脸偏到一边,用手背蹭了一下鼻子。过了几秒,他转回来,眼睛是红的,但眼神不再躲闪。

“我干。”他说。

林默点了一下头,站起来的时候顺手拍了拍他的椅背,什么多余的话都没有。他走回自己新工位,路过小杨桌子时停了一下:“恒泰那边发过来的技术对接文档,你转一份给周明远,让他先看接口协议部分。”

小杨响亮地应了一声,手指在键盘上敲得飞快。

中午之前,刘艳来了。

她没去技术部,而是直接去了人力资源部。有同事在走廊里看见她,穿了一身灰色的西装套裙,脸上没有化妆,跟以前那个走到哪儿都带着一阵香水风的样子判若两人。她进人力办公室大概二十分钟就出来了,手里只有一张打印纸,折了两折攥在掌心。路过技术部门口的时候,她往里瞥了一眼,正好看见林默坐在开放区的工位上,面前摊着那本手写笔记本。

她停住脚步,站在玻璃门外。林默抬起头,隔着门和她对视了一瞬。刘艳嘴唇动了一下,像是想说什么,最终只是把手里的纸攥得更紧了些,转身往电梯间走去。那张纸的背面透出“离职申请表”几个字的轮廓。

下午三点,赵天辰的离职手续办完了。

消息传得很快,销售部那边有人站在走廊里小声议论,技术部这边没人吭声,但好几个人的视线都往四楼的楼梯口飘。林默在改代码,手指在键盘上没停,但改了大约二十分钟之后,他把屏幕锁了,站起来往茶水间走去。

茶水间在四楼和五楼之间的夹层,要经过电梯间。他拿着一只空杯子过去,刚走到电梯口,右边的电梯门叮一声开了。赵天辰从里面走出来,穿着一件深蓝色的夹克,右手拎着一个牛皮纸袋,看起来装的是办公室最后剩下的私人物品。大概是他办公室那幅“天道酬勤”的匾额,纸袋的边角被一个硬质的长方形撑得鼓起来。

两个人在电梯间相遇。赵天辰看见林默,脚步顿了一下,脸上的表情先是紧绷,然后慢慢松弛下来,变成一种林默从未在他脸上见过的神情,像是所有的气势和算计都从那张脸上被抽走了,只剩下一副疲惫的中年男人的轮廓。他比上周瘦了些,颧骨更明显了。

“你赢了。”赵天辰开口,声音沙哑,喉结上下滚动了一下。

林默看着他。茶水间方向传来烧水壶咕嘟咕嘟的声响,走廊尽头的窗户外,银杏叶在午后的风里翻着银绿色的背面。

“赵总,没有人赢。”林默把杯子换到左手,声音和平时一样低而稳,“公司差点输掉的是信任。”

赵天辰的嘴角抽动了一下,像是想笑又笑不出来。他低头看着手里的纸袋,纸袋边缘被他攥得起了皱。沉默持续了大概有十几秒,电梯门在他身后缓缓合上又弹开,发出滴滴的提示音。他转身走进电梯,按了一楼,门合拢之前,他一直看着林默的方向,嘴唇紧抿,一个字也没再说。

电梯下行,数字从四变成三,又变成二。林默站在原地,直到那个红色的数字停在“1”不再变化,才转身去了茶水间。他洗了杯子,接了一杯温水,慢慢走回工位。路过窗台的时候,他停下来看了一眼那盆绿萝。藤蔓又长了一截,今天早上还只是搭在横梁上,现在已经绕过横梁的直角,往旁边的隔断顶部爬过去了,叶片在阳光里绿得发亮,每一片都像刚擦过一样干净。

他坐下来,翻开那本封皮已经磨得起毛的代码笔记本。前面的页数密密麻麻写满了启明系统的原始架构和算法推演,最后一页还停留在被开除那天他记下的一个技术疑点。他翻过那页,在全新的一面上,用黑色签字笔写下了一行字。字迹清晰工整,力透纸背。

启明二版,诚信签名机制。

他看了这行字两秒,合上笔记本,把它放在桌上那盆绿萝旁边。阳光从窗外斜进来,照在笔记本的黑色封皮上,也照在绿萝新抽出的那片叶子上,叶尖挂着一颗极细的水珠,折射着午后的光,像一枚微小的、干净的印章。

第十三章 沈冰的合同

签约仪式定在周五上午十点,天辰科技一楼多功能厅。

林默提前二十分钟到场,和技术部的小杨一起检查演示设备。投影幕布已经降下来,上面打着天辰和恒泰两家的公司标志,中间是“战略合作签约仪式”几个规整的黑体字。桌面上摆着两份合同文本,蓝色封皮,边角对齐。小杨蹲在地上理线,嘴里嘀咕了一句“这接口怎么跟恒泰上次给的文档不一样”。林默蹲下去看了一眼,说恒泰这次换了新的认证协议,让他把转接头找出来备着。

九点四十分,沈冰带着恒泰技术组三个人到了。

她穿一件浅灰色西装外套,头发扎得利落,脖子上挂着一根细银项链,和她大学时候的打扮几乎没什么区别。林默迎上去,两人握手。沈冰的掌心微凉,握得干脆。

“准备了?”沈冰问。

“该备的都备了。”林默侧身引她往里走。

沈冰路过投影幕布的时候扫了一眼上面的合同版本号,脚步没停,嘴上说了一句:“第三页的补充条款你们法务看过了?”

“看过了,有异议的地方在附件里用红笔标了。”林默答,“第三方测试报告的出具机构我们推荐了两家,一家本地的,一家北京的,资质都在附件里。”

沈冰点头,走到前排坐下。她身后的恒泰工程师打开笔记本电脑,屏幕上是恒泰内部的合同审批系统,蓝汪汪的界面在会场灯光下反着光。

十点整,签约开始。

天辰方面主持签约的是新上任的CEO,姓方,五十来岁,戴一副细框眼镜,说话不疾不徐。他简短致辞之后,请沈冰代表恒泰签字。沈冰翻开合同,从西装内袋抽出一支黑色签字笔,在签字页上端端正正写下了自己的名字。笔尖划过纸面的声音在安静的会场里格外清晰。

签完主合同,方总拿起第二份文件,是补充协议。他念了一条重要的增补内容:“第十二条,所有技术交付物须附第三方独立测试报告,由具备国家认可资质的检测机构出具,相关费用由天辰科技承担。报告作为验收的必要条件之一。”

念完这一条,他特意朝林默的方向看了一眼。林默坐在技术部区域的第二排,微微点了一下头。这个条款是他上周和方总、法务一起讨论后加进去的,方总当时只说了一句话:“这笔钱花得值,买的是长治久安。”

沈冰把补充协议接过去,同样签了字。两份文件交换回来的时候,她的目光越过桌面,和林默对视了不到一秒。那个眼神里没有什么多余的情绪,只是确认了某一件事就这么定下来了。

掌声响起来。销售部剩下的人拍得格外用力,似乎想把过去一个月里所有的尴尬都盖过去。技术部这边拍得克制一些,小杨在鼓掌的间隙还小声跟旁边同事说了句:“以后交付前多一道关,累是累点,但踏实。”

仪式结束后是午餐会,在隔壁的宴会厅。林默没去,他回技术部处理了一个恒泰技术组上午临时提出的接口问题。等他处理完下楼,已经快一点了。走到一楼大厅的时候,看见沈冰站在旋转门外面的台阶上,身旁没有其他人。

“没去吃饭?”林默走过去。

“吃不惯应酬的饭菜。”沈冰把手里一瓶没开封的矿泉水递给他,“你也没去。”

“刚改完几行代码,不饿。”

两人并肩走下台阶,往园区东南角的咖啡厅走去。那家咖啡厅开在园区最偏的角落,落地窗外正对着一个小型人工湖,平时没什么人,只有几只常驻的野鸭在水面上游荡。推门进去,吧台后面的服务员在打瞌睡,头顶的音响放着很轻的爵士乐。两人挑了靠窗的位置坐下,林默要了一杯美式,沈冰要了拿铁。

窗外人工湖的水面被午后的风吹出细密的波纹,一只野鸭把头扎进水里,尾巴翘起来,好一会儿才冒出头,抖了抖翅膀上的水。

沈冰用勺子搅着拿铁里的奶泡,忽然说:“你还记得大三的编程大赛吗?”

林默喝了一口美式,想了想:“记得。”

“你当时查我代码,一行一行地看,我数据集里有个边界条件没处理好,你直接指出来。”沈冰把勺子搁在杯沿上,语气像是翻出了一件压在箱底的旧事,“我当时气得三天没理你。同寝室的人问我怎么了,我就说咱们班那个林默太较真了。”

林默笑了一下,嘴角的弧度很浅。“后来你拿了第一名。”

“对,我改了那个边界条件,答辩的时候评委专门问了那个逻辑,我讲得滴水不漏。”沈冰端起杯子,隔着杯沿看他,“所以我现在查你的代码,也是这个道理。”

林默把美式杯子往前推了推,在杯垫上轻轻顿了一下。“你查就是了。启明的日志和测试记录全部对得上,第三方测试机构下周进场,数据我提前给你开只读权限。”

“不用提前开。”沈冰摇头,“正式流程走,该什么时候看就什么时候看。我不需要特别通道。”

她这句话说得很平,但林默听懂了里面的意思。沈冰要的不是人情,是规矩。两个人在这件事上的默契从大学延续到现在,不需要额外解释。

沈冰放下杯子,从身边的公文包里取出一张名片,推过桌面。名片上印着恒泰集团技术中心总监的头衔和她的直线电话。“以后技术对接的事直接打这个电话,不用走销售那条线。”

林默收下名片,也把自己的递过去。他那张名片还是上周新印的,头衔写着天辰科技技术副总裁,纸质带一点磨砂手感。沈冰接过去看了一眼,念出了声:“林副总裁。”

林默举起杯子,里面还剩小半杯美式,杯壁上凝了一层细密的水珠。“合作愉快,沈总监。”

沈冰也举起拿铁,杯壁碰在一起,声音很轻。她喝了一口,放下来,目光落在窗外那几只已经游到湖心的野鸭身上。“启明这个名字是你起的?”

“嗯。第一版架构的时候,在纸上画流程图,画到凌晨四点多,窗外正好天蒙蒙亮,启明星还在。”林默顺着她的视线看向湖面,“就叫了这个名字。”

沈冰没有说话,过了几秒才把视线收回来。她站起身,把公文包挎到肩上。“走了,下午还要去一趟你们研发中心看环境监测模块的接口文档。那份文档是你写的?”

“是我写的。”林默站起来。

“那我更得仔细看。”沈冰笑了一下,转身往咖啡厅门口走去。走到门边又停下来,回头说了一句,“你那盆绿萝还在窗台上?小杨发朋友圈的时候我看见了,爬了老大一片。”

“在的。”

“下回我自带一盆过来,换你一根藤回去养。”

林默点点头,目送她推门出去。阳光从门外涌进来,在咖啡厅的水磨石地面上铺开一片暖色,又随着玻璃门的合拢缓缓收窄,最后变成一道细细的亮边。

他坐回去,把半杯已经凉透的美式喝完。窗外的人工湖上,那几只野鸭排成一列往北岸游去,水面上拖出几道散乱的涟漪,渐渐又平复如镜。他拿出手机,给苏晚发了一条消息:“合同签完了,晚上正常回家吃饭。”

苏晚秒回了一个字:“好。”

后面跟了一个表情,是一朵简笔画的小花。林默看着那朵小花,嘴角动了动,把手机收进口袋,起身离开咖啡厅。推门出去的时候,正午的阳光打在脸上,温热而明亮。他眯着眼看了看天,天空很高很蓝,一丝云都没有。

第十四章 小禾的画

公园的草坪修剪过,短而密,闻起来有一股清冽的草汁味。林默把野餐垫铺在湖边那棵大樟树底下,树冠筛下来的阳光碎碎的,落在垫子上像撒了一把不规则的铜钱。小禾坐在垫子边缘,两条腿够不到地,晃来晃去,面前铺着一张八开的画纸和一盒十二色的水彩笔。

“爸爸,你今天不许看手机。”小禾拿起一支深绿色的笔,在纸上画了一个圆,又画了两片椭圆的叶子,动作很稳,像是练过很多遍。“老师说画画要专心。”

林默把手机调成静音塞进裤兜,在她旁边盘腿坐下来。“好,不看。”

苏晚从保温袋里取出一个小饭盒,里面是切好的苹果和一小串蓝莓。她把饭盒搁在垫子角上,自己坐在林默身边,膝盖微微曲着,翻开一本带来的杂志。湖面上有风吹过来,吹动了小禾额前的碎发,也吹得那本杂志的书页哗啦啦响。

小禾画完那盆绿萝,又在旁边画了一个长方形,上面添了几条竖线。“这是爸爸的电脑。”她抬起头,眼睛圆圆的,瞳孔里映着樟树叶缝里漏下的光点,“爸爸坐在电脑前面。”

林默低头看那张画。小禾又画了一个人形,头发涂成棕色,身上是一件玫红色的衣服。“这是妈妈。”她换了支浅蓝色的笔,在自己那个小人手里画了一朵五个花瓣的花,“我拿花。”

三个小人分布在纸面的左右两边,中间留了一大片空白。小禾歪着头看了看,似乎不满意,又拿起笔在那片空白里画了一张桌子,桌上放了一个杯子,杯口冒着三条波浪线。

“爸爸的杯子。”小禾满意地放下笔,把画纸举起来给苏晚看,“妈妈你看。”

苏晚放下杂志,接过画纸仔细端详了一会儿。“小禾画得真好。爸爸为什么坐在电脑前面?”

“因为爸爸要上班呀。”小禾说得很理所当然,“爸爸上班的时候就是坐在电脑前面,我在幼儿园的时候就是吃点心。”

林默伸出手指,在那张画的绿萝叶子上轻轻碰了一下。颜料还没完全干,指尖沾了一点点绿。小禾看到了,咯咯笑起来,说爸爸你的手变成绿的了。

苏晚从包里拿出湿巾,抽了一张递给林默。她停了一下,像是想起了什么,语气放得很平:“那天你去幼儿园接小禾,她回来问我,说别的小朋友都是妈妈来接,为什么今天是爸爸。”

林默擦手指的动作顿了一下。

“我跟她说,爸爸最近在换一个地方上班,所以有时间来接你。”苏晚把湿巾接回去,团了团放进身边的垃圾袋里,“她今天早上出门的时候自己说,爸爸现在上班的地方有大窗户,能看见楼下的树。”

小禾已经把画纸翻过来,在背面涂涂画画。她似乎听到了自己的名字,抬起头来,眨了两下眼:“爸爸,你以前那个公司为什么要赶你走?”

樟树外面有几个人在放风筝,一只蓝色的燕子风筝摇摇晃晃地升起来,线绷得直直的。林默听着风筝线在风中发出那种细而长的嗡嗡声,想了一会儿。

“因为爸爸不肯在一张纸上随便签字。”他尽量说得简单,每个字都放得很慢,“那张纸上写的东西不是真的,签了字就等于说了假话。”

小禾的笔停在半空中,黄色的笔尖悬在纸上。“老师说不可以骗人。”她皱着眉头,像在努力把两件事放进同一个格子里,“爸爸没有签,所以爸爸做得对。”

她把笔放下来,爬过来,两只手撑在林默的膝盖上。她身上有一股淡淡的儿童面霜的气味,混着青草和阳光的味道。林默伸手把她抱起来,让她坐在自己的臂弯里。小禾用沾着黄色颜料的手指戳了戳林默的鼻子,说爸爸你的鼻子变成黄色了。

苏晚在旁边举起手机,屏幕对着他们。“别动,这个角度好。”她连拍了三张,低头翻看,嘴角弯起来,“这张可以挂在你新办公室。小禾举着花那张。”

“挂家里。”林默说。

苏晚抬起眼来看他。

“挂家里。”林默又说了一遍,嗓音很平,但每个字都放了重量,“提醒我为什么上班。”

苏晚没有接话。她把手机收起来,伸手把林默肩膀上的一片樟树叶子拈掉,动作很轻,指尖只在他肩膀上停了一瞬。

小禾从林默怀里挣下来,跑回画纸旁边,趴在地上继续画。苏晚看着她的背影,过了一会儿才低声说:“绿萝长新叶子了。周末我从公司那盆上剪了一截,泡在水里,已经生根了。”

“嗯。”林默应了一声。

“你打算把新办公室也摆一盆?”

“你带来的那盆放家里就行。”他说,“公司那盆还是放在技术部窗台上,大家都能看见。”

苏晚点了点头,没有再多说。风从湖面上吹过来,带着一点水汽和远处烧烤摊的炭火气。小禾画完最后一笔,把画纸举起来对着天空看,阳光透过薄薄的纸面,把那些颜色映得透亮。她画的是三只鸟,一大两小,排成一排往一座歪歪扭扭的彩虹那边飞。

“这是爸爸,这是妈妈,这是我。”小禾指着那三只鸟,语气笃定,“我们要飞到彩虹上面去。”

林默把她连人带画抱起来,让她坐在自己肩头。远处的风筝已经飞得很高了,蓝色的燕子在天空里变成一个很小的点,线几乎看不见了。苏晚收拾好野餐垫和饭盒,把背包背到肩上,抬手看了一眼表,说该回去做饭了。

往公园门口走的路上,小禾趴在林默肩头,已经有点困了,眼皮慢慢往下垂,但还是攥着那张画不肯松手。苏晚走在林默身侧,一只手搭在他背上,像是怕他背着小禾走不稳,又像只是单纯地想搭着。

出了公园大门,路边一排银杏树的叶子已经开始泛黄,风一吹,有几片打着旋儿落下来,落在小禾的鞋面上。苏晚弯腰把那片叶子捡起来,放进口袋里。

林默的手机在裤兜里震了一下。他等走到停车场,把小禾换到苏晚怀里,才腾出手来看。

周明远发来一条消息:“启明二版第一个模块测试通过,签名已双签。日志我全部归档了,只读权限给到你,随时可以看。”

下面附了一张截图,是测试通过的绿色进度条,旁边有两个签名栏,一个是周明远的电子签名,另一个是空的。

林默打字回复:“继续。下一个模块明天上午同步。”

他发完消息,把手机收进口袋。苏晚已经打开了后座车门,正弯腰把小禾放进儿童座椅里,安全带扣上时发出清脆的一声响。小禾迷迷糊糊地睁开眼,说爸爸把画收好。

林默接过那张画,折了两折,放进外套内侧的口袋里,贴着胸口的位置。画纸边缘还带着太阳晒过的温热。

苏晚绕过车头坐进驾驶座,发动车子。林默拉开副驾门坐进去,系好安全带。车子驶出停车场,汇入主路,两侧的银杏树一株一株往后退去,叶子在夕阳里泛着柔和的金黄色。

苏晚开了一段,忽然说:“晚上想吃什么?”

“都行。”

“那就做你上次说好吃的那个番茄牛腩,家里还有一罐番茄。”

“好。”

车子驶过一座立交桥,桥下的车流像一条发光的河。林默把手伸进外套口袋,指尖触到那张画的折角。他没有把画拿出来,只是隔着布料按了按那个位置。后座传来小禾均匀的呼吸声,她真的睡着了。

前方路口的信号灯跳成绿色。苏晚轻踩油门,车子平稳地驶过路口。远处的天际线上,最后一抹晚霞正在褪去,城市灯火从街道两边渐次亮起来。

第十五章 旧保温杯

新办公室的窗朝南开,上午的光线铺满整张桌面。林默把从家里带来的纸箱搁在桌角,箱子里没几样东西,几本技术手册,一个文件夹,还有用旧报纸裹着的一团。

他先拆开报纸,绿萝的盆沿露出来,土还是湿的,苏晚昨晚浇过水。他把花盆放到书架第二层,转身去拆剩下的东西。报纸摊在桌上,露出一个不锈钢保温杯,杯身坑坑洼洼的,靠近底部有一道两厘米长的划痕,漆面崩开,露出里面银亮的金属本色。

林默拿起杯子端详了一会儿,手指顺着那道划痕蹭过去。五年前,他还在上家公司做助理工程师,加班到凌晨三点,站起来倒水时头晕,杯子从手里滑出去,磕在茶水间的台面上。当时他弯腰捡起来,看了看没漏水,接着用了。后来跳槽到天辰,这个杯子也跟着过来,每天早上泡一杯茶,晚上加班再续热水,日复一日,杯壁内侧的茶渍洗都洗不干净了。

昨晚苏晚看见他从箱子里翻出这个杯子,正在擦灶台的抹布停了一下。“扔了吧,给你买个新的。现在那种保温杯,轻的,三百多克,你颈椎不好。”

林默当时没应声,只是把杯子搁在水池边。今天早上出门前,他还是把它装进了箱子。

办公室门被敲了两下,小杨探进来半个脑袋。“林总,十点开会,技术伦理委员会第一次全体会议,会议室在三楼。”

“知道了。”

小杨没立刻走,目光落在林默手里的保温杯上。“林总,这个杯子……得有年头了吧?我看着比我工龄都长。”

林默把杯子放在桌上。“五年。”

“那还不换一个?现在有一种带温度显示的,还能提醒喝水。”小杨咧嘴笑,“我上次在商城看见一个,挺好看的,要不我帮你——”

“不用。”林默拿起杯子,手指叩了叩杯壁,声音沉闷厚实,“它装过五年的水,知道什么时候该热,什么时候该凉。”

小杨愣了一下,挠了挠后脑勺。“这话听着……挺像你的。”他没再多说,退出去带上了门。

林默拧开杯盖,内胆里还残留着淡淡的茶垢,闻起来有一种微涩的清香。他去走廊尽头的饮水机接了热水,拧紧盖子,放在桌角的杯垫上。杯身的水汽慢慢凝结,从划痕处渗出一小颗水珠,沿着不锈钢表面滚下去,在桌面上洇开一个极小的深色圆点。

下午两点五十分,林默提前到了三楼会议室。长桌两侧已经坐了六七个人,周明远在最里面靠窗的位置,面前摊着一份文件,旁边放着一台录音笔。研发组的小郑和测试组的老孙挨着坐,另外三个是质量部和法务部派来的代表,还有两个新面孔,是上个月刚入职的工程师。

周明远抬头看了林默一眼,点了下头,继续低头翻文件。

林默把保温杯放在长桌正中间,杯底磕在桌面上,发出一声不大不小的闷响。所有人都抬起头来。

“开会之前,说一件事。”林默拉开椅子坐下,手指点了点杯身。“这个杯子,五年前摔过一次,那道划痕看见了吗?”

几个人凑近看了看,小郑点头说看见了。

“摔了之后,杯壁的真空层没坏,保温效果还在,我就没扔。”林默把杯盖拧开,热气从杯口冒出来,在午后的光线里形成一缕细细的白雾。“但是它一直在提醒我——差一点就废了。一道划痕,再深半毫米,整个杯子就漏水,只能当废铁卖。”

会议室里安静下来,只有空调出风口的嗡嗡声。

周明远放下了手里的笔。

“咱们技术部做的东西,精度以毫米算,误差以微米计。差一点,就是废品。”林默把杯盖重新拧紧,推到桌子中间,杯身上那道划痕正对着所有人的方向。“今天开始,所有测试报告要过这个杯子——谁的数据有水分,自己先倒掉,别往上传。双签制度正式生效,签名栏空着一个,我陪你们一起签。”

他看向周明远。周明远迎上他的目光,喉结动了一下,然后拿起面前的文件,站起来走到会议桌前端。

“启明二版,第一个模块的测试报告。”周明远把文件翻到最后一页,两栏签名位并排,左边他已经签了,右边空着。“所有原始数据、测试日志、异常记录全部归档,只读权限对我和林总同时开放。数据链路可追溯,篡改即触发审计告警。”

他把文件推到林默面前。

林默从胸前的口袋里抽出一支钢笔,拧开笔帽,在右边签名栏写下自己的名字。最后一笔落下时,笔尖在纸面顿了顿,留下一个比正常笔画略深的墨点。

小郑举起手。“林总,我之前负责的那组数据,上周四有个波动,我按规范提交了异常说明,但后来发现是测试环境网络抖动引起的,要不要重新跑一遍确认?”

“跑。”林默说,“跑三遍,取中位数,原始数据和修正数据一起归档。”

“明白。”

老孙接着开口:“接口稳定性测试还差一组边界值用例,今晚我加班补上。”

“明天上午九点前过审。”林默合上面前的文件,“第一份双签报告,我签了。以后每一份,我来签第二个名字。谁觉得我签得不对,可以会上提,可以私下找我,也可以直接向伦理委员会申诉,流程上墙,谁都可以走。”

会议室里陆续响起椅子挪动的声音。小郑站起来把文件收进档案袋,老孙在笔记本上记下待办项,质量部的代表拿起手机拍了一张保温杯的照片,说是要放到部门文化墙上。周明远收拾录音笔的时候,手指在杯身上轻轻碰了一下,那道划痕的触感让他动作停了一瞬。

林默把保温杯拿起来,拧开盖子喝了一口。水温正好,不烫不凉,从杯口流进喉咙的时候带着一丝枸杞的甜味。

会议结束,众人陆续散去。周明远走在最后,到门口时转过身来。

“林哥。”他叫了一声,声音比平时低,“那个杯子,我见过。五年前你刚来的时候,天天带它去茶水间,那时候咱们还在老楼,饮水机三天两头坏,你就用这个杯子接水,一天来回跑好几趟。”

林默把杯盖拧上。“你记性挺好。”

“那道划痕,我以为是你不小心蹭的。”周明远看着杯身,“原来是摔的。”

“嗯。”

周明远站了一会儿,没再说什么,转身出去了。走廊里传来他和其他人打招呼的声音,语气比过去几个月轻松了些。

林默把保温杯放回桌上,从口袋里掏出手机。苏晚发来一条消息,配了一张照片:厨房灶台上,番茄牛腩在砂锅里咕嘟咕嘟冒着泡,旁边的案板上摆着切好的葱花,一只小手从画面边缘伸进来,指尖沾着番茄酱。

“小禾说要帮你撒葱花,拦都拦不住。”

林默打字回复:“让她撒。我六点半到家。”

他放下手机,靠在椅背上。窗外是下午四点的阳光,斜斜地照进来,落在桌面上,把保温杯的影子拉得细长。杯身上那道划痕在光线里像一条微小的银线,从杯底延伸到杯身中段,在某个角度下几乎看不出来。

但林默知道它在那里。就像他知道每一行代码下面藏着什么逻辑,每一份测试数据背后站着什么样的人。

他拿起杯子晃了晃,内胆里枸杞沉在底部,红得发亮。明天还要泡新的。后天也一样。这个杯子还能用很久。

第十六章 灯火通明

搬进新办公楼那天,林默比平时早到了四十分钟。

新工位在十二楼,整层都是技术部的地盘。落地窗朝南,能看到远处高架桥上早高峰的车流缓慢蠕动,像一条发光的传送带。他站在窗前,手里握着那个旧保温杯,杯身上的划痕被晨光照出一道浅淡的弧线。

小郑抱着一个纸箱从电梯间走出来,看见林默就喊:“林总,您那盆绿萝放哪儿?我最后一个搬上来的,路上叶子蹭了一下,应该没事。”

“靠窗第三张桌子,桌上有个标签写着‘老位置’。”

“您特意写了标签啊?”小郑把纸箱放下,从里面捧出那盆绿萝。三个月过去,藤蔓又长了一截,新叶从塑料盆边缘垂下来,颜色比旧叶浅一些,在晨光里半透明。“这盆长得真好。林总,您养了多久了?”

“五年。”林默把保温杯放在桌上,伸手把绿萝调整了一下方向,让新叶朝着窗户。“刚入职那会儿在楼下花店买的,十块钱。当时想着工位上得有点活的东西。”

小郑嘿嘿笑了两声,回身去搬其他的箱子。技术部的员工陆续到齐,开放区的工位上响起键盘声和低低的交谈声。林默没有进那间挂着“技术副总裁”门牌的独立办公室,那张办公桌从搬进来第一天起就空着,他在开放区给自己留了一张靠窗的位子。

九点整,他打开电脑,屏幕上跳出一封新邮件。发件人是沈冰,主题行写着“启明二版首批交付确认函”。正文只有两行:恒泰第一笔订单的五百台设备全部通过现场验收,系统连续运行三十天无故障,客户满意度评分九点八。附件里是恒泰技术部出具的独立测试报告,最后一页有沈冰的签名。

林默点开附件,翻了七页,在测试环境的说明段落里看到一行小字:“本报告所有数据由恒泰技术部独立采集,未接受天辰科技任何形式的数据修正建议。”他把这句话看了两遍,嘴角动了一下,然后按下转发,收件人是技术部全员,抄送周明远。

十点开例会。会议室里坐满了人,比三个月前多了六个新面孔。林默坐在长桌靠窗的一端,手边是那盆绿萝——搬进新楼之后他换了个大一点的盆,旧塑料盆没扔,放在档案柜最下层。

“第一批交付已经完成。”他开口,声音不大,会议室里立刻安静下来。“沈冰刚刚发了验收报告,三十天无故障运行,所有指标合格。这是启明二版的第一个里程碑。但我要说的是另外一件事。”

他把投影切到一张图表上。横轴是时间,纵轴是异常率。

“这是过去三个月我们自己记录的系统异常。第一批五百台设备,三十天运行期间总共产生异常日志四千三百条。其中四千两百条是环境适配问题,属于已知范围内。剩下的一百条,全部集中在同一个模块——数据同步接口。”

小郑在笔记本上飞快地记,笔尖划过纸面的声音清晰可闻。

“这个接口在过载测试里表现正常,但现场运行一个月之后出现了累积性数据偏移。”林默翻到下一页,上面是两条几乎重合的曲线,只在末端分开了一条极细的缝隙。“偏移量很小,单次可以忽略。但恒泰的客户每天同步数据四次,一年就是一千四百多次。误差累积到某个阈值,可能会触发同步失败。”

周明远抬起头:“林总,这个偏移量在合同允许的容差范围内。”

“合同允许,但我们不允许。”林默把投影切回第一页,上面是三个月前他手写的双签制度草案,“容差是底线,不是标准。启明二版要进恒泰的二期项目,二期设备的同步频率是一期的三倍。这个接口如果不在下个版本修掉,三个月后还是同样的问题。”

他看向周明远:“你牵头,这个月内拿出修正方案。小郑配合,把所有现场日志跑一遍,找出偏移的触发条件。”

周明远点了点头,没有多问。三个月前那份双签报告之后,他在技术部的话变少了,但交上来的每一份文档都挑不出毛病。偶尔在走廊碰见林默,他会主动点一下头,比从前多了点什么。

散会之后,小郑追出来。“林总,那个偏移我有点想法,可能是内存回收的时间窗口设置有问题,我想今天先把代码逻辑捋一遍。”

“捋完了发我一份分析,不用等我签字,先发。”

“好。”小郑走了两步又回头,“对了林总,您那盆绿萝该换盆了。根都从底下钻出来了,我上次浇水的时看见的。”

林默低头看了一眼办公桌上的绿萝。确实,塑料盆太浅,粗壮的根系从盆底排水孔里冒出来,贴在档案柜的隔板上,像一只伸出来的手。

“周末我去买个新盆。”

下午五点,苏晚发来一张照片。幼儿园门口,小禾背着粉色的小书包,一只手举着画纸,另一只手比了个数字三。画纸上画着一栋高高的大楼,每一层都亮着黄色的灯,楼顶站着一个穿蓝色衣服的小人,手里举着一盆绿色的东西。

“小禾说今天在幼儿园画了爸爸的新公司,非要拿给你看。她在门口等你,说要第一个给你看。”

林默把照片放大,看到画纸边缘还有一排歪歪扭扭的小字:“爸爸的楼,亮亮的。”

他打字:“五分钟到。”

关电脑的时候,手机响了。是周明远发来的消息,简短:“林总,同步接口的修正方案初稿今晚发你邮箱。”

林默回了一个字:“好。”

他拿起保温杯,拧开盖喝了一口。枸杞已经泡得发胀,水色浅红,入口微苦。他把杯子放进公文包侧袋,走到电梯间。

电梯从十二楼往下走,数字一格一格跳动。林默靠在轿厢壁上,听着缆绳在头顶发出沉闷的嗡鸣。

一楼大堂,旋转门外是人行道的银杏树,叶子开始泛黄。苏晚站在一棵银杏树下,小禾骑在她脖子上,两只手举着那张画纸,看见林默出来,整张脸绽开成一个圆圆的笑容。

“爸爸——”声音穿过半条街,路过的行人回头看了一眼。

林默加快脚步走过去,从苏晚手里接过小禾,顺手把公文包挎在肩上。小禾把画纸举到他眼前,几乎贴到鼻尖。

“爸爸看,这是你的大楼,我画了十二层,每一层都亮灯。这一层是你,你在楼顶,手里拿着绿萝。”

“为什么爸爸在楼顶?”

“因为你最高呀。”小禾理所当然地搂住他脖子,把脸埋在他肩膀上,闷闷地补了一句,“而且楼顶的灯最亮,我一眼就能看到你。”

林默一手抱着女儿,另一只手握住苏晚的手。三个人沿着人行道往家走,银杏叶从头顶飘下来,有一片落在小禾的画纸上,被小禾捏起来递给林默。

“爸爸,送给你,和绿萝放在一起。”

林默把那片叶子夹进手机壳里。苏晚在旁边看着,轻声说:“你当初搬空工位那天,我以为你会消沉很久。”

“那天我接小禾回家,她问我为什么早来接她。我说爸爸换了个地方上班。她说好呀,那你可以多陪我一会儿。”林默低头看了看怀里的小禾,小姑娘已经趴在他肩上打起了小呼噜,画纸还紧紧攥在手里。“她的要求就这么简单。”

苏晚握紧他的手,没有再说话。

走到小区楼下的时候,路灯正好亮起来。暖黄色的光落在三个人身上,在地上拉出三道长短不一的影子。小禾忽然醒了,揉了揉眼睛,指着旁边一栋楼说:“爸爸你看,那个窗户亮亮的。”

“嗯。”

“你以前回家很晚的时候,我就看对面楼的窗户。妈妈说你还在加班,但是楼里的灯会一直亮着等你。”小禾打了个呵欠,“现在你回家早了,灯就不用在那么晚还亮着了。”

林默抱着女儿上楼,苏晚在后面按电梯。楼道里的声控灯一层一层亮起来,像一条温柔的路。

回到家,林默把小禾放在沙发上,去厨房热饭。苏晚跟在后面,从冰箱里拿出一把洗好的小葱。

“周明远今天把双签报告送过来的时候,在楼下站了一会儿。”

林默切菜的手停了一下。“他说什么了?”

“没说什么。就是把文件递给我的时候,看到小禾在客厅玩积木,笑了一下,说‘林总有福气’。”苏晚把葱切碎,“我觉得他变了不少。”

“嗯。”林默把切好的菜倒进锅里,油烟腾起,他的声音混在里面,“他在改。”

砂锅端上桌的时候,小禾已经自己爬到了椅子上,手里捏着勺子,目光炯炯地盯着锅盖。林默掀开盖子,番茄牛腩的香气一下子涌出来,小禾“哇”了一声,勺子敲在碗沿上。

“爸爸,明天还能早回来吗?”

“能。”

“后天呢?”

“也能。”

“大后天呢?”

林默给她碗里舀了一勺牛腩,汤汁浓稠地盖在米饭上。“大后天你不是要上舞蹈课吗?爸爸去接你。”

小禾满意地点头,埋头吃饭。苏晚看了林默一眼,眼里有笑意,没说话,只是给他碗里也添了一勺汤。

吃完饭,林默洗碗,苏晚陪小禾在客厅画画。水龙头哗哗响着,隐约听见小禾在问:“妈妈,爸爸以前那个杯子上的印子是什么?”

苏晚的声音很轻:“那是摔过的痕迹。”

“那为什么不扔掉?”

“因为爸爸说要留着,提醒自己别把日子过成只有加班。”

小禾沉默了几秒,然后说:“那我画一个杯子给爸爸,画得很好很好,没有印子。”

林默把碗沥干水,放回碗架。擦手的时候,他往客厅看了一眼。小禾趴在茶几上,彩笔在纸上沙沙地跑,苏晚坐在旁边削铅笔,偶尔伸手扶一下歪掉的笔筒。

他没有出去打断。

窗外传来楼下邻居浇花的水声,远处有车辆驶过的闷响。灯光从客厅这头铺到那头,照在餐桌那块没擦干净的水渍上,亮晶晶的一小片,像一滴没干的眼泪。

林默擦干手,走到客厅,在小禾旁边坐下来。

“爸爸,你帮我画这个杯子的把手。我画不好。”

“好。”

他握住女儿的小手,彩笔在纸面上慢慢勾勒出一个优雅的弧线,两头稳稳连在杯身上。画完了,小禾凑近看了看,满意地点头。

“这样就好看了。”

“嗯,就好看了。”

夜深了,小禾睡着之后,苏晚在阳台上晾衣服。林默坐在客厅沙发上,手机连着充电线,屏幕亮了一下,是周明远发来的邮件通知。他看了一眼标题,没有点开,把手机翻过去扣在茶几上。

明天早上还有时间。

他站起来,走到阳台上,帮苏晚把最后一件衣服挂上晾衣杆。楼下的路灯把树影投在阳台上,碎碎地晃。远处高架桥上的车灯排成两条缓慢流动的光带,一红一白,交错着往城市的两端延伸。

“明天周末。”苏晚把盆收起来,“小禾说想去公园画画。”

“去。”

“她说要给你重新画一张全家福,上次那张爸爸在加班,她不满意。”

林默靠在阳台护栏上,看着远处那片流动的光。“那就让她画。”

苏晚站在他旁边,肩膀轻轻靠过来。楼里的窗户一盏一盏灭下去,只剩零星几户还亮着。对面那栋楼的某个窗口,有人在阳台上收衣服,动作慢悠悠的,晾衣杆收回去的时候发出细细的金属摩擦声。

“你说,”苏晚的声音被夜风裹着,轻得像一层雾气,“如果那天你没有搬空工位,现在会怎么样?”

林默想了想。“不知道。但那天我搬走的时候,绿萝放在窗台上没拿。后来回去,它还在。”

“还在就好。”

两个人安静地站着。远处高架桥的光带渐渐稀疏下来,城市准备入睡。身后客厅里的小夜灯亮着暖黄色的光,从窗帘缝隙漏出来,在阳台上投下一小片淡淡的光斑。

林默回到屋里,从公文包侧袋取出保温杯,放在茶几上。杯身上那道划痕朝着天花板,在夜灯的光线下几乎看不出来。他拧开杯盖,把里面泡了一天的枸杞倒掉,冲干净,放在沥水架上。

明天早上再泡新的。

他关上灯,卧室里传来小禾均匀的呼吸声,偶尔翻个身,含糊地嘟囔一句什么。苏晚轻手轻脚地关上阳台门,从后面走过来,下巴搁在他肩膀上。

“睡吧。”

“嗯。”

明天是周末。后天也是。大后天要去接小禾放学。这个月要把接口修正方案定下来,下个月启明二版第一个补丁上线,恒泰二期合同下季度签。

日子一天一天过,像代码一行一行跑。中间可能会有波动,会有异常日志,但只要原始数据是干净的,最终结果就不会偏。

楼下传来保安巡逻的手电筒光,远远地扫过树梢,又移开了。夜彻底静了下来。

林默翻了个身,手搭在苏晚的手背上。窗外那栋楼的最后一盏灯也灭了。整座城市沉入黑暗,只有远处高架上偶尔驶过的车灯,像不肯熄灭的星火,一闪一闪地没入夜色深处。

(全文完)

文章虚拟演绎,请勿当真。

特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。

Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

相关推荐
热点推荐
破防了!一位美女妈妈在家长会上出圈,被吐槽“这是孩子的班会,不是选美大赛”,评论区吵翻

破防了!一位美女妈妈在家长会上出圈,被吐槽“这是孩子的班会,不是选美大赛”,评论区吵翻

火山詩话
2026-10-19 08:27:01
76人沸腾了!詹姆斯,42岁再创历史纪录……

76人沸腾了!詹姆斯,42岁再创历史纪录……

体育新角度
2026-10-20 08:07:19
尊界与懂车帝之争,恐怕是国家公信力的又一个转折点

尊界与懂车帝之争,恐怕是国家公信力的又一个转折点

北欧模式
2026-10-19 17:28:33
“炸裂”!刚刚,马斯克宣布:给每个美国孩子发股票

“炸裂”!刚刚,马斯克宣布:给每个美国孩子发股票

中国基金报
2026-10-19 18:06:53
事态升级!解放军锐评旭日旗事件 陈某迎四大噩耗 不止遣返那么简单

事态升级!解放军锐评旭日旗事件 陈某迎四大噩耗 不止遣返那么简单

健身狂人
2026-10-20 07:19:37
难以置信!网传重庆网红呆呆去年一夜狂赚400万,如今筹备杀猪宴引热议,网友调侃,“去年杀猪宴,今年杀猪盘”

难以置信!网传重庆网红呆呆去年一夜狂赚400万,如今筹备杀猪宴引热议,网友调侃,“去年杀猪宴,今年杀猪盘”

火山詩话
2026-10-20 08:09:49
A股人形机器人概念股持续爆发,宇树科技3个交易日大涨35%

A股人形机器人概念股持续爆发,宇树科技3个交易日大涨35%

每日经济新闻
2026-10-20 10:50:20
4年8个月的俄乌战争:战前约50万俄精锐骨干基本被打光

4年8个月的俄乌战争:战前约50万俄精锐骨干基本被打光

高博新视野
2026-10-19 18:22:43
又是形势一片大好!前三季度GDP增速4.6%,人均收入涨5.3%,你信不信?

又是形势一片大好!前三季度GDP增速4.6%,人均收入涨5.3%,你信不信?

六子吃凉粉
2026-10-19 15:46:14
七旬老人不知情被开通华为影视会员自动扣费近四年,手机非华为 华为仅退两年费用

七旬老人不知情被开通华为影视会员自动扣费近四年,手机非华为 华为仅退两年费用

信网
2026-10-19 15:27:08
激动落泪!坐轮椅2年的英国阿姨试穿杭州造机器人后,成功行走,儿子当场决定买下!网友:这就是科技的意义

激动落泪!坐轮椅2年的英国阿姨试穿杭州造机器人后,成功行走,儿子当场决定买下!网友:这就是科技的意义

环球网资讯
2026-10-18 17:00:19
耗资数百万,就为了踩断几辆国产豪华品牌汽车的刹车踏板?难道要让“非标”替代国标、行标去指导车企造车吗?

耗资数百万,就为了踩断几辆国产豪华品牌汽车的刹车踏板?难道要让“非标”替代国标、行标去指导车企造车吗?

三周檀的鲲
2026-10-18 19:49:14
民调:中期选举前17天,特朗普支持率跌至19%,再创历史新低

民调:中期选举前17天,特朗普支持率跌至19%,再创历史新低

阿尔卑斯瞭望
2026-10-19 18:49:24
严重违规?C罗等于没受罚!30天禁赛已执行19天 39秒工资就能交罚款

严重违规?C罗等于没受罚!30天禁赛已执行19天 39秒工资就能交罚款

我爱英超
2026-10-20 04:18:08
1-9月社零数据出炉:汽车暴跌14.9%%,烟酒狂飙12.6%!钱到底去哪了?

1-9月社零数据出炉:汽车暴跌14.9%%,烟酒狂飙12.6%!钱到底去哪了?

即时刘说
2026-10-20 07:27:17
天猫官宣:今晚8点iPhone 18 Pro系列历史最低价!9199元起

天猫官宣:今晚8点iPhone 18 Pro系列历史最低价!9199元起

快科技
2026-10-20 07:47:09
大瓜!邯郸篮球直播忘关麦事件

大瓜!邯郸篮球直播忘关麦事件

新动察
2026-10-19 15:09:35
被处分、被解约,她辞职跑马拉松!35岁张水华今年收入曝光,彻底颠覆我对马拉松跑者创收的认知!估计和你想的不一样

被处分、被解约,她辞职跑马拉松!35岁张水华今年收入曝光,彻底颠覆我对马拉松跑者创收的认知!估计和你想的不一样

锐评利物浦
2026-10-18 13:14:55
麦迪逊破610天球荒,马尔穆什处子球,热刺3-1考文垂夺英超首胜

麦迪逊破610天球荒,马尔穆什处子球,热刺3-1考文垂夺英超首胜

钉钉陌上花开
2026-10-20 06:12:08
南京林业大学原副校长汪大纲教授逝世

南京林业大学原副校长汪大纲教授逝世

双一流高校
2026-10-20 01:00:28
2026-10-20 13:56:49
智慧生活笔记
智慧生活笔记
分享生活小妙招、实用技巧和所见所得,让生活更简单更有趣。
1332文章数 4529关注度
往期回顾 全部

艺术要闻

17家民企抱团,投资50亿建成广州第四高楼,每家分3层!

头条要闻

男子身中16刀死亡 前妻逃亡26年"隐身"当了妇女主任

头条要闻

男子身中16刀死亡 前妻逃亡26年"隐身"当了妇女主任

体育要闻

30天30队·奇才:三状元一榜眼 35胜?

娱乐要闻

港媒曝刘恺威与32岁黎纪君恋情,秘密恋爱两个月

财经要闻

这些科技股王,为什么总输给茅台?

科技要闻

新版MiniMax,能和DeepSeek掰手腕吗?

汽车要闻

不知道二代海鸥多好玩? 上赛道跑两圈 很过瘾的

态度原创

健康
数码
房产
公开课
军事航空

痘痘能根治吗?皮肤科医生说实话

数码要闻

倍思海外推出U2 Pro Outdoor监控摄像头,带有可追踪移动目标的聚光灯

房产要闻

488亩,两大豪宅级项目爆出!清水湾,要杀回来了!

公开课

李玫瑾:为什么性格比能力更重要?

军事要闻

特朗普狠批泽连斯基"不想结束战争" 泽连斯基强硬回怼

无障碍浏览 进入关怀版