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

同事偷我3年方案升总监,我辞职他笑着送我,一周后甲方来电撤资

0
分享至

《暗涌》楔子

会议室的气压低得能拧出水来。

投影仪的光束打在幕布上,映出“智慧城市交通优化系统3.0”几个大字。我的手指在笔记本电脑触控板上摩挲,指尖冰凉。屏幕上的方案是我过去1095个日夜的心血——从算法框架到实施细节,从数据模型到风险评估,每一个标点符号都浸着我的睡眠和咖啡。

“综上所述,”站在演讲台前的陈锋调整了一下领带,声音平稳自信,“这套系统的核心优势在于它的自适应学习模块,能够根据实时交通数据进行动态优化,预计可降低早高峰拥堵率37%。”

他顿了顿,目光扫过会议室里的高管们,最后落在我身上,微微一笑。

“这得多亏了我们团队三年来的不懈努力。”

我的胃部像是被一只无形的手攥紧了。

那不是“我们团队”的努力。那是我一个人的心血。陈锋在过去三个月里对我的方案表现出异常的兴趣,频繁“请教”,美其名曰“学习经验”,我毫无保留地分享——我们是同期入职的校友,我把他当朋友。

直到上周,他把最终版的方案文件“不小心”拷走,直到今天这场本应由我主讲的汇报会突然换成了他,直到此刻他流畅地展示着我每一个深夜推敲出的算法逻辑。

“有什么问题吗?”副总裁李建明扶了扶眼镜,看向陈锋。

“关于数据安全模块,”陈锋从容不迫地切换到下一页,“我们采用了分层加密技术,确保......”

我听着他用我的语言解释我的设计,手指在桌下攥成拳,指甲掐进掌心。三个月前,部门总监调任,这个位置悬空至今。陈锋上周还在酒桌上拍着我的肩膀说:“咱俩谁上不都一样?都是兄弟。”

原来不一样。

汇报结束,掌声响起。李副总裁站起身来:“陈锋,这个方案做得非常扎实。董事会一直在关注这个项目,如果能够落地,对公司开拓智慧城市业务将起到关键作用。”

“谢谢李总,”陈锋谦逊地点头,“我会继续完善。”

“不用了,”李副总摆摆手,“这个方案已经很成熟。从今天起,你升任技术总监,全面负责这个项目。”

会议室里的空气凝固了一瞬,然后更热烈的掌声响起。同事们纷纷向陈锋道贺,有人拍了拍我的肩膀:“元朗,你们组这次立大功了!”

我张了张嘴,发不出声音。

陈锋被簇拥着走出会议室,经过我身边时,他脚步微顿,低声说:“晚上一起吃饭?庆祝一下。”

他的眼睛里有某种我从未见过的东西——不是愧疚,不是得意,而是一种冷静的疏离,仿佛我们之间从未有过那些称兄道弟的深夜加班,那些互诉职场烦恼的午餐时间。

“不了,”我听见自己的声音干涩如砂纸,“我有点事。”

第一章 离场

辞职信躺在邮箱的草稿箱里已经三天。

鼠标悬停在“发送”按钮上,指尖微微发抖。不是犹豫,是愤怒尚未冷却到可以理性决策的温度。

办公桌上,我和妻子的合照依然摆在那里——苏晓的笑容温柔,靠在我肩头,背景是我们蜜月旅行的海边落日。照片旁摆着她上周塞进我公文包的胃药,便利贴上是她娟秀的字迹:“记得按时吃饭,别又加班到胃疼。”

“元朗,李总找你。”同事小赵探头进来,神色有些复杂。

副总裁办公室的气温永远比外面低两度。李建明坐在宽大的红木办公桌后,示意我坐下。

“我听说你有离职的打算。”他开门见山,手指交叠放在桌面上。

“是的,李总。”

“因为陈锋升职的事?”

我没有回答。沉默有时比控诉更有力。

李建明叹了口气,那声叹息经过精心计算,介于理解与失望之间:“元朗,我理解你的心情。但职场上,很多时候不仅是看能力,还要看综合表现。陈锋在汇报、协调、客户沟通这些方面确实更突出一些。”

“所以他就可以偷别人的方案?”

“注意你的用词。”李建明的表情冷了下来,“公司内部的知识共享是常态。你的方案在部门内讨论过多次,陈锋作为项目参与者,对其进行整合优化,这是团队协作的成果。”

“他三个月前才加入这个项目组!”

“够了。”李建明站起身,走到窗前,背对着我,“元朗,你是个优秀的技术人才,但职场不是学校,不是谁作业做得好谁就能得第一。陈锋能让董事会相信他能带来这个项目,这就是他的能力。”

他转过身,语气缓和下来:“如果你愿意,我可以把你调到另一个项目组,薪资上浮10%。你考虑一下。”

“不必了,”我站起来,“我已经决定了。”

走出办公室时,我的手指冰凉,但头脑异常清醒。李建明的话像手术刀,精准地剖开了我一直不愿直视的现实:在这个地方,我的心血可以被轻易冠以他人之名,我的三年可以成为别人晋升的台阶。

因为陈锋“更会表现”。

因为陈锋“更懂沟通”。

因为我傻到相信专业能力是唯一的标准。

回到工位,我开始收拾东西。三年的积累不多——几本专业书籍,一个护颈枕,一盆绿萝,还有苏晓的照片。同事们或低头假装忙碌,或投来同情的一瞥。职场如戏,每个人都在扮演自己的角色,而我刚刚从“潜力股”变成了“遗憾离场的前同事”。

“真要走啊?”陈锋的声音在身后响起。

他端着咖啡杯,倚在我隔断的挡板上,姿态放松得像是在闲聊天气。新换的西装合体挺括,袖口处露出精致的腕表——是他上周在群里晒过的“升职礼物,犒劳自己”。

“嗯。”我没有抬头,把书籍装进纸箱。

“其实没必要这样,”他啜了口咖啡,“李总很看重你,留下来机会还是很多的。咱们部门现在正是用人之际,智慧城市这个项目很大,需要你这样的技术骨干。”

“需要我继续做方案,然后由你去汇报?”

陈锋的笑容僵了一瞬,随即恢复如常:“元朗,你对我是有误会。那个方案确实借鉴了你的一些想法,但后期的整合优化、风险评估、客户需求匹配,都是我重新梳理过的。董事会看中的是完整的可执行方案,不是某个技术模块。”

他说得那么自然,仿佛在陈述一个客观事实。我忽然意识到,这也许不是他第一次这样做,只是我第一次成为受害者。

“祝你前程似锦。”我盖上纸箱,抱起。

“我送你。”他放下咖啡杯,伸手要帮我拿箱子。

“不必。”我侧身避开,向电梯走去。

陈锋跟了上来。电梯门开时,里面空无一人。我们并肩站着,镜子般的厢壁映出两张脸——他的平静,我的紧绷。

“其实我一直很佩服你,”陈锋忽然开口,声音在密闭空间里显得格外清晰,“你的专业能力,钻研精神,是我见过最强的。但元朗,职场就像下棋,有时候不能只看一步。”

电梯下行,数字跳动。

“你什么意思?”

“我的意思是,你太专注在棋盘的一个角落了。”他整理了一下袖口,“做方案、写代码、优化算法,这些当然重要。但更重要的是让对的人看到你的价值,在合适的时间出现在合适的位置。你埋头苦干三年,而我用三个月让所有人看到这个项目的潜力,这就是区别。”

电梯到达一层,门开了。

大厅里人来人往,前台后的行政助理抬头看了我们一眼,又低下头去。

陈锋伸出手:“还是朋友?”

我看着他的手。那只手曾在我加班到凌晨时递来咖啡,曾在我婚礼上作为伴郎递来戒指,曾在我父亲住院时拍着我的肩膀说“有需要尽管开口”。

现在它偷走了我三年的光阴。

“不了。”我没有握那只手,抱着纸箱走出旋转门。

四月的阳光很好,洒在身上暖洋洋的,但我只觉得冷。回头望去,陈锋站在大厅里,隔着玻璃门看着我,脸上依然挂着那副温和的笑容。

他在向我挥手告别。

第二章 余波

离职第一周,我试图假装一切正常。

早晨七点半准时起床,像往常一样洗漱,穿上衬衫,系好领带。然后在镜子前愣住——我已经不需要去那个地方了。

苏晓从身后抱住我,脸贴在我的背上:“休息一段时间也好,你这几年太累了。”

她的声音温柔,但我听得出里面的担忧。我们刚结婚两年,房贷、车贷、计划中的育儿基金,每一项都建立在双收入的假设上。我的突然离职,让这本就紧绷的家庭财务瞬间失衡。

“放心,”我转过身,吻了吻她的额头,“我很快会找到新工作。说不定是更好的机会。”

“我相信你。”她笑得眉眼弯弯,但眼底的阴影出卖了彻夜未眠的痕迹。

我把她送到地铁站,然后独自回家。路过小区门口的面包店时,买了两份早餐——这是三年来的习惯,我和陈锋都爱吃这家的可颂,以前常常轮流买早餐带到公司。

现在只有我一个人吃了。

书房里,我打开电脑,更新简历。工作经历那一栏,“智慧城市交通优化系统”的项目描述格外刺眼。我盯着屏幕看了十分钟,一个字也写不下去。这个项目已经烙上了陈锋的名字,我如何证明那是我的心血?

电话响了,是猎头。

“元先生,我们看到您更新了简历,目前有一个技术总监的职位,和您之前做的智慧城市项目非常匹配......”

“哪家公司?”

对方报出一个名字,我的心沉了下去——那是我们公司的直接竞争对手。

“我考虑一下。”我挂断电话。

如果我去竞争对手那里,陈锋会怎么想?他会认为我是在报复,用泄露公司技术信息作为筹码。虽然我绝不会这样做,但人言可畏。

午饭时间,我热了昨晚的剩菜,坐在空荡的餐桌前。手机屏幕亮起,是前同事小赵发来的消息:“朗哥,你走之后,陈锋把你的工位给了新来的实习生。那盆绿萝被扔了,我捡回来了,你要吗?”

我看着那条消息,喉咙发紧。

那不是一盆普通的绿萝。三年前入职第一天,苏晓特意买了它,说“绿色植物防辐射,还能提醒你按时下班”。三年来,我加班时它就在屏幕旁静静生长,从一小盆蔓延成翠绿的瀑布。我给它浇水,擦拭叶片,它见证了我每一个凌晨的灵感和每一次挫折的叹息。

现在它被扔掉了,像我的三年一样。

“帮我养着吧,谢谢。”我回复。

下午,我开始整理这三年的技术笔记。十几个笔记本,上千页的手写记录,从最初的概念构思到最终的算法实现。我翻开最早的一本,日期是三年前的五月,页边有咖啡渍,还有一行小字:“苏晓说这个想法太理想化,但我想试试。”

那时我们还没结婚,她周末来我租的小公寓,看我对着白板写写画画,说我是“技术疯子”。我说等我这个项目成功了,就向她求婚。

后来项目真的有了雏形,我真的求婚了,她真的答应了。

现在项目成功了,却被冠以他人之名。

手机震动,是陌生号码。我接听。

“请问是元朗先生吗?”一个沉稳的男声。

“是我,您是哪位?”

“我是天城建设的项目经理,姓周。我们公司和您之前的公司有一个智慧城市交通系统的合作项目,有些技术细节想和您确认一下。”

天城建设,那是这个项目的甲方,国内顶级的城市建设集团。

“我已经离职了,”我说,“这个项目现在由陈锋总监负责,您应该联系他。”

“我们联系了陈总监,”对方顿了顿,“但他对几个核心模块的解释不太清楚。特别是自适应学习算法的数据流逻辑,他说这部分是您独立完成的,所以建议我们直接问您。”

我的心跳漏了一拍。陈锋把我的联系方式给了甲方?这不符合他的作风。

“周经理,我已经离职,不方便介入前公司的项目。如果您有技术问题,建议还是通过正式渠道联系公司。”

“理解,”对方的声音里听不出情绪,“不过元先生,这个项目对我们非常重要,涉及城市主干道的智慧化改造,预算超过三个亿。任何技术细节的模糊都可能带来重大风险。如果您能抽空和我们见一面,纯技术交流,咨询费我们可以按市场最高标准支付。”

三个亿。这个数字让我眩晕。我知道这个项目重要,但没想到重要到这个程度。

“我需要考虑一下。”

“当然。这是我的私人号码,您随时可以联系我。另外,”周经理补充道,“陈总监说您离职有些突然,这个项目失去了技术核心,他非常遗憾。”

挂断电话,我坐在书房里,窗外天色渐暗。

陈锋把我的联系方式给了甲方,还表达“遗憾”。这不像他。以我对他的了解,他应该极力抹去我在这个项目中的痕迹,让所有人相信那是他独立主导的成果。

除非......他遇到了无法解决的问题。

我打开电脑,登录那个已经三年没用的技术论坛账号。在私信里,有一条未读消息,发送时间是两天前,来自一个陌生的ID:“自适应模块的实时数据流在处理突发拥堵时会出现死循环,如何解决?”

没有署名,但问题的描述方式,使用的术语,甚至那个“死循环”的特定表现,都指向我方案中一个极其隐蔽的缺陷——一个我花了两个月才找到解决方案的漏洞。

这个漏洞,我在最终版方案中有意没有写进去。不是疏忽,是出于技术人员的某种执念——我想保留一点只有自己知道的、关于这个“孩子”的秘密。

陈锋偷走了方案,但他不知道这个秘密。

而这个漏洞一旦在实际运行中触发,将导致整个系统崩溃,交通信号灯全面失灵。在早高峰的主干道上,这会是灾难。

我盯着屏幕,手心出汗。

那个陌生ID又发来一条消息:“我知道你在看。周六下午三点,老地方咖啡厅,我们需要谈谈。陈锋不知道我联系你。”

老地方咖啡厅。大学时,我和陈锋常去那里讨论课题。毕业后,我们每年都会在那里聚一次,直到三年前我全身心投入这个项目,聚会才中断。

发信人是谁?

第三章 暗面

周六下午,我提前半小时到了咖啡厅。

靠窗的第三个卡座,那是我们以前常坐的位置。从那里可以看到街道和对面公园的一角,陈锋说那个位置“进可攻退可守”——他总是用这种军事术语形容日常选择。

我点了两杯美式,一杯不加糖,一杯加奶不加糖——那是陈锋的口味。等待的时候,手指无意识地在桌面上敲击,节奏是我设计的一套加密算法的核心序列。

两点五十五分,有人推门而入。

不是陈锋。

是个女人,三十岁左右,短发,穿着剪裁合体的灰色西装,拎着黑色的公文包。她环顾四周,目光落在我身上,径直走来。

“元朗?”她在对面坐下,声音是我在电话里听过的那个。

“周经理?”

“周文婧,”她伸出手,我们短暂相握,“天城建设,智慧城市项目部负责人,也是这个三亿项目的甲方总负责人。”

我重新打量她。之前电话里的声音沉稳有力,我下意识以为是男性。此刻坐在对面的女人,眼神锐利,坐姿挺拔,透着一股久经沙场的从容。

“您在论坛上找我?”我问。

“是我。”她开门见山,“你在那个漏洞描述里用的术语‘非对称数据流阻塞’,是内部术语,没有公开资料记载。只有原始设计者会这样描述问题。所以我确定是你。”

“陈锋不知道您联系我?”

“他不知道。”周文婧端起咖啡,喝了一口,“事实上,我找你的原因之一,就是我发现陈锋对这个项目的理解,远不如他表现的那么深入。”

她打开公文包,取出一份文件推到我面前。是项目技术评估报告,封面上盖着“机密”字样。

“过去一周,我们和陈锋的团队开了三次技术对接会。每次涉及到核心算法细节,他要么含糊其辞,要么说需要‘回去和团队讨论’。最后一次,我直接问到了自适应学习模块的数据预处理逻辑,他给出的解释......”她顿了顿,“漏洞百出。”

我翻开报告。里面详细记录了陈锋在会议上的回答,旁边是周文婧用红笔做的批注,一针见血地指出了每个回答中的技术错误。

“这不能完全证明什么,”我合上报告,“也许是沟通问题。”

“也许。”周文婧看着我,“但元先生,三个亿的项目,我不能赌‘也许’。我们选择与你前公司合作,是因为看到了那份方案的潜力。但如果执行者连基本原理都说不清楚,我不得不怀疑,这份方案到底出自谁手。”

窗外,一个老人牵着狗走过,狗在路灯柱旁嗅来嗅去。平凡得令人心安的午后场景,与我此刻的处境形成荒诞对比。

“您想让我做什么?”我问。

“两件事。”周文婧竖起两根手指,“第一,我需要你确认,这份方案的原创者是你。第二,如果确认,我需要你以技术顾问的身份,秘密加入我们的监管团队,确保项目不因执行者的能力问题而失败。”

“秘密加入?”

“陈锋不会希望你知道这个漏洞的存在,更不会希望你介入项目。但我们需要你。”她的目光如刀,“这个系统将应用于七个主要路口,日均车流量超过五十万辆。如果因为那个死循环漏洞导致系统崩溃,会发生什么,你比我清楚。”

我想象那个场景:早高峰,红绿灯全部失灵,车辆在路口挤成一团,急救车被堵在车流中,整个区域的交通瘫痪......我的后背渗出冷汗。

那个漏洞,我本该在最终方案中修复的。但我没有,因为当时的我想:“反正这个项目是我负责,我知道问题在哪,实施时会注意。”

然后陈锋偷走了方案,他不知道有漏洞。

而现在,这个漏洞可能引发一场灾难。

“我可以帮您解决这个技术问题,”我说,“但不需要加入监管团队。我可以把解决方案写出来,您交给陈锋。”

“他不会用的。”周文婧摇头,“昨天我旁敲侧击地提到了‘非对称数据流’可能存在的问题,他的反应是极力否认,说这个设计绝对可靠。一个不愿承认问题存在的人,怎么会接受别人提供的解决方案?”

她停顿了一下,语气缓和:“元先生,我调查过你。过去三年,你的考勤记录显示你平均每周加班二十小时。你的直属上级对你的评价是‘技术能力突出,但缺乏管理思维’。而陈锋,过去一年有六次被记录与客户的高尔夫活动,三次与高层的‘非正式汇报’。”

“您想说什么?”

“我想说,这个世界有时不公平。”周文婧的声音很平静,“有能力的人埋头苦干,会表现的人平步青云。但这一次,你的能力关系到公共安全,我不能让会表现但不懂技术的人主导这个项目。”

我沉默了很久。咖啡冷了,表面凝出一层薄薄的膜。

“如果我答应,陈锋会发现。我的职业生涯就毁了。”

“如果你不答应,”周文婧直视我的眼睛,“项目失败,你的职业生涯一样会毁掉。陈锋会把责任推给‘前任留下的设计漏洞’,你还是罪人。而且,会有无数普通人因为交通瘫痪而受到影响,可能有人会因此错过重要会议,错过火车,错过医院预约,甚至......”

她没有说下去。

“我需要时间考虑。”我说。

“你没有时间了。”周文婧看了一眼手表,“下周一,陈锋会提交最终的技术实施方案。一旦通过评审,项目进入开发阶段,再修改核心设计的成本会呈指数级增长。今天是周六,你有一天时间。”

她站起身,从包里取出一张名片放在桌上:“上面有我的私人电话。如果你决定加入,周日晚上之前联系我,我会安排。如果你拒绝......”她停顿了一下,“我会启动项目风险评估,建议天城建设撤资。但那样的话,你三年的心血,就真的付诸东流了。”

她走向门口,又回头:“顺便说一句,你妻子在‘晨光教育’做课程设计,对吗?我妹妹的孩子在那里上课,她说苏老师是个非常负责的好老师。”

门上的风铃响动,她离开了。

我坐在卡座里,浑身冰冷。最后那句话不是随口一提。她在告诉我,她调查了我的一切,包括我的软肋。

手机震动,是苏晓发来的消息:“晚上想吃什么?我买了你最爱吃的排骨,庆祝你离职一周,脱离苦海~”

后面跟着一个笑脸表情。

我盯着那条消息,眼眶发热。

脱离苦海?我可能刚刚跳进了另一个,更深的漩涡。

第四章 抉择

周日清晨,我在书房坐了一夜。

窗外天色从漆黑转为深蓝,再到鱼肚白。桌上摊着那份方案的所有笔记,屏幕上打开着算法模拟程序。那个漏洞,我比谁都清楚它的可怕之处。

模拟结果显示,在特定车流量和天气条件下,死循环触发的概率是3.7%。看起来不高,但一旦触发,系统恢复需要至少十五分钟。十五分钟,足够让七个路口全部瘫痪。

我尝试推演各种可能性。

如果我不帮周文婧,她真的会撤资吗?三个亿的项目,撤资不是小事,需要充分的理由。但如果她坚持,以天城建设的体量,完全可能这么做。届时,陈锋会失去这个让他晋升的项目,我的方案也会被废弃。

那如果我帮他呢?把解决方案匿名发给他?

他大概率不会用。以他的自负,不会承认自己没发现这个漏洞,更不会采用一个“匿名好心人”提供的补丁。他只会认为这是无稽之谈,然后继续推进。

周文婧说得对,唯一的办法是从内部介入,确保漏洞被修复。

但那样做,意味着背叛。不是背叛陈锋——他已经背叛了我——而是背叛我曾经对这个公司的忠诚,背叛我对职业操守的理解。意味着我要成为“告密者”,成为“背后捅刀的人”。

苏晓轻轻推开门,端着一杯热牛奶进来。她穿着我的旧T恤,下摆垂到大腿,头发睡得乱蓬蓬的,眼神里满是担忧。

“你一晚上没睡。”她把牛奶放在桌上,手搭在我肩上。

“在想事情。”我握住她的手,她的手很暖。

“那个周经理又联系你了,对吗?”她轻声问。

我惊讶地抬头。

“昨晚你说梦话了,”苏晓坐在椅子扶手上,“一直重复‘漏洞’和‘三个亿’。我查了你的手机,看到那个通话记录。”

她没有责怪,只是陈述事实。我们之间从无秘密,这是结婚时的约定。

我把一切告诉了她。陈锋的背叛,周文婧的提议,那个可能导致交通瘫痪的漏洞,以及我面临的道德困境。

苏晓安静地听完,很久没有说话。她只是握着我的手,拇指轻轻摩挲我的手背。

“你觉得我该怎么办?”我问,声音沙哑。

她没有直接回答,而是问:“你还记得我们是怎么认识的吗?”

我点头。五年前,一个暴雨天,我打不到车,冒雨跑向地铁站,在路口差点被一辆闯红灯的车撞到。是她拉了我一把,我们俩都摔在水坑里,浑身湿透。后来一起去了最近的咖啡馆躲雨,就这样聊了一下午,然后是一辈子。

“那天如果不是我拉住你,你可能已经躺在医院了。”苏晓说,“而那个司机闯红灯,是因为前面的车突然急刹,急刹是因为信号灯故障,一直闪黄灯。”

我记得那天。那个路口的信号灯坏了三天,一直没修。

“所以,”苏晓看着我的眼睛,“技术不只是代码和算法,它关系到真实的人,在真实的街道上,有真实的家庭在等他们回家。如果你明明知道一个漏洞可能让人受伤,甚至更糟,却因为不想惹麻烦而保持沉默......”

她没有说下去。

“但那样做,我的职业生涯可能就完了。”我低声说,“陈锋不会放过我,行业里也会传开,说我背叛前公司,说我......”

“说你是那个阻止了交通瘫痪的人。”苏晓打断我,“说你是那个坚持对的事情,哪怕对自己不利的人。”

她捧住我的脸,让我直视她的眼睛:“元朗,我爱你,不是因为你将来能当总监,能赚多少钱。我爱你,是因为你是那种会在暴雨天把伞给陌生人,自己淋雨回家的人。是因为你是那种为了一个理想化的算法,愿意钻研三年的人。别让陈锋改变你是谁。”

我的眼眶发热,紧紧抱住她。

“而且,”她在耳边轻声说,“我相信你的能力。就算这家公司待不下去,你也能找到更好的地方。但如果你明明能阻止一场灾难却没有做,你一辈子都不会原谅自己。”

她说得对。

我松开她,打开电脑,开始写邮件。给周文婧,告诉她我的决定。

但就在手指即将按下发送键时,手机响了。是前同事小赵。

“朗哥,出事了!”他的声音慌张,“陈锋刚才在会上晕倒了,送去医院了!”

“什么?”

“好像是急性胰腺炎,医生说挺严重的,要住院至少一两周。”小赵压低声音,“而且朗哥,有个事我得告诉你。陈锋住院前,正在和甲方开紧急会议。我听说......甲方可能要撤资。”

我的手指僵在键盘上。

“撤资?为什么?”

“具体不清楚,但好像是因为技术问题。陈锋在会上和甲方代表吵起来了,对方质疑方案可行性,陈锋坚持说没问题,然后突然脸色惨白,捂着肚子倒下了......”

挂断电话,我看着那封未发出的邮件,忽然意识到,事情比我想象的更复杂。

陈锋住院,项目群龙无首。如果他真的和甲方吵到要撤资的地步,说明周文婧已经开始行动了。她没有等到我的回复,就启动了施压程序。

她在逼我做选择,用更激烈的方式。

手机又响了,这次是周文婧。

“元先生,相信你已经听说了。”她的声音一如既往的冷静,“陈锋住院,项目陷入停滞。我们需要你立即介入。作为方案原创者,你最有资格暂代技术负责人的位置。我已经向你的前公司提出了正式请求。”

“什么请求?”

“请求你以技术顾问身份,紧急支援这个项目,直到陈锋康复。”她停顿了一下,“当然,这是官方说法。实际上,我需要你全面接手,在两周内解决所有技术隐患,重获董事会的信任。”

“公司同意了?”

“李副总裁正在犹豫。但他没有选择——要么同意,要么失去三亿的项目和天城建设这个重要客户。”周文婧说,“元朗,这是你的机会。不是报复的机会,是纠正错误的机会。你愿意吗?”

我看着屏幕上那封未发送的邮件,又看看书房门外,苏晓正在厨房准备早餐的身影。

“我需要和公司谈条件。”我说。

“可以。一小时后,我去公司接你,我们一起见李副总裁。”

电话挂断。我坐在晨光中,第一次感到离职后,命运的方向盘重新回到了我手中。

只是这一次,我知道前路并非坦途。陈锋不会轻易放弃到手的一切,即使躺在病床上,他也一定在谋划着什么。而我,即将回到那个刚刚离开的地方,以一种谁都没想到的方式。

苏晓端着早餐进来,煎蛋的香味弥漫书房。

“决定了?”她问。

“嗯。”我站起来,抱住她,“谢谢你。”

“谢什么,”她把脸埋在我胸口,“无论你做什么,我都支持你。只是答应我,这次要保护好自己,好吗?”

“我答应你。”

一小时后,我穿上那套为重要场合准备的西装,系上苏晓送的领带。镜子里的人,眼底有疲惫,但背挺得笔直。

出门前,我看了看那盆被小赵救回来的绿萝,它在新花盆里重新焕发生机。有些东西被丢弃,但只要根还在,就能重新生长。

手机响起,周文婧发来消息:“我在楼下。”

新的战役,开始了。而这一次,我不再是那个埋头苦干、任人宰割的技术员。我要拿回的,不仅是我的方案,还有我的尊严,和阻止一场灾难的责任。

第五章 回旋

天城的黑色轿车停在小区门口,流畅的线条在晨光中泛着冷硬的光泽。周文婧坐在后座,车窗降下一半,她正对着平板电脑处理邮件,短发在晨风中纹丝不动。

“元先生,请。”司机为我拉开车门。

车内空间宽敞,弥漫着淡淡的皮革和柑橘香薰的味道。周文婧收起平板,侧身看我:“李建明九点有空。现在是八点二十,我们有四十分钟沟通时间。”

“沟通什么?”

“你的条件,以及我们的底线。”她递过来一份文件,“这是暂聘合同草案。顾问期两周,日薪是市场价的三倍。两周后,如果项目通过天城的技术评估,你可以选择正式加入天城建设,职位是智慧城市项目技术总监,或者回到前公司,我会确保你得到应有的职位和补偿。”

我接过文件,快速浏览。条款清晰,待遇优厚,甚至包括保密协议和竞业禁止的豁免——这意味着即使我回到前公司,天城也不会追究我这段时间的介入。

“很慷慨。”我说。

“值得的投资。”周文婧直视前方,“元朗,我不喜欢说漂亮话。我选你,因为你是这个方案真正的设计者,也因为我在调查中发现,过去三年,你拒绝了两次猎头的高薪挖角,原因是‘项目还没完成’。在这个时代,这种责任心很少见。”

车子汇入早高峰的车流。窗外,熟悉的街景向后掠过。再过三个路口,就是那座我工作了三年的大厦。我曾无数次在这个时间点,挤在地铁或公交上,奔向那个后来背叛了我的地方。

“陈锋真的病得很重?”我问。

“急性胰腺炎,饮酒和高压所致。医生说要住院至少两周,完全恢复需要一个月。”周文婧的语气没有波澜,“李建明今早去医院看过他,带了一束花和一个果篮,谈了十五分钟。谈话内容我没法知道,但结果是他同意了我的提议。”

“这么容易?”

“三亿的合同,和一份可能引发公共安全事故的方案,这个选择题不难做。”她转头看我,“但元朗,你要明白,这只是权宜之计。陈锋不会就此出局,他的总监职位依然保留,病愈后他会回来。这两周,是你唯一的机会。”

“什么机会?”

“证明这个方案离了你不行,证明你是不可替代的。”周文婧的目光锐利如刀,“或者,用这两周时间,找到陈锋的其他问题,让他无法回来。”

我心头一震:“这不是我的作风。”

“我了解。”她转回头,“所以我只是陈述可能性。职场如棋,现在轮到你落子。怎么下,看你自己。”

车子驶入地下车库。熟悉的空气,混合着汽油和灰尘的味道。电梯上升时,我看着楼层数字跳动,胃部微微抽搐。不是紧张,是某种更复杂的情绪——愤怒、屈辱,还有一丝可悲的期待。

电梯门开,前台看到我,明显愣了一下。

“元......元哥?你怎么......”

“我和李总有约。”我说。

“李总在会议室等您。”她的目光在我和周文婧之间游移,职业素养让她迅速恢复了标准微笑,但眼神里的好奇掩饰不住。

推开会议室的门,李建明已经在那里了。他站在落地窗前,背对着门,听到声音转过身来。三天不见,他看起来有些疲惫,眼下的阴影明显。

“元朗,来了。”他的语气是刻意调整过的平和,“坐。周总,感谢您亲自过来。”

我们三人围着会议桌坐下。气氛微妙,像绷紧的弦。

“情况周总应该已经和你说了,”李建明开门见山,“陈锋突发疾病,项目不能停。你是这个方案最了解的人,公司希望你能以顾问身份回来,协助项目度过这两周的难关。”

“顾问身份,”我重复这个词,“不是正式员工。”

“你刚刚离职,马上复职,流程上......”李建明的话被打断。

“流程可以走特批。”周文婧说,“如果元先生同意回来,天城希望他能有明确的职位授权,至少在项目层面,他的技术决策需要被完全尊重。”

李建明的手指在桌面上轻轻敲击,这是他思考时的习惯动作。

“可以。”他终于说,“元朗,这两周你暂代技术负责人,直接向我汇报。项目组所有人配合你的工作。但有一点,”他看着我,“这次合作仅限于解决当前的技术问题,确保项目不因陈锋的缺席而延误。至于其他......”

他没有说完,但意思明确:不要搞事,不要想着报复,不要试图夺回职位。

“我只有一个条件。”我说。

“你说。”

“我要这个项目的原始需求文档、所有的会议记录、以及陈锋过去一个月经手的所有技术文件。”我看着李建明,“完整的,未经删改的。”

李建明的表情微变:“为什么需要这些?”

“要修复问题,首先要了解问题是如何产生的。”我说,“如果陈锋在技术沟通中有误解或错误,我需要知道这些误解发生在哪些环节,才能对症下药。”

“这涉及到公司内部文件......”李建明犹豫。

“如果天城撤资,这些文件就只是一堆废纸。”周文婧平静地说,“李总,我们的信任已经出现裂痕。要重建信任,需要透明和坦诚。元先生的要求很合理。”

沉默在会议室里蔓延。窗外的城市在晨光中苏醒,车流如织,每个人都在奔向自己的战场。而此刻,这个小小的会议室里,正在进行一场没有硝烟的谈判。

“可以。”李建明最终说,“但我需要在场监督文件调取。”

“当然。”我点头。

谈判结束,周文婧起身:“那我先告辞。元先生,项目组九点半有例会,你需要出席。李总,希望这次合作愉快。”

她离开后,会议室里只剩下我和李建明。

“元朗,”他开口,语气复杂,“我知道你心里有怨气。但职场上,有些事......不是非黑即白。陈锋有他的问题,但你也有你的短板。这次是个机会,对你,对公司,都是。”

“什么机会?证明我比他会写代码的机会?”

“证明你不可或缺的机会。”李建明站起来,走到我面前,“如果你能平稳度过这两周,让项目重回正轨,董事会会看到你的价值。到时候,陈锋回来,我可以为你争取一个独立的技术部门,你直接向我汇报,职级和陈锋平级。”

又一个许诺。和三天前“调岗加薪”的许诺如出一辙。

“李总,”我也站起来,“我不在乎职级。我在乎的是那个系统能安全运行,在乎那七个路口不会因为一个漏洞而瘫痪。我在乎的是我这三年的心血,不被糟蹋。”

我直视他的眼睛:“所以,我会做好这两周的工作。但之后,我不需要您的特殊安排。这个项目结束后,我会离开,彻底离开。”

李建明张了张嘴,最终什么也没说,只是点了点头。

九点二十五分,我走向项目组办公室。熟悉的走廊,熟悉的气味,甚至墙上的抽象画都还是那几幅。但一切都不一样了。

推开办公室的门,十几双眼睛齐刷刷看向我。

小赵第一个站起来,表情尴尬又欣喜:“朗哥,你回来了!”

其他人面面相觑,有人低头假装忙碌,有人交换眼神。陈锋提拔的两个亲信坐在角落里,脸色不善。

“各位,”我走到白板前,转身面对所有人,“未来两周,我暂代技术负责人。我知道大家有很多疑问,但现在不是解答的时候。九点半,天城的人会来开项目例会,我们要拿出专业态度。”

我扫视全场:“有问题吗?”

短暂的沉默后,一个戴眼镜的年轻程序员举手:“元哥,陈总监之前安排的工作计划要调整吗?有些模块的优先级......”

“把陈总监过去一周的工作安排和所有邮件转发给我。”我说,“一小时后,我们重新评估计划。”

“可是陈总监说......”

“他现在在医院。”我打断他,“而项目要继续。如果对我的临时负责有疑问,可以去问李总,或者,”我停顿了一下,“等陈总监康复后亲自问他。但现在,在这里,我是负责人。”

语气平静,但不容置疑。那个曾经埋头写代码、不愿与人争执的元朗,正在死去。一个新的、强硬的版本,被迫诞生。

九点半,天城团队准时到达。周文婧带队,六个技术人员,个个表情严肃。例会开始,对方直奔主题。

“上周三,我们提出了数据接口的七个问题,陈总监承诺周五前回复。但到目前为止,我们只收到三个问题的部分解答,且无法通过测试。”天城的技术负责人调出投影,“更严重的是,昨天我们在模拟环境中运行了自适应模块,在车流量达到峰值时,系统出现了卡顿,三分钟后才恢复。”

投影幕布上,曲线图清晰地显示着系统性能的断崖式下跌。

项目组一片寂静。陈锋的两个亲信低下头。

“这个问题我们已经定位,”我开口,所有人的目光集中过来,“是数据流预处理的一个设计缺陷,在特定并发条件下会触发。解决方案我已经有了,今天下班前提交详细修复方案。”

“今天下班前?”天城的技术负责人挑眉,“你确定?陈总监上周说这个问题需要‘深入研究’,至少需要一周。”

“我确定。”我在白板上快速画出数据流图,“问题的根源在这里,缓存队列的溢出机制有误。解决方法是增加一个动态调节算法,根据实时负载调整队列长度。这个模块的原始设计文档第三十七页有相关描述,但实现时被简化了。”

我准确报出页码,在场的天城技术人员立刻翻看手中的文档。几秒钟后,有人点头:“确实,文档里提到了动态调节,但代码里没有实现。”

“因为当时认为那部分可以二期优化。”我说,“但这个判断是错误的。高并发场景下,它是必须的。”

会议室里的气氛微妙地改变了。天城团队看我的眼神,从审视变成了认可。而项目组这边,几个老同事的眼神亮了起来——他们记得,这个模块最初就是由我设计的。

“修复需要多久?”周文婧问。

“核心算法今天可以给出。完整测试和集成,如果加班,三天。”我说。

“好。”周文婧合上笔记本,“那就三天。这三天,天城团队会留在这里,配合测试。元先生,希望你不要让我们失望。”

例会结束,天城团队去了隔壁会议室。我回到工位,打开电脑,开始工作。

邮件提示音不断响起。陈锋过去一周的工作安排、会议记录、邮件往来,陆续发到我的邮箱。我快速浏览,越看心越沉。

他完全误解了方案的核心设计理念。为了“简化实现”,他删除了三个关键的安全校验模块。为了“提升性能”,他改动了数据同步机制,但这可能导致数据不一致。更严重的是,他自作主张增加了一个“智能预测”功能,但这个功能的算法未经充分验证,极不稳定。

这已经不是“能力不足”的问题。这是用三亿的项目和自己的职业生涯赌博。

“朗哥,”小赵悄悄凑过来,压低声音,“有件事,不知道该不该说......”

“说。”

“上周,陈总监让我改了一段代码,说是天城的要求。但我看了需求,不像是甲方提的,倒像是......”他犹豫了一下,“倒像是为了赶进度做的偷工减料。我按照他的要求改了,但心里一直不踏实。代码在这里。”

他把笔记本推过来。我只看了一眼,冷汗就下来了。

那段代码删除了一个重要的异常处理机制。如果系统运行中出现某种特定错误,不会报警,不会记录,只会悄无声息地继续运行,带着错误的数据。

“这个模块影响什么?”我问。

“交通信号灯的优先级计算。”小赵声音更低了,“如果计算错误,可能会导致主干道的绿灯时间异常缩短,或者支路长时间红灯......”

我闭上眼睛,强迫自己冷静。这个错误如果在实际运行中出现,不会导致系统崩溃,但会导致交通效率严重下降,甚至可能因为绿灯时间不足而引发路口堵塞。

“还有谁知道这个改动?”

“应该只有我和陈总监。他让我‘悄悄改掉,不要声张,免得大家觉得方案不成熟’。”

我盯着屏幕上的代码,手指冰凉。陈锋不只是偷了我的方案,还在用危险的方式修改它,为了在甲方面前营造“一切顺利”的假象。

“备份原始代码了吗?”

“备份了,在我的私人U盘里。”

“恢复原始版本。现在。”我说,“如果有人问起,就说是我在代码审查中发现了问题,要求回退。”

“可是陈总监那里......”

“他现在在医院,管不了这里。”我看着小赵,“而且,你认为如果他在这里,会承认自己要求了一段有风险的代码吗?”

小赵脸色发白,摇了摇头。

“去做吧。有事我担着。”

他匆匆离开。我坐在电脑前,看着收件箱里堆积的邮件,忽然明白周文婧为什么如此急切地要我回来。

陈锋不止是能力不足。他在用危险的方式掩盖自己的不足。而天城的人,也许从一开始就察觉到了问题,所以才会如此强硬,如此不信任。

手机震动,是苏晓发来的消息:“怎么样?还顺利吗?”

我盯着那条消息,很久,回复:“发现了一些问题,比想象中严重。今晚要加班,别等我吃饭了。”

“注意身体。无论如何,我都在。”

简单的几个字,让我几乎崩断的神经稍微放松了一些。我深吸一口气,开始工作。

下午三点,我正在修改自适应模块的核心算法,办公室的门被推开了。

陈锋的妻子站在门口,眼眶红肿,手里拎着一个保温桶。

所有人都愣住了。

“元朗,”她的声音颤抖,“我能和你谈谈吗?”

(第五章完,字数约5000)

第六章 病床前的对峙

茶水间里,咖啡机的指示灯闪烁着红光,发出低沉的嗡鸣。陈锋的妻子——林薇,把保温桶放在桌上,手指无意识地绞在一起。

“医生说他需要静养,不能受刺激,”她声音很轻,像是怕被外面的人听见,“但我必须来找你。陈锋从昨晚开始就睡不着,一直在念叨项目,念叨你......”

“嫂子,”我打断她,“陈锋现在需要的是休息。项目的事,公司会处理。”

“公司?”林薇抬起头,眼泪在眼眶里打转,“元朗,我和陈锋结婚七年,他是什么样的人,我最清楚。他是有野心,有时候方法不太妥当,但他绝不是坏人。这次的事......”

她停顿,似乎在组织语言:“那天他晕倒前,接了一个电话,情绪很激动。我隐约听到他在说‘元朗’、‘漏洞’、‘不可能’......之后他就脸色惨白,捂着肚子倒下了。元朗,你能不能告诉我,到底发生了什么?”

咖啡机“嘀”的一声,咖啡煮好了。浓郁的焦苦味弥漫在狭小的空间里。

“嫂子,工作上的事,我不方便......”

“是因为那个方案,对吗?”林薇直视我的眼睛,“陈锋升职用的那个方案,其实是你做的,对吗?”

我沉默。

“他上周喝醉了回家,一直在说胡话。说对不起你,说他不该那样做,但他没办法,他需要那个位置,我们需要钱......”她的眼泪终于掉下来,“他爸肺癌晚期,每个月的靶向药要三万多,医保不报销。我爸妈去年车祸,现在还在康复中心,每个月又是两万多。我们俩的工资加起来,根本不够......”

她捂住脸,肩膀抖动:“我知道这不能成为他伤害你的理由。但如果可以,他也不想这样的。元朗,你看在这么多年朋友的份上,能不能......能不能别赶尽杀绝?”

茶水间的门虚掩着,外面办公室的键盘敲击声隐约传来。有人走过,脚步声停在门外,又迟疑地离开。

“嫂子,”我递给她一张纸巾,“我没有要赶尽杀绝。我只是在做我的工作,确保项目不出问题。”

“但陈锋说,你要是回来了,他就回不来了。”林薇擦着眼泪,声音哽咽,“他说李总已经答应他,只要这个项目顺利落地,年底就提拔他当部门副总。可现在你回来了,甲方又那么信任你,他怕......”

“怕我抢走他的位置?”我问。

她默认了。

我走到窗边,看着楼下街道的车水马龙。那些匆匆的行人,那些在红灯前等待的车辆,每个人都有自己的战场,自己的不得已。

“嫂子,我可以向你保证,”我转身,面对她,“我对陈锋的总监位置没有兴趣。两周后,无论项目如何,我都会离开。但在这两周里,我必须确保这个系统是安全的,不能因为它出问题而让任何人受伤。这和陈锋无关,和我也无关,只和那七个路口每天经过的几万个人有关。”

林薇怔怔地看着我,似乎想从我脸上找出谎言的痕迹。

“陈锋的父亲......”我问,“病情严重吗?”

“晚期,医生说最多还有半年。”她低下头,“陈锋一直不敢告诉你,他觉得没面子。他从小就好强,什么都想做到最好,不想让人看到他狼狈的样子。”

我忽然想起,三个月前,陈锋确实有段时间频繁请假,问他只说家里有点事。当时我以为是他妻子身体不适,还给他推荐了一个中医。

原来如此。

“这保温桶是?”我看向桌上的东西。

“我给陈锋炖的汤,医生说他只能吃流食。”林薇勉强笑了笑,“顺便......也想来看看你。元朗,我知道陈锋对不起你,我也没脸替他求情。但如果可以,至少......别让他失去工作,好吗?我们真的需要这份收入。”

她提起保温桶,走到门口,又回头:“他住在市一医院住院部903,如果你有空......算了,当我没说。”

门轻轻关上。我站在茶水间里,咖啡已经凉了。

手机震动,是周文婧的消息:“刚刚得到消息,陈锋今早要求护士帮他拿笔记本电脑到医院,被医生制止。但他还在通过手机处理工作邮件。看来他没有完全‘静养’。”

我盯着那条消息,心里五味杂陈。

陈锋在病床上还在操心工作,是因为责任心,还是因为害怕失去?林薇说的那些话,是真的无奈,还是苦肉计?我和他认识十年,曾以为彼此了解,现在却发现,我从未真正看清过他。

或者说,职场这个人性放大器,让我们都暴露了自己最不堪的一面。

回到工位,小赵已经恢复了那段被删改的代码。他发来确认消息,附带一句:“朗哥,我刚才查了日志,陈总监上周还改了几个其他模块,都是类似的问题——为了赶进度,牺牲了安全校验。要不要一起恢复?”

“把所有他单独修改过的模块列出来,下班前给我清单。”我回复。

“明白。还有......”小赵迟疑了一下,“刚才陈总监的一个朋友,在财务部的,过来‘顺便问问’项目进展。我说你在负责,他表情有点怪。”

消息灵通。陈锋虽然人在医院,眼线还在。

下午五点,我提前完成了自适应模块的修复方案。发给天城团队后,周文婧很快回复:“效率很高。但我们需要看到测试结果。今晚能安排测试吗?”

“可以,但需要测试环境配合。”

“天城已经准备好模拟环境,接入权限会发给你。我们的人会全程跟进。”

我召集项目组开会,分配今晚的测试任务。听到要通宵测试,有人面露难色,但没人敢反对。陈锋的两个亲信借口家里有事想先走,被我驳回。

“测试需要所有人都在,”我说,“家里有急事的,现在去处理,两小时后回来。没有急事的,点外卖,公司报销。”

会议室里气氛压抑。我知道他们在想什么——以前陈锋在时,加班虽然也多,但至少会说些漂亮话,画些大饼。而我,只是个临时回来的“前同事”,没有给过任何承诺,却要求同样的付出。

“这次测试关系到项目能否继续,”我看着所有人,“也关系到在座各位今年的奖金,和这个团队未来还能不能存在。天城如果撤资,这个项目组会被解散,所有人重新分配。分配到哪里,我不确定,但肯定不如现在。”

这话很直接,很难听,但有效。几个原本漫不经心的人坐直了身体。

“测试通过,项目保住,每个人都有功劳。测试失败,”我顿了顿,“责任我负,但各位的履历上,会留下一个失败项目的记录。在裁员季,这意味着什么,大家清楚。”

会议室里落针可闻。

“现在,去吃饭,两小时后集合。”

人群散去。我回到办公室,关上门,终于能稍微喘口气。太阳已经西斜,金红色的光线透过玻璃窗,在桌面上投下长长的影子。

手机响了,是陌生号码。我接听。

“元朗吗?我是陈锋。”电话那头的声音虚弱,但清晰。

我沉默了两秒:“听说你住院了,还好吗?”

“死不了。”他苦笑,“胰腺炎,喝酒喝的。医生说要戒酒,静养。但你知道,我静不下来。”

我没有接话。

“林薇去找你了,对吗?”陈锋问,“她跟我说了。元朗,对不起,她不该去打扰你。那些家里的事,我也不想让她说的,但......她太担心了。”

“嫂子说的是真的吗?”我问,“你父亲,还有她父母......”

“真的。”陈锋的声音低下去,“很可笑吧?我每天在办公室人模人样,实际上家里一团糟。我爸的药,一个月三万二,自费。她爸妈的康复费,一个月两万五。我们的房贷,一个月一万八。车贷、生活费、孩子的补习班......元朗,我不是在诉苦,我只是想说,我需要那个位置,需要那份工资。总监和高级经理,年薪差四十万。四十万,对我家来说,是救命的钱。”

窗外的天色渐渐暗下来,城市的灯光次第亮起。那些灯火里,有多少个像陈锋这样的家庭,在体面之下,是勉力维持的脆弱平衡?

“所以你就偷了我的方案?”我问,声音平静得自己都惊讶。

电话那头沉默了很长很长时间。

“是。”陈锋终于说,“我偷了。我看了你的方案,知道它有多好,知道它能让我坐上那个位置。我对自己说,我们是兄弟,你不会怪我。我对自己说,等我上去了,会补偿你。我对自己说了很多漂亮的借口,但真相是,我就是个小偷,是个背叛朋友的混蛋。”

他的声音哽咽了:“元朗,我不求你原谅。我只求你,别毁了这个项目。它现在不只是我的前途,还是我父亲的命。如果项目黄了,我总监的位置保不住,我父亲的药就断了。他只有半年了,我想让他走得不那么痛苦,这有错吗?”

道德绑架。用亲情,用绝症,用成年人的不得已。

但我不得不承认,它有效。我想起自己父亲去年做手术时,我在医院守了三天三夜,那时我只想用一切换他平安。如果那时有人告诉我,偷一个方案能救父亲的命,我会怎么做?

我不知道。

“陈锋,”我说,“项目会不会黄,不取决于我,取决于它本身有没有问题。如果你真的在乎这个项目,就该告诉我,你在哪些地方做了改动,为什么改,可能有什么风险。”

电话那头再次沉默,这次更长。

“我没有做任何危险的改动,”陈锋的声音忽然变得冷静,“所有的修改都是为了提高效率,优化性能。如果你发现了什么问题,那可能是你原来的设计就有缺陷。”

我的心沉了下去。到了这个时候,他还在推卸责任。

“那个删除异常处理机制的代码呢?”我问。

短暂的停顿。“什么异常处理?我不清楚。可能是什么时候手误删了,你可以恢复嘛,这有什么大不了的。”

“那段代码如果留在系统里,可能导致交通信号计算错误,引发堵塞。”

“哪有那么严重,”陈锋轻笑一声,那笑声虚弱而讽刺,“元朗,你还是老样子,喜欢把事情往最坏处想。一个异常处理而已,就算真的触发了,系统也有备选方案。你别吓唬自己,也别吓唬甲方。”

“备选方案是什么?”

“......”陈锋被问住了。

“你根本没有设计备选方案,对吧?”我说,“你删了异常处理,以为永远不会触发。但如果触发了,系统就会用错误的数据一直运行,直到人为干预。而在早晚高峰,人为干预需要时间,这个时间足够造成交通瘫痪。”

“你这是危言耸听!”

“是不是危言耸听,今晚测试就知道。”我看了看表,“还有一小时,我们会做高并发压力测试。如果系统崩溃,天城会立刻撤资。如果通过,项目继续。但无论哪种结果,陈锋,我都会把你所有未经评审的改动全部恢复,并且写进报告,说明这些改动存在重大安全隐患。”

“元朗!”他的声音陡然提高,随即因为疼痛而倒抽一口冷气,“你......你这是要毁了我......”

“我是要救这个项目,和可能因为这个项目出事的人。”我平静地说,“包括你。如果这个系统真的因为你删改的代码而引发事故,你就不只是丢掉工作那么简单了。你会坐牢的,陈锋。”

电话那头传来粗重的呼吸声,还有压抑的咳嗽。良久,他说:“好,好,元朗,你够狠。我以为我们至少还有一点旧情分......”

“旧情分?”我打断他,“你偷我方案的时候,想过旧情分吗?你让林薇来找我打感情牌的时候,想过旧情分吗?陈锋,我们之间,是你先毁了那份情分。”

我挂断电话,手在发抖。

不是愤怒,是悲哀。为那段十年的友情,为那个曾经一起通宵改代码、一起吐槽老板、在彼此婚礼上当伴郎的陈锋。他死了,死在他自己的选择里。

窗外,夜幕完全降临。城市的灯光璀璨如星河,每一盏灯下都有一个故事,有不得已,有选择,有得到和失去。

我的手机亮起,苏晓发来消息:“给你点了外卖,放在前台了。记得吃。另外,妈打电话说爸的复查结果很好,让你别担心。我们都爱你。”

我看着那条消息,眼眶发热。

我还有家,还有爱我的人,还有需要我保护的东西。这让我在道德的灰色地带里,还能找到站稳的根基。

敲门声响起,小赵探头进来:“朗哥,天城的人到了,测试环境也准备好了。大家吃完饭了,随时可以开始。”

“开始吧。”我站起身,走向会议室。

门在我身后关上,走廊的灯光把我的影子拉得很长。前方,是长达一夜的测试,是可能决定项目生死的技术验证,是和陈锋无声的战争。

而我知道,无论今夜的结果如何,有些东西,已经永远地改变了。

(第六章完,字数约5000)

第七章 深夜测试

测试室里的空气混合着咖啡、汗水和电路板加热的焦味。十二块显示屏环绕墙壁,实时滚动着数据流、性能曲线和交通模拟画面。中央大屏上,七个路口的3D模型正在运行,车辆如蚂蚁般穿梭。

“并发数五千,响应时间正常。”天城的技术员盯着屏幕,“准备提升到一万。”

“提升。”周文婧站在控制台前,双手抱胸,表情凝重。

我坐在她旁边的位置,手指在键盘上快速敲击,监控着核心算法的运行状态。修复后的自适应模块正在工作,数据流平稳,缓存队列的动态调节算法运行良好。但我知道,真正的考验还没来。

“一万并发,系统负载75%,响应时间开始波动。”天城技术员报告。

“继续加压。”我说。

“元工,这已经超过设计峰值了......”我们这边的一个工程师小声提醒。

“天城的要求是能承受设计峰值150%的压力。”周文婧头也不回,“继续。”

屏幕上,代表系统负载的曲线开始爬升,从75%到80%,再到85%。七个虚拟路口的车流明显增多,信号灯频繁切换,模拟的车流开始出现微小的迟滞。

“九十了。”有人低声说。

测试室里安静得只剩下键盘敲击声和服务器风扇的嗡鸣。所有人的眼睛都盯着屏幕,盯着那些跳动的数字和曲线,仿佛那是病人的心电图。

“九十五!”天城技术员的声音紧绷,“响应时间超过安全阈值,3号、5号路口出现信号延迟!”

“稳住。”我说,手指在控制台上输入一串指令,“启动负载均衡B方案。”

屏幕上,数据流开始重新分配,从拥堵的节点转向相对空闲的节点。负载曲线在96%的位置颤抖了几下,缓缓回落到92%。

短暂的欢呼声响起,但立刻被周文婧制止:“还没结束。模拟突发事故,3号路口东侧车道封闭。”

控制员敲击键盘。屏幕上,3号路口的一条车道变成红色,代表封闭。车流开始重新寻找路径,路口的负载瞬间飙升。

“3号路口负载突破100%!自适应模块开始降级!”

“降级策略是什么?”周文婧看向我。

“关闭智能优化,切换为预设的保守方案,保证基础通行。”我调出降级日志,“看,系统自动识别了突发拥堵,启动了应急预案。信号灯切换为固定时长模式,虽然效率降低,但不会出错。”

屏幕上,3号路口的信号灯停止了智能变化,转为固定的红绿黄循环。车流虽然变慢,但依然有序。

“很好。”周文婧点头,“恢复车道,继续加压。”

测试进行了三个小时。我们模拟了各种极端场景:暴雨天气能见度降低、大型活动突发人流、交通事故连环发生、甚至黑客攻击试图篡改信号灯。系统在压力下颤抖、报警、降级,但始终没有崩溃。

凌晨两点,最后一次极限测试结束。系统负载最终停留在设计峰值的180%,然后安全降级运行。

测试室里爆发出真正的欢呼。几个年轻的工程师击掌庆祝,小赵激动得脸都红了。就连天城那边一直板着脸的技术负责人,也露出了笑容。

“元工,厉害!”他走过来,主动伸出手,“这个修复方案,不仅解决了原有的漏洞,还提升了系统的鲁棒性。我为我之前的质疑道歉。”

“应该的。”我握住他的手,手心全是汗。

周文婧最后一个走过来。她没有笑,但眼神里的冰霜融化了:“元朗,你证明了自己。也证明了我们的选择没错。”

“谢谢。”我说,声音沙哑。连续十小时的高度紧张,让我的太阳穴突突直跳。

“今晚就到这儿,大家辛苦了。”周文婧对所有人说,“天城团队在隔壁会议室准备了宵夜,各位先去休息。明天上午十点,我们开总结会。”

人群散去,测试室里只剩下我和周文婧,还有一个在收拾设备的天城技术员。

“你看起来不太好。”周文婧说。

“有点累。”我揉了揉眉心,“但问题解决了,值得。”

“不只是累吧。”她从包里拿出一瓶水递给我,“陈锋给你打电话了?”

我猛地抬头。

“不用惊讶,医院那边有我的人。”周文婧淡淡地说,“他下午试图联系董事会成员,但没成功。晚上又给你打电话,说了什么?”

“家里的事,和工作的事。”我拧开水喝了一口,“他想让我手下留情。”

“你答应了?”

“我告诉他,我不在乎他的位置,但我在乎系统的安全。”我看着屏幕上已经静止的模拟画面,“他好像不信。”

“他不会信的。”周文婧在控制台边坐下,“在陈锋的世界观里,所有人都在争夺有限的资源,所有人都是潜在的敌人。你越说不想要,他越觉得你在伪装。”

“也许吧。”

“他父亲的病是真的,”周文婧忽然说,“我查了。肺癌晚期,靶向药每月三万二,全部自费。他岳父母的康复费也是真的,加起来每个月开销超过八万。以他之前的工资,确实撑不住。”

我握紧水瓶:“所以他有理由偷我的方案?”

“不,理由和借口是两回事。”周文婧转过头看我,“元朗,我也经历过类似的事。我父亲病重时,我为了筹钱,同时打三份工,每天睡四个小时,但我没偷过任何人的东西。困境可以解释行为,但不能开脱错误。”

她站起来,走到窗边,看着外面沉睡的城市:“陈锋选择了捷径,为此背叛了朋友,也背叛了自己的专业操守。现在,他必须承担后果。你如果心软,放过他,那对那些兢兢业业、哪怕再难也不越线的人,公平吗?”

窗外,城市的灯光稀疏了些,但依然明亮。那些灯光下,有多少人在为生活挣扎,又有多少人守住了底线?

“我不会放过他,”我说,“但我也不会落井下石。测试结果我会如实报告,他的那些危险改动,我会写进文档。至于公司怎么处理,是公司的事。”

“这就够了。”周文婧转身,“顺便说,董事会明天上午会听取测试汇报。李建明会参加,还有两位独立董事。这是个机会,元朗,让所有人看到你的价值。”

“然后呢?等我证明了自己的价值,陈锋就彻底出局,我顶替他的位置?”

“如果你想要的话。”

“我不想要。”我摇头,“两周后,我会离开。这是我的承诺。”

周文婧看了我很久,点了点头:“好。但你至少应该得到应有的认可。这个项目如果能成功落地,你应该是第一功臣,而不是陈锋。这件事,我会帮你争取。”

她离开后,我一个人在测试室坐了会儿。屏幕已经暗了,倒映出我疲惫的脸。三年前开始这个项目时,我从没想过会走到今天这一步——在深夜的办公室里,和甲方的负责人讨论如何“扳倒”我曾经的兄弟。

手机震动,是苏晓的消息:“还没结束吗?我熬了粥,等你回来。”

时间是凌晨三点十分。她还没睡。

“马上回。”我回复,收拾东西离开。

走廊里空无一人,只有安全出口的绿灯幽幽亮着。经过陈锋的办公室时,我停下脚步。门锁着,但透过玻璃窗,可以看到里面的陈设——他新换的皮质座椅,桌上妻子和孩子的照片,墙上的“优秀员工”奖状,还有角落里我送他的那盆绿萝的遗骸——他换了一盆更大的发财树。

我曾无数次走进这间办公室,和他讨论方案,吐槽客户,分享生活。我们曾在这里通宵加班,一起看日出,然后下楼吃豆浆油条。他说等这个项目成了,要请我去最好的餐厅。我说不用,大排档就行,啤酒烤串,痛快。

那些时光是真的。现在的对立,也是真的。

电梯下行,我忽然感到一种深切的疲惫。不是身体的累,是心的累。成年人的世界太复杂,不是非黑即白,而是在大片大片的灰色地带里,寻找一个不让自己厌恶自己的立足点。

走出大楼,凌晨的风带着凉意。街上空荡,只有环卫工人在清扫路面。我站在路边等车,手机又震动了。

这次是陌生号码,但我知道是谁。

“元朗,是我。”陈锋的声音比下午更虚弱,但带着一种奇怪的平静,“测试结束了吧?结果怎么样?”

“通过了。”

电话那头传来一声叹息,不知道是放松还是失望。

“恭喜。”他说,“你又赢了。”

“我没有和你比赛,陈锋。”

“不,我们一直在比赛,只是你以前不知道。”他咳嗽了几声,“从进公司第一天起,我就把你当对手。你能力强,人缘好,上级喜欢。而我,什么都要更努力才能得到。这个总监的位置,如果我不抢,就是你的。我只是比你快了一步。”

夜风吹过,我打了个寒颤。

“所以,你从来没把我当朋友?”

沉默。长久的沉默。

“曾经是。”陈锋终于说,“但朋友和利益冲突时,我选择利益。元朗,你别装清高,如果换做你,你也会做同样的选择。这个社会就是这样,你不争,就被人踩在脚下。”

“我不会。”我说得斩钉截铁,“我不会偷朋友的东西,不会用危险的手段掩盖自己的无能,不会在出事后用家人的病来博同情。陈锋,我们不一样。”

电话那头传来压抑的笑声,苦涩而破碎。

“是啊,你清高,你了不起。那你现在在做什么?趁我病着,抢我的项目,在我的团队里树立威信,等着把我彻底踢出局。元朗,你和我,真的有区别吗?”

网约车到了,停在我面前。司机摇下车窗,用询问的眼神看我。

“我有事,先挂了。”我说。

“等等。”陈锋叫住我,“元朗,看在我们认识十年的份上,最后帮我一次。明天董事会的汇报,你能不能......不要把那些修改说成是我擅自做的?就说,是团队讨论后的一致决定。至少,让我保留一点体面。”

我看着车窗上自己的倒影,那张脸在街灯下显得苍白而陌生。

“那些修改是危险的,陈锋。如果不说清楚,未来出了事,责任是大家的。我不能让整个团队为你背锅。”

“不会出事的!我已经计算过概率......”

“万分之一的概率,发生在一个人身上,就是百分之百。”我拉开车门,“对不起,陈锋,这次我不能帮你。”

挂断电话,上车。司机问我去哪,我报了地址,然后靠在座椅上,闭上眼睛。

手机又震了一下,是陈锋发来的短信,只有一句话:“你会后悔的。”

我没有回复,把手机调成静音。

车窗外,路灯向后飞掠,连成一条光带。这个城市睡了,但它的心跳还在继续。而我,在这个心跳声中,做出了选择。

回到家,凌晨四点。客厅亮着一盏小灯,苏晓在沙发上睡着了,身上盖着薄毯。餐桌上是温着的粥和小菜。

我轻轻走过去,想抱她去卧室,她却醒了。

“回来了?”她揉揉眼睛,声音带着睡意,“测试怎么样?”

“通过了。”我吻了吻她的额头,“去床上睡吧,别着凉。”

“你吃了没?我去热粥。”

“我自己来,你快去睡。”

但她还是起来了,陪我坐在餐桌边,看我喝粥。温暖的米粥下肚,紧绷的神经终于放松下来。

“陈锋又联系我了。”我说。

苏晓没有说话,只是握住我的手。

“他说,如果换做我,也会做和他一样的选择。”我看着碗里升腾的热气,“晓晓,你说,我真的比他高尚吗?我现在做的一切,难道没有私心?我不想报复吗?我不想证明自己是对的吗?”

苏晓沉默了一会儿,说:“人都有私心,元朗。但区别在于,你的私心没有伤害无辜的人。你想证明自己,但你是用实力证明,不是用手段打压别人。你想拿回属于自己的东西,但你没有用谎言和背叛去拿。”

她顿了顿,声音很轻:“而且,你拒绝了周文婧让你找陈锋把柄的建议,对吗?你明明可以彻底毁了他,但你没有。这就是你和他不一样的地方。”

我放下勺子,握住她的手。她的手温暖而柔软,像黑夜里的光。

“睡吧,”她说,“明天还要开会。无论发生什么,我都在。”

我点点头,和她一起收拾碗筷,然后相拥着倒在床上。在沉入睡眠的前一刻,我想,也许成年人的世界不是非黑即白,但至少,在灰色地带里,我还能牵着她的手,不让自己迷失方向。

这就够了。

第八章 董事会的棋局

早晨八点,会议室里已经坐满了人。

长桌一侧是以李建明为首的内部高管,另一侧是天城建设的代表,周文婧坐在首位。桌子尽头,是两位独立董事——头发花白的赵董和戴着金丝眼镜的王董。气氛肃穆,像是庭审现场。

我坐在李建明下首,面前摊着测试报告和修复方案。白衬衫的领口有点紧,我松了松领带,深吸一口气。

“开始吧。”赵董开口,声音沉稳,“天城的周总,您先说说情况。”

周文婧站起来,打开投影:“各位董事,过去一周,我们与贵司技术团队进行了三轮深度对接,发现了方案中存在若干重大安全隐患。具体来说,包括自适应学习模块的死循环漏洞、数据流异常处理机制缺失、以及未经评审的性能优化改动。”

屏幕上逐条列出问题,每一条都附有技术细节和潜在风险。李建明的脸色越来越难看。

“这些问题,在之前的方案评审中并未提及。”王董推了推眼镜,“陈锋总监提交的方案,我们评审时评价很高。”

“因为陈总监提交的是理想版本,而实际执行的版本,他做了未经授权的修改。”周文婧调出代码对比图,“这是原始设计文档,这是实际提交的代码。看这里,这里,还有这里——关键的安全校验被删除,为了所谓的‘性能提升’。但根据我们的模拟测试,这些改动不仅不会提升性能,反而会在高负载下导致系统崩溃。”

会议室鸦雀无声。李建明的手指在桌面上轻轻敲击,这是他紧张时的习惯。

“这些问题,元朗先生在过去三天内已经基本修复。”周文婧切换画面,显示测试数据,“昨晚的极限压力测试,修复后的系统承受了设计峰值180%的负载,无崩溃,无数据丢失,安全降级机制正常触发。这是详细的测试报告。”

报告在与会者手中传阅。赵董翻看着厚厚的文档,眉头紧锁。

“元朗,”他抬头看我,“这些漏洞,是原始设计就有的,还是后期引入的?”

所有人的目光聚焦过来。李建明在桌下轻轻碰了碰我的腿,那是提醒,也是警告。

“原始设计有一个隐蔽的死循环漏洞,是我的疏忽。”我平静地说,“我在最终版方案中做了标记,但未详细说明修复方案。这个漏洞,陈总监在接手时没有发现。”

“其他问题呢?那些被删改的安全校验?”

“那些是陈总监在后续开发中做的修改,”我看着李建明,他的脸色苍白,“理由是‘简化实现,加快进度’。我查看了邮件记录,这些改动没有经过正式评审流程,是陈总监直接要求开发人员执行的。”

会议室里响起低低的议论声。

“这不可能。”李建明终于开口,声音干涩,“陈锋不会做这么不专业的事。他也许......也许只是出于效率考虑,做了些优化......”

“删掉安全校验不是优化,是赌博。”周文婧冷冷地说,“用公共交通安全赌博。李总,如果这个系统真的上线,因为某个被删除的异常处理而导致交通瘫痪,谁来负责?你?陈锋?还是整个公司?”

李建明哑口无言。

“元朗,”赵董看着我,“既然你发现了问题,也做了修复,现在这个系统,你认为可以信任吗?”

我站起来,走到投影仪前。屏幕上是我用了一夜准备的演示文稿。

“各位董事,任何系统都有风险。但经过修复和测试,我认为现在的方案已经达到了可商用标准。不过,”我切换页面,“我建议增加三个月的试运行期,在非核心路段先行部署,收集真实场景数据,进一步完善算法。同时,建立独立的第三方监管机制,所有代码变更必须经过双人评审和安全测试。”

“这会延迟项目进度。”王董说。

“但能降低风险。”我迎上他的目光,“这个系统控制的是交通信号,关系到公共安全。我认为,谨慎比速度更重要。”

周文婧微微点头。两位独立董事交换了眼神。

“元朗的建议有道理。”赵董缓缓说,“天城方面怎么看?”

“我们同意。”周文婧说,“事实上,这也是我们的要求。如果贵司不接受,天城会重新评估合作。”

威胁,但优雅。会议室里温度骤降。

“我们接受。”李建明几乎是咬着牙说出的这句话,“但试运行期间,需要元朗全程跟进。他必须对这个系统的稳定性负责。”

“这正是我的下一个建议。”周文婧说,“鉴于元朗先生对这个方案的深刻理解和修复能力,天城建议,在试运行期间,由元朗先生担任技术总负责人,直接向项目指导委员会汇报。陈锋总监康复后,可以担任副职,协助元朗工作。”

“这不符合公司规定!”李建明猛地站起来,“陈锋是正式任命的部门总监,元朗现在只是顾问......”

“李总,”赵董打断他,“规定是死的。现在的问题是,谁能保证这个三亿的项目不出问题?谁能对天城、对董事会、对可能受到影响的市民负责?”

他环视全场:“我认为周总的建议合理。在项目试运行期间,由元朗担任技术总负责人。陈锋康复后,根据情况再调整。元朗,你有没有信心担起这个责任?”

所有人的目光再次聚焦。李建明的眼神复杂,有恼怒,有无奈,也有一丝不易察觉的恳求。周文婧平静地看着我,等待我的回答。

这一刻,会议室静得能听到空调出风的声音。

“我有信心,”我说,“但我有两个条件。”

“你说。”赵董点头。

“第一,技术团队必须重新整合。我需要绝对的决策权,所有代码变更必须经过我的评审。第二,”我看着李建明,“陈总监康复后,我需要和他有一次正式的交接会议,明确职责划分,避免权责不清。”

第一个条件,是确保系统安全。第二个条件,是给所有人一个台阶下。

李建明显然明白了我的用意,紧绷的肩膀放松了些:“可以。我会和陈锋沟通。”

“那就这样定了。”赵董拍板,“试运行期三个月,元朗任技术总负责人。三个月后,根据试运行结果,再决定后续安排。天城方面?”

“我们同意。”周文婧站起身,“另外,天城会派出一支五人技术团队,全程参与试运行,与贵司团队协同工作。这是为了确保透明度,也希望各位理解。”

“理解。”李建明挤出一个笑容,“合作愉快。”

会议结束,人群散去。李建明走到我面前,压低声音:“来我办公室一趟。”

副总裁办公室,门关上,隔音效果很好,外面的声音完全消失。

“坐。”李建明指了指沙发,自己走到吧台边,倒了两杯水,“董事会那边,我尽力了。”

“谢谢李总。”我接过水杯,没有喝。

“不用谢我,我不是在帮你。”他在我对面坐下,揉了揉太阳穴,“我是在救这个项目,救我的职位。如果天城撤资,董事会第一个问责的就是我。是我力排众议提拔了陈锋,是我在周文婧第一次质疑时还为他打包票。”

他苦笑着摇头:“元朗,你给了我一个教训。看人,不能只看表面。”

“陈锋他......”

“他有能力,有野心,但急了。”李建明看着我,“他父亲的事,我知道。年初他找我预支半年工资,我批了。但我没想到,压力会让他走这种捷径。”

“您早就知道他的经济状况?”

“知道一点,但没想到这么严重。”李建明叹息,“如果我早知道,也许会多关注一些,也许......算了,现在说这些没用。元朗,接下来三个月,你是这个项目的关键。做好它,董事会会看到你的价值。做不好,我们一起滚蛋。”

“我会尽力。”

“不是尽力,是必须做好。”李建明直视我的眼睛,“还有,对陈锋,留点余地。他父亲时间不多了,别让他在病床前还要担心工作。这是我对你的私人请求,不是命令。”

我沉默片刻,点头:“我明白。”

离开办公室,走廊里,小赵在等我,表情焦急。

“朗哥,陈总监......陈锋他刚才来电话了,问董事会的结果。我说不知道,他就把电话挂了。但他语气很怪,我有点担心......”

“他说什么了?”

“他说......”小赵吞吞吐吐,“他说‘既然都不给我活路,那就别怪我不客气了’。朗哥,他会不会做什么傻事?”

我心头一紧:“他还在医院?”

“应该吧,护士刚才还打电话来问工作的事,说他一直用手机处理邮件,不肯休息。”

“我知道了。你回去工作,今天开始整合团队,按照昨晚测试通过的版本,准备试运行环境。”

“是!”

回到临时办公室——李建明让人给我腾出来的小房间,我关上门,给陈锋发消息:“董事会决定,试运行期间我暂代技术负责人。你好好养病,康复后我们再谈。”

消息显示已读,但没有回复。

十分钟后,手机震动,是林薇。

“元朗,陈锋他......他看到公司邮件了,说董事会任命你当技术负责人。他情绪很激动,把手机都摔了。你能不能......能不能来医院一趟?劝劝他?”

我看着那条消息,很久,回复:“我现在过去。”

市一医院住院部,消毒水的味道弥漫在空气里。903病房门口,我停下脚步,透过门上的玻璃窗,看到陈锋半靠在床上,盯着天花板。才几天不见,他瘦了一圈,脸色蜡黄,眼眶深陷。

林薇在旁边削苹果,眼睛红肿。

我敲了敲门,走进病房。陈锋转过头,看到是我,眼神瞬间冷了下来。

“你来干什么?看我笑话?”

“陈锋,别这样......”林薇低声说。

“嫂子,我想和他单独聊聊。”我说。

林薇看看我,又看看陈锋,放下苹果和盘子,默默退了出去,带上了门。

病房里只剩下我们两人。点滴瓶里的液体一滴一滴落下,发出轻微的声响。

“董事会邮件你看到了,”我在床边的椅子坐下,“试运行三个月,我负责。三个月后,你康复了,我们再重新安排。”

“重新安排?”陈锋笑了,声音嘶哑,“把我安排到哪里去?副职?还是调去哪个闲职部门?”

“看项目进展,也看你的恢复情况。”

“元朗,别假惺惺了。”他盯着我,眼睛里有血丝,“你赢了,我认。但别摆出一副施舍的样子。这个位置本来就是我的,是你趁我病,抢走的。”

“不是我抢的,是你自己弄丢的。”我迎上他的目光,“那些危险的改动,如果我不修复,项目早就黄了。到时候别说总监,你连工作都保不住。”

“那又怎样?至少我试过了!”陈锋突然激动起来,撑着坐直,“我努力了,我拼了,我想改变命运!你呢?你永远那么清高,那么正确,等着别人犯错,然后站出来当救世主!你凭什么?!”

他的声音在病房里回荡,隔壁床的病人探过头来看。

“凭我不想看到有人因为我的设计受伤。”我平静地说,“凭我知道,有些线不能跨过去。陈锋,你想要那个位置,可以竞争,可以表现,可以用实力争取。但你不该偷,不该用危险的方式掩盖自己的不足,更不该在出事之后,用家人的病来博同情,逃避责任。”

“我没有......”

“你有。”我打断他,“你让林薇来找我,说那些话,不就是希望我心软吗?你打电话给我,让我帮你隐瞒,不就是在逃避责任吗?陈锋,你父亲生病,你需要钱,我理解,我真的理解。但这不是你伤害别人、罔顾安全的理由。”

陈锋的脸色从蜡黄转为惨白,他剧烈咳嗽起来,护士闻声进来,检查了他的状况,责备地看了我一眼:“病人需要休息,不能受刺激。”

“抱歉。”我站起来,“陈锋,三个月,你好好养病。三个月后,如果你还想继续做这个项目,我们谈。如果你不想,我可以帮你推荐其他地方。但无论怎样,别再做傻事。你的家人需要你健康地活着,不是需要一个躺在病床上还在算计的总监。”

我走到门口,手放在门把上。

“元朗。”陈锋叫住我,声音忽然变得很轻,“你还记得大四那年,我们一起参加编程大赛吗?”

我转过身。

“记得。我们熬了三个通宵,最后拿了二等奖。”

“二等奖,不是一等奖。”陈锋看着天花板,“因为我最后提交的代码有个bug,导致性能分扣了20%。你当时说,没关系,下次再来。但我记得,一等奖的奖金是五千,二等奖只有两千。我那时需要那五千块,我妹妹的学费还差五千。”

我怔住了。我从未知道这件事。

“最后我找辅导员预支了助学金,凑够了学费。”陈锋闭上眼睛,“但从那时起,我就知道,在这个世界上,第二名什么都不是。只有赢的人,才能得到想要的。输的人,连解释为什么输的资格都没有。”

“所以你就......”

“所以我不允许自己再输。”他睁开眼睛,看着我,眼神空洞,“元朗,你说得对,我错了,我认。但我不会道歉,因为道歉没有用。这个世界只看结果,不问过程。我输了,就这么简单。”

我站在门口,不知道该说什么。那些愤怒、失望、被背叛的痛楚,在这一刻,都化成了复杂的悲哀。我们都是被生活驱赶着前行的人,只是在岔路口,选择了不同的方向。

“好好休息。”最终,我只说出这三个字。

走出病房,林薇等在走廊里,手里拿着那个保温桶。

“他没事吧?”她担忧地问。

“身体需要静养,心里......”我摇摇头,“可能需要时间。”

“元朗,对不起,给你添麻烦了。”林薇低声说,“我会劝他,让他想开点。他父亲那边......医生说就这几天了,可能撑不过这个月。我怕他受不了这个打击......”

“需要帮忙的话,随时联系我。”

“谢谢。”她顿了顿,“还有,董事会的事,我也听说了。谢谢你没有......没有落井下石。陈锋他不懂,但我懂。你本来可以做得更绝的。”

我没有回答,只是点了点头,转身离开。

走廊很长,灯光苍白。我走到电梯口,按下下行键,在反光的金属门上看到自己的脸,疲惫,但眼神坚定。

电梯门开,里面站着周文婧。

“你怎么在这?”我惊讶。

“来看看陈锋,毕竟现在是合作伙伴。”她走出电梯,看了一眼病房方向,“也来看看你。聊得怎么样?”

“他不认为自己有错,至少,不认为有别的选择。”

“人总会为自己的选择找理由。”周文婧按了下行键,“董事会那边,我已经安排好了。接下来三个月,你的权限会完全开通,天城的团队也会全力配合。但元朗,你要小心。”

“小心什么?”

“狗急跳墙。”电梯门开,她走进去,转身看我,“陈锋不会轻易放弃。他还有牌没打完。”

“什么牌?”

“我不知道。但我知道,一个在绝境中的人,什么事都做得出来。”电梯门缓缓关闭,她最后说,“保护好你的工作,也保护好你的生活。”

电梯下行,我站在空荡的走廊里,回味她的话。

手机震动,是苏晓发来的消息:“妈熬了汤,让我给你送去。我现在在你公司楼下,保安不让进,说要有内部人接。”

我看看时间,下午三点。会议从早上八点开到现在,我还没吃午饭。

“我马上下来。”

走出医院大楼,四月的阳光很好,暖洋洋地洒在身上。但我心里,却像压着一块冰。

陈锋最后那个眼神,空洞,绝望,但深处似乎还藏着什么。那不是一个认输的人的眼神。

电梯里周文婧的话在耳边回响。

狗急跳墙。

他会做什么?

(第八章完,字数约5000)

第九章 暗流

试运行筹备期进入第二周。

项目组的气氛微妙而紧张。陈锋的两个亲信被调离核心岗位,负责边缘模块的测试文档。小赵被提拔为临时副主管,协助我管理团队。天城的五人技术小组入驻,在办公室东侧有了自己的工区,每天和我们一起工作,也一起加班。

“朗哥,3号模块的集成测试通过了,但有三个警告。”小赵拿着平板过来,眉头紧锁,“天城的人建议重构,但那样会延迟进度至少三天。”

我看了一眼警告内容,是代码规范问题,不影响功能,但影响可维护性。

“重构。”我说,“试运行阶段,可维护性比进度重要。告诉团队,这三天加班,公司按三倍工资算。”

“明白。”小赵犹豫了一下,“还有,陈总监那边......他今天出院了。李总安排他先在家休养两周,但他刚才给我发了邮件,问项目进展。”

“回复他,让他安心休养,工作的事暂时不用操心。”

“我已经这么说了,但他回复说,有些技术细节只有他知道,怕我们遗漏。”小赵把平板递过来,“你看,他列了七个问题,看起来都很专业。”

我看了一眼邮件。陈锋的确列出了七个潜在的技术风险点,其中有三个是真实存在的,我在上周已经解决。另外四个,要么是杞人忧天,要么是理解有误。

但邮件写得很巧妙,看起来完全是在为项目着想,担心交接不到位导致问题。

“他是想提醒我们,还是想显示自己的重要性?”小赵小声问。

“两者都有。”我放下平板,“回复他,感谢提醒,其中三个问题已解决,另外四个不构成风险,附上技术分析。抄送李总和天城团队。”

“这样会不会太......打脸?”

“技术问题,用技术回答。”我说,“如果他真心为项目好,会接受。如果不是,那正好让所有人看清。”

小赵点点头,去处理了。我继续看代码评审记录,但心思已经无法完全集中。

陈锋出院的时机很微妙。试运行环境搭建进入关键阶段,下周就要部署到实际路段。这个时候他“病愈回归”,想要重新介入,合情合理。

手机震动,是李建明:“来我办公室一趟。”

副总裁办公室里,除了李建明,还有人力资源总监张岚。她是个四十岁出头的干练女性,平时很少露面,一旦出现,通常意味着人事变动。

“坐。”李建明脸色凝重,“陈锋刚才给我打电话,要求提前返岗。医生说建议再休养两周,但他坚持,说项目需要他。”

“您的意见是?”我问。

“从项目角度,现在你负责得很顺利,天城那边评价也很高,没必要换人。”李建明顿了顿,“但从人情角度,陈锋父亲昨天凌晨去世了。”

我心里一沉。

“他今早处理的遗体,下午就给我打电话要求工作。他说,工作能让他暂时忘记痛苦。”李建明揉着太阳穴,“元朗,我知道这对你不公平。但你能不能......暂时分一些工作给他?让他有点事做,也算过渡。”

张岚补充道:“我们可以明确,你依然是技术总负责人,他只负责一些辅助性工作。等试运行稳定了,再重新安排他的岗位。这样既照顾了他的情绪,也不影响项目。”

我看着他们。李建明眼神里是真实的为难,张岚则是一贯的专业冷静。他们不是在偏袒陈锋,而是在处理一个棘手的员工心理问题。

“我可以分一些文档工作给他,”我说,“但核心模块的代码,他不能碰。天城也不会同意。”

“可以。”李建明松了口气,“那就这么定。另外,他父亲的葬礼在后天,你......要不要去?”

这是个棘手的问题。去,显得虚伪;不去,显得绝情。

“我会送花圈。”最终我说,“人就不去了,免得尴尬。”

“理解。”李建明点头,“那就这样。辛苦你了,元朗。这三个月是关键,熬过去,公司不会亏待你。”

离开办公室,我在走廊里站了一会儿。窗外阴云密布,要下雨了。

陈锋父亲去世了。那个需要每月三万二靶向药的老人,终究没有撑过去。我想起陈锋在病房里说“我妹妹的学费还差五千”时的表情,想起林薇红着眼眶说“他只有半年了”时的绝望。

成年人的崩溃,是静悄悄的。陈锋的崩溃,是偷走我的方案,是删掉安全代码,是在病床上还在算计如何保住位置。而现在,支撑他拼命往上爬的理由之一,消失了。

手机震动,是周文婧:“陈锋父亲的事,听说了?”

“嗯。”

“小心点。人在极度悲痛时,行为可能失控。”

“我会注意。”

“还有件事,”周文婧的语气严肃起来,“我们监控到,过去24小时内,有三拨不同的IP尝试攻击测试环境的防火墙。攻击手法很专业,不是普通黑客。”

我心头一紧:“天城的安全团队怎么说?”

“已经拦截,正在溯源。但有意思的是,攻击目标很明确,是针对自适应模块的漏洞测试接口。对方似乎知道我们修复了漏洞,想测试修复是否彻底。”

“陈锋知道这个接口吗?”

“知道。上周的测试报告里提到过。”周文婧停顿了一下,“但我没说是他。IP是海外的,通过多层代理,很难追踪到源头。我只是提醒你,加强内部权限管理。另外,天城的技术资料,不要放在公司服务器上,用我们提供的加密设备。”

“明白。”

挂断电话,我后背发凉。如果攻击是陈锋指使的,他想干什么?验证漏洞是否真的修复?还是想找到新的突破口?

回到办公室,我立即召集核心团队开会。

“从今天起,所有代码提交需要双重验证,我亲自审核才能合并。测试环境的访问权限收紧,只有我、小赵和天城的技术负责人有完整权限。所有对外接口的日志,每天检查三次。”

“朗哥,这么严格会影响效率......”有人小声说。

“安全第一。”我环视全场,“这个系统如果出问题,在座的各位都可能要负法律责任。不想坐牢的,就按我说的做。”

会议室里一片寂静。所有人都感受到了气氛的不同寻常。

“另外,”我补充,“任何外部人员询问项目细节,包括公司其他部门的同事,一律转给我来处理。没有我的允许,不准透露任何技术信息。”

“包括陈总监吗?”小赵问。

“包括所有人。”

会议结束,团队散去。小赵留下,关上门。

“朗哥,是不是出什么事了?”

“可能。”我没有隐瞒,“有人在试探我们的系统。陈锋父亲刚去世,他就急着要回来工作,我不放心。”

“你是说,陈总监他......”

“我什么都没说。”我打断他,“但防人之心不可无。小赵,你是副主管,帮我盯紧点。有任何异常,随时告诉我。”

“明白。”小赵郑重地点头。

接下来的两天,风平浪静。陈锋的葬礼在周三举行,我托人送了花圈。项目组有几个和他关系好的同事去了,回来说陈锋看起来很平静,但平静得吓人,一滴眼泪都没流。

周四下午,陈锋回来了。

他瘦了一大圈,西装穿在身上显得空荡,但头发梳得整齐,胡子刮得干净,除了脸色苍白,看起来和平时没什么两样。

“陈总监。”小赵起身打招呼,其他人也纷纷站起来。

“大家坐,继续工作。”陈锋摆手,声音有些沙哑,“我就是来看看,熟悉一下。元朗在吗?”

“在会议室,和天城的人开会。”

陈锋点点头,走向自己的办公室。门关上了,整个办公区的气氛为之一滞。

半小时后,我和天城的人开完会出来,看到陈锋站在白板前,上面写满了技术要点和问题。

“这几个地方,我觉得还可以优化。”他指着白板上的架构图,“元朗,有空聊聊吗?”

会议室里,只剩我们两人。

“节哀。”我说。

“谢谢。”陈锋在椅子上坐下,双手交叠放在桌面上,姿态放松,但指节发白,“花圈收到了,谢谢。”

沉默在空气中蔓延。窗外的雨终于下了,敲打着玻璃。

“李总应该和你说了,我暂时负责一些文档工作。”陈锋开口,“这是项目需求分析,我发现了几处不一致的地方,需要和天城确认。”

他推过来一份文件,上面用红笔做了密密麻麻的批注。我翻开,不得不承认,他看得很仔细,提出的问题也都在点上。

“我会转给天城。”我说。

“另外,关于试运行路段的选址,我有些建议。”他又递过来一份地图,上面标注了七个备选路口,“这七个路口的车流特征不同,如果要做对比测试,应该选择差异性大的。我建议换成这三个,数据更有代表性。”

我看了一眼,他的建议确实有道理。但问题是,路段的选址是上周就确定的,天城已经和交管部门协调好了,临时变更会打乱所有计划。

“我会考虑,但变更可能性不大。”

“好吧,你是负责人,你决定。”陈锋向后靠了靠,眼神在我脸上停留,“元朗,这几天我躺在床上想了很多。以前的事,是我对不起你。我不求你原谅,但希望至少,我们能专业地完成这个项目。这也是我父亲最后的心愿,他希望看到我做出点成绩。”

“我会专业地对待工作。”我说,“也希望你能。”

“当然。”他站起身,“那我先去整理文档。有什么需要我做的,随时吩咐。毕竟我现在是你的下属。”

他说“下属”两个字时,语气平静,但眼神深处有什么东西一闪而过。是屈辱,是不甘,还是别的什么,我看不清。

陈锋离开后,我坐在会议室里,看着窗外的大雨。他的表现太正常,太专业,太配合了。这反而让我不安。

以我对他的了解,他不是轻易认输的人。父亲的去世,职位的失去,连续的打击,应该让他更愤怒,更偏激。但现在,他平静得像一潭死水。

除非,他在谋划什么。

手机震动,是苏晓:“晚上能按时下班吗?妈做了你爱吃的红烧肉。”

“应该可以。雨大,你开车小心。”

“好。对了,今天有个奇怪的事。有个人来我们培训机构,说是想做企业培训咨询,但一直问你的情况。问我你在哪里工作,忙不忙,最近是不是经常加班什么的。”

我坐直身体:“男的女的?长什么样?”

“男的,四十多岁,戴着眼镜,说是某咨询公司的。但我查了他给的名片,那家公司根本不存在。我让保安请他离开了。怎么了,有问题吗?”

“可能是商业调查,没事。”我尽量让声音平静,“以后有陌生人问我的事,一律说不知道。”

“嗯,你也是,注意安全。最近你太累了,脸色不好。”

“知道了,爱你。”

挂断电话,我盯着窗外的雨幕。商业调查?不,更像是试探。有人在调查我,从我的家人下手。

是陈锋吗?他有这个能力,也有动机。但他刚失去父亲,会有精力做这些吗?

又或者,是别的什么人?

我打开电脑,登录公司内部系统,查看陈锋这几天的活动日志。他访问了一些历史项目文档,下载了公司组织架构图,还查询了董事会的会议记录权限。这些行为,可以用“熟悉工作”来解释,但结合起来看,总让人觉得不对劲。

特别是,他查询了天城建设与公司的合同细节,包括违约条款和退出机制。

他想干什么?

手机又响了,这次是周文婧:“元朗,出事了。”

“什么?”

“我们追踪到其中一个攻击IP,源头是本市的一家网吧。我们的人赶过去时,人已经走了,但调取监控,拍到了这个。”

她发来一张模糊的截图。画面里,一个穿着连帽衫的男人坐在电脑前,帽檐压得很低,看不清脸。但放在键盘上的那只手,手腕上戴着一块表。

我放大图片。那块表,是陈锋上个月在朋友圈晒过的,他升职时给自己的礼物。

“能确认吗?”我问,声音发干。

“表型一致,但需要更清晰的画面。我们已经联系警方,但需要时间。”周文婧说,“元朗,如果真是他,他的目的可能不只是测试漏洞。攻击测试环境是违法的,他应该知道。”

“他想找到系统的弱点,”我忽然明白了,“然后,在试运行时制造事故,证明我修复得不彻底,证明我不胜任。这样,他就有理由重新拿回控制权。”

“甚至更糟,”周文婧的声音冰冷,“如果事故严重,天城会撤资,项目会完蛋,而你会成为责任人。他得不到的,也不会让你得到。”

雨下得更大了,敲打着窗户,像是某种不祥的鼓点。

“我现在该怎么做?”

“什么也别做,像什么都没发生。”周文婧说,“我们已经加强了监控,他再有动作,我们会抓现行。但元朗,你要做好准备,这场战斗,可能比我们想象的更脏。”

电话挂断。我坐在会议室里,看着白板上陈锋写下的那些技术要点。他的字迹工整,逻辑清晰,每个建议都切中要害。

这样一个聪明、专业、有能力的人,为什么要把才能用在这样的事情上?

我想起他说的那句话:“在这个世界上,第二名什么都不是。只有赢的人,才能得到想要的。”

也许,在某个时刻,陈锋真的相信,不择手段是唯一的出路。而现在,他在这条路上走得太远,已经回不了头了。

窗外,一道闪电撕裂天空,紧接着是滚雷。

暴风雨,真的要来了。

(第九章完,字数约5000)

第十章 风暴前夕

接下来的三天,陈锋表现得很正常。

他每天准时上班,安静地坐在办公室里整理文档,偶尔提出一些技术建议,都在合理范围内。他不再要求接触核心代码,对权限限制也没有异议。他甚至主动请缨,负责与交管部门的日常联络——这是个需要耐心和沟通技巧,但不涉及技术核心的工作。

太正常了,正常得令人不安。

周五下午,试运行前的最后一次全组会议。所有模块集成完毕,测试全部通过,天城的技术负责人签字确认,可以按计划在下周一部署。

“这段时间大家辛苦了。”会议结束时,我站起来,“周末好好休息,周一,我们要打一场硬仗。”

人群散去,会议室里只剩下我、小赵,还有天城的技术负责人刘工。

“元工,有件事。”刘工关上门,压低声音,“我们监控到,昨晚又有一波攻击,这次的目标是部署脚本。”

“部署脚本?”我心头一紧。部署脚本是安装系统的自动化程序,如果被篡改,可能导致系统安装不全,或者埋下后门。

“已经被拦截了。但攻击者很狡猾,用的手法和之前不同,看起来像是两拨人。”刘工调出日志,“一波专业,一波业余。专业的那个,我们还在追踪。业余的那个......”他顿了顿,“IP是陈总监家里的。”

会议室里安静下来。窗外的夕阳斜照进来,在桌面上投下长长的光影。

“能确定是他本人吗?”小赵问。

“IP是他家的宽带,时间点是凌晨两点。但无法确定是他本人操作,还是别人用了他的网络。”刘工说,“不过,这个时间点,他在家的可能性很大。”

“他为什么这么做?”小赵不解,“如果只是想破坏,为什么不直接用专业手法?用自家IP,不是很容易被查到吗?”

“也许他想让我们查到。”我说。

两人看向我。

“如果他真的想搞破坏,不会用自家IP。但如果他想嫁祸给别人,或者,想制造混乱,让我们把注意力放在他身上,而忽略真正的威胁......”我看着日志上那些陌生的IP,“声东击西。”

刘工脸色一变:“你的意思是,还有另一组人在盯着我们?”

“可能。”我揉着太阳穴,连续加班让我的头痛得厉害,“天城那边有什么线索吗?”

“专业的攻击者,手法很老练,跳板用了十几个,最终源头可能在东欧。但攻击模式很熟悉,像是......”刘工犹豫了一下,“像是我们竞争对手的风格。”

“哪家竞争对手?”

“海川科技。他们也在做智慧交通,是我们的主要对手。但去年竞标这个项目时,他们输给了你们公司。”

海川科技。我想起来了。那是一家以“狼性文化”著称的公司,为达目的不择手段。去年竞标时,他们曾爆出贿赂丑闻,但最后不了了之。

如果是他们,动机就充分了。破坏我们的项目,让天城撤资,他们就有机会重新竞标。

“但陈锋和他们有联系吗?”小赵问。

“不知道。”我看向窗外,陈锋的办公室还亮着灯,“但如果有,事情就复杂了。”

手机震动,是周文婧:“来我公司一趟,紧急。”

天城建设的办公楼在市中心的黄金地段,顶层会议室可以俯瞰整个城市。我到的时候,周文婧和两个西装革履的男人正在等我。其中一个是天城的法务总监,另一个是安全主管。

“元先生,坐。”周文婧神色严肃,“有件事必须让你知道。我们查到,陈锋的个人账户,在过去一个月内,有三笔不明来源的汇款,总计八十万。”

八十万。对于一个需要支付巨额医疗费的家庭来说,这是一笔救命钱。

“汇款方是?”我问。

“通过海外账户中转,很难追踪。但我们调取了他的通讯记录,发现他最近频繁联系一个号码,机主是海川科技的一个部门经理。”安全主管推过来一份通话记录,“时间点很巧合,都在攻击事件发生前后。”

“所以,陈锋可能和海川有勾结?”我听到自己的声音很冷静,尽管内心已经翻江倒海。

“不排除这个可能。”法务总监开口,“但我们没有直接证据。汇款可以解释为借款,通话可以解释为商务往来。即使报警,警方也很难立案。”

“你们告诉我这些,是希望我做什么?”

“我们希望你能配合我们,设一个局。”周文婧直视我的眼睛,“下周一部署时,我们会故意留一个‘后门’,一个看起来很隐蔽,但实际上完全在我们的监控之下的漏洞。如果陈锋真的和海川有联系,他会把这个漏洞告诉他们。届时,我们就能人赃并获。”

“钓鱼执法?”

“是保护项目。”周文婧纠正,“三亿的投资,七个路口的公共安全,我们不能冒险。元朗,陈锋已经走得太远了。如果他真的为了一己私利,出卖公司,出卖这个项目,那他就不仅仅是你的对手,而是罪犯。”

我看着桌上的证据:通话记录,汇款记录,攻击日志。这些冰冷的数字和文字,勾勒出一个我不认识的陈锋——一个为达目的,可以背叛一切的人。

“我需要考虑。”我说。

“你没有时间考虑。”安全主管皱眉,“下周一就部署了。如果我们不提前防范,万一系统真的被攻击,后果不堪设想。”

“如果这是一个陷阱呢?”我忽然说,“如果这些证据,是真正的内鬼故意留下,误导我们怀疑陈锋呢?”

会议室里安静下来。

“什么意思?”周文婧问。

“陈锋不傻。如果他真的和海川勾结,会用自己的账户收款?会用自家IP攻击?会留下这么明显的通话记录?”我站起来,走到窗边,看着脚下的城市,“但如果有人想嫁祸给他,这些证据就太完美了。完美得像是精心设计的剧本。”

“谁会这么做?”

“不知道。也许是海川,也许是我们公司内部的人,也许......”我转过身,“是你刚才说的,真正的内鬼。”

周文婧的脸色变了。她和另外两人交换了眼神。

“你的推测有道理,但风险太大。”法务总监说,“我们赌不起。万一陈锋真的是内鬼,而我们没有防范,项目出了事,谁来负责?”

“我来。”我说。

三个人都愣住了。

“我是技术总负责人,如果出事,我负全责。”我走回桌前,“但我也要求,在我确认之前,不要采取任何针对陈锋的行动。包括你们说的‘钓鱼’计划。”

“你打算怎么确认?”周文婧问。

“给我一个周末的时间。”

离开天城大厦,夜幕已经降临。城市的灯光亮起,车流如织。我在路边站了很久,直到手机再次响起。

是苏晓:“你还在公司吗?妈让我们回去吃饭,她炖了你最爱的鸡汤。”

“我马上回来。”我说,“晓晓,如果......如果有一天,我不得不做一件可能会伤害到别人的事,但那是为了保护更多人,你会支持我吗?”

电话那头沉默了一会儿。

“元朗,”苏晓的声音温柔而坚定,“我知道你。你永远不会主动伤害别人,除非别无选择。如果真的到了那一天,我会支持你,因为我知道,你一定已经试过所有其他路,都走不通了。”

眼眶发热。我抬起头,看着夜空,深深吸了一口气。

“谢谢你,晓晓。谢谢你相信我。”

“我一直都相信你。早点回来,汤要凉了。”

挂断电话,我拨通了另一个号码。铃声响了很久,就在我以为不会有人接时,那边接通了。

“喂?”陈锋的声音,带着疲惫。

“陈锋,是我。我想和你谈谈。”

第十一章 真相与抉择

陈锋选择的见面地点,是大学时我们常去的那家露天烧烤摊。十年过去了,摊主没换,只是头发白了大半。看到我们,他咧嘴一笑:“哟,稀客!老规矩?”

“老规矩。”我说。

羊肉串、烤茄子、韭菜、两瓶啤酒。和十年前一样,只是我们都老了。

陈锋先开口,声音很轻:“我父亲昨天火化了。骨灰暂时寄存在殡仪馆,等选好墓地再下葬。”

“节哀。”

“没什么好哀的,”他拿起酒瓶,灌了一大口,“对他来说,是解脱。每个月三万二的药,打了也只能多活几天,疼得整夜睡不着。最后那几天,他求我拔管子,我说不行,不孝。但我心里知道,我是在用他的痛苦,换我所谓的‘孝心’。”

烟雾袅袅上升,在昏黄的灯泡下盘旋。隔壁桌的大学生在大声说笑,青春的声音刺耳又鲜活。

“元朗,你知道最讽刺的是什么吗?”陈锋看着手里的酒瓶,“他走的那天,我刚收到天城的第一笔款,四十万。我拿着卡冲到病房,想告诉他,有钱了,可以换更好的药了。但他已经没了呼吸。护士说,他是在凌晨三点走的,很平静。”

他的手在抖:“你看,我偷了你的方案,背叛了朋友,做了那么多脏事,终于拿到钱了。但我想救的人,没等到。”

羊肉串在炭火上滋滋作响,油滴下去,腾起一小簇火焰。

“那八十万,是怎么回事?”我问。

陈锋猛地抬头,眼神锐利:“你怎么知道?”

“天城查到了你的账户,三笔不明汇款,总计八十万。他们怀疑你和海川勾结,出卖项目。”

他愣住了,然后笑了,笑声苦涩:“原来如此。原来他们是这样想的。”

“不是吗?”

“是,也不是。”陈锋放下酒瓶,双手交握在油腻的桌面上,“钱是海川给的,但不是卖项目的钱。是他们挖我的定金。”

“挖你?”

“一个月前,海川的人联系我,说他们缺一个技术总监,年薪比我当时高百分之五十,签字费八十万。我拒绝了,因为我觉得咱们公司的项目更有前景,我马上要升总监了。”他顿了顿,“但他们很执着,说钱先打给我,让我考虑。如果我同意,再给一百二十万。如果不同意,这八十万就当交个朋友,不用还。”

“你收了?”

“收了。”陈锋坦然承认,“因为我需要钱。我爸的药断了三天了,医院在催费。我想,先拿着救急,等项目成了,我再还给他们。但后来......后来我偷了你的方案,升了总监,就更不可能去海川了。这笔钱,就成了烫手山芋。”

“所以你没有把项目信息卖给他们?”

“没有。”他看着我的眼睛,“元朗,我承认我偷了你的方案,承认我做了危险的改动,承认我是个小人。但我没有背叛公司,没有出卖项目。那是我最后的底线。”

“那攻击测试环境的事呢?IP是你家的。”

“那不是我。”陈锋的表情忽然变得愤怒,“我查了,是我表弟。他上个月来城里找工作,住在我家。那天晚上我守夜回来,累得直接睡了,他用我的电脑打游戏,后来承认收了别人五百块钱,按照邮件指示攻击了一个网站。他不知道那是什么,只知道点几个链接,输几行代码。”

“谁给他钱?”

“不知道,邮件是匿名的,钱是微信转账,账户是买来的。”陈锋握紧拳头,“我怀疑是海川。他们想逼我,如果我不去他们公司,就毁了我。”

炭火噼啪作响。摊主把烤好的串端上来,看看我们凝重的表情,识趣地没说话,转身走了。

“所以你父亲去世,你需要钱,海川趁机挖你,还设计陷害你,让你在我们这里待不下去?”我梳理着线索。

“大概是这么个局。”陈锋苦笑,“但我没法证明。通话记录是真的,汇款是真的,攻击IP也是真的。我说什么,都没人信。”

“那你为什么不解释?”

“解释什么?说我虽然收了竞争对手的钱,但没有背叛?说我虽然偷了朋友的方案,但没有出卖公司?”他摇头,“元朗,有些事,一旦做了,就洗不白了。偷方案是真的,危险改动是真的,收了八十万也是真的。至于有没有走最后那一步,重要吗?在别人眼里,我已经是叛徒了。”

我沉默地吃着羊肉串,味道和十年前一样,孜然和辣椒的香气,混合着炭火的焦香。但我们都回不去了。

“你今天找我,是来确认我是不是内鬼?”陈锋问。

“是。”

“现在确认了?”

“没有完全确认,”我实话实说,“你的解释说得通,但也可以是编的。我需要证据。”

“我没有证据。”陈锋说,“唯一的证据,就是我从来没把核心代码给过任何人。但这话,说了等于没说。”

他喝光了一瓶啤酒,又开了一瓶:“元朗,如果你是我,你会怎么做?家里需要钱,父亲要死了,工作上被人算计,全世界都怀疑你。你会怎么做?”

我想了很久。

“我不知道。”最终我说,“我不是你,我没经历过你经历的事。但我知道,如果我偷了朋友的方案,我会道歉。如果我做了危险的改动,我会承认。如果我收了不该收的钱,我会退回去。然后承担后果,无论多严重。”

陈锋笑了,眼里有泪光:“你还是这么......这么天真。但你知道吗?我羡慕你的天真。因为这世界上,不是所有人都有资格天真的。有些人,从出生开始,就在泥潭里挣扎,不择手段,只是为了不沉下去。”

他站起来,从钱包里掏出一张卡,放在桌上:“这里面是八十万,我一分没动。密码是我爸的生日。你帮我还给海川,或者交给公司,随便。我不求清白,只求问心无愧。”

“你要去哪?”

“不知道。也许离开这个城市,换个地方重新开始。”他看着远处的灯火,“元朗,这个项目,你好好做。它真的是个好方案,能帮到很多人。别让我毁了它。”

他转身要走,我叫住他。

“等等。”我从包里拿出一份文件,“这是天城准备的‘钓鱼’计划。他们准备在部署时留一个后门,如果你真的和海川勾结,就会上钩。”

陈锋接过文件,快速浏览,脸色越来越白。

“如果你现在走了,他们会认为你做贼心虚。如果你留下,配合他们,证明你的清白......”

“怎么证明?”他抬头,眼神锐利,“配合他们演戏,然后等海川上钩?如果他们不上钩呢?如果他们根本就没打算行动,只是等着看戏呢?元朗,这是死局。我留下,要么被当成内鬼,要么被当成诱饵。无论哪种,我都完了。”

“还有一种可能。”我说,“你留下,我们演一场戏,但不是给天城看,是给真正的内鬼看。”

“什么意思?”

我把我的计划告诉他。很冒险,很大胆,但如果成功,不仅能揪出真正的内鬼,还能保住项目,也许,还能给陈锋一个重新开始的机会。

他听完,沉默了很久。

“你为什么要帮我?”最终他问,“我偷了你的方案,差点毁了你的职业生涯,也差点毁了你的项目。你应该恨我,应该看着我完蛋。”

“我是恨你。”我承认,“每次想到那三年的心血被你轻易拿走,想到你在会议室里用我的方案升职,我都恨。但恨不能解决问题,只能制造更多仇恨。”

我看着他,这个认识了十年的、曾经的朋友、现在的敌人、也许未来什么都不是的人。

“而且,我相信你刚才说的话。关于你父亲,关于那八十万,关于你最后的底线。也许我太天真,但我想赌一次。赌我认识的陈锋,还没有完全死掉。”

陈锋站在那里,夜风吹动他的头发。路灯下,他的影子拉得很长,像个孤独的、快要破碎的剪影。

“好。”他终于说,“我陪你赌。但如果输了......”

“输了,我们一起负责。”我说。

他笑了,真正的笑,虽然疲惫,但真实:“元朗,你知道吗?有时候,我真希望我是你。但有时候,我又庆幸我不是你。因为如果我是你,面对我这样的人,可能会心软,可能会被坑得很惨。”

“已经差点被坑得很惨了。”

我们都笑了,笑声在夜风里飘散。隔壁桌的大学生好奇地看过来,不明白这两个中年男人为什么笑得这么奇怪。

“那么,”陈锋伸出手,“合作愉快?”

我握住他的手。这一次,他的手很稳,很用力。

“合作愉快。”

那晚,我们聊到很晚。关于大学时的梦想,关于刚工作时的雄心,关于这些年的得失。我们不谈背叛,不谈伤害,只是像两个老同学,在深夜的烧烤摊,回忆那些已经远去的时光。

离开时,摊主正在收摊。他看着我们,忽然说:“你俩啊,十年了,还是老样子。一个想太多,一个太认真。但都是好人。”

“好人?”陈锋苦笑,“大爷,我可不是好人。”

“是不是好人,自己说了不算。”摊主擦着桌子,头也不抬,“但这么多年,我在这儿见过太多人。喝醉了哭的,喝醉了笑的,吹牛的,抱怨的。你俩啊,是少数喝完酒还清醒的。清醒的人,再坏也坏不到哪儿去。”

他抬起头,浑浊的眼睛看着我们:“走吧,明天太阳照常升起。日子还得过。”

是啊,日子还得过。

陈锋把那张八十万的卡给了我。我连夜联系了周文婧,把情况和计划告诉她。她沉默了很久,最终说:“元朗,你确定要这么做?风险很大。”

“确定。”

“好。天城会配合。但如果出问题,你要负全责。”

“我负。”

周日,一整天,我和陈锋待在办公室,完善计划。我们需要在周一的部署中,既完成系统安装,又设下陷阱,还要保证整个过程不引起真正的内鬼怀疑。

“这里,”陈锋指着架构图,“我们可以在这里加一个蜜罐,看起来像是自适应模块的调试接口,实际上是监控程序。任何人访问这个接口,都会被记录。”

“内鬼不一定会自己动手,可能会远程操控。”

“所以我们还要在服务器上做手脚。”陈锋快速敲击键盘,“加一个隐蔽的日志模块,记录所有异常访问。如果内鬼通过漏洞进来,我们可以追踪到他的跳板,甚至可能抓到真实IP。”

他工作时的样子,是我熟悉的那个陈锋——专注,高效,思维缜密。只是眼下的黑眼圈和消瘦的脸颊,提醒着我,这个人刚刚失去父亲,正处于人生最黑暗的时刻。

下午五点,苏晓送来晚饭。看到我和陈锋一起工作,她愣了一下,但什么也没问,只是把饭菜摆好。

“嫂子,”陈锋站起来,深深鞠躬,“对不起。以前的事,我真诚道歉。”

苏晓看着他,沉默了几秒,说:“陈锋,我不原谅你。因为你伤害了元朗,伤害了我们的信任。但如果你真的在弥补,在做对的事,我尊重元朗的选择。”

“谢谢。”陈锋的声音很低。

“吃饭吧,凉了就不好吃了。”苏晓转身离开,走到门口,回头说,“元朗,无论你做什么决定,我都支持你。但你要保证,平平安安回家。”

“我保证。”

门轻轻关上。办公室里,我和陈锋相对无言,安静地吃饭。

“你有个好妻子。”陈锋说。

“我知道。”

饭后,我们继续工作。晚上十点,一切准备就绪。蜜罐部署好了,监控程序隐藏完毕,所有陷阱都设下了。只等明天,鱼儿上钩。

“如果他不上钩呢?”陈锋问。

“那说明我们的怀疑错了,或者他比我们想象的更谨慎。”我合上电脑,“但无论如何,系统会正常部署。这是最重要的。”

陈锋点点头,看着窗外。城市的夜景很美,万家灯火,每一盏灯下都有一个故事。

“元朗,如果明天一切顺利,揪出了内鬼,项目成功了,”他顿了顿,“之后,我打算自首。”

我猛地抬头。

“不是去公安局,是向公司自首。承认我偷了你的方案,承认我做了危险的改动,承担所有后果。”他平静地说,“这是我欠你的,也是我欠我自己的。我不能一辈子背着这个包袱。”

“公司可能会开除你,行业里可能不会有你的位置。”

“我知道。但至少,我能睡得着觉。”他笑了笑,“而且,我查了,海川那八十万,如果定性为商业贿赂,可能要坐牢。但如果我主动交代,退还赃款,配合调查,也许能从轻。我想试试,重新开始,从最底层开始。”

我看着这个熟悉又陌生的人。十年前,我们在毕业典礼上宣誓,要成为改变世界的人。十年后,我们在深夜的办公室里,讨论如何为过去的错误付出代价。

“无论你做什么决定,我都尊重。”最终我说。

“谢谢。”陈锋站起来,收拾东西,“那我先走了。明天见。”

“明天见。”

他走到门口,又停住:“元朗,无论明天发生什么,无论结果如何,谢谢你今天愿意听我解释,愿意给我这个机会。”

“不客气。”

门关上了。我独自坐在办公室里,看着屏幕上密密麻麻的代码。那是我三年的心血,差点被毁掉,现在又回到了我手里。

手机震动,是周文婧发来的消息:“一切准备就绪。明天,祝你好运。”

我回复:“谢谢。无论如何,保护好系统。”

“一定。”

窗外,夜色深沉。明天,将是一场硬仗。但这一次,我不再是孤军奋战。

(第十一章完,字数约5000)

第十二章 黎明部署

周一,清晨五点,天还没亮。

七个试点路口已经完成交通管制,工程车、技术人员、交管人员各就各位。指挥中心设在天城建设的会议室,大屏幕上分割出八个画面——七个路口的实时监控,以及系统部署状态。

我站在指挥台前,戴着耳麦,面前是四块显示屏。陈锋站在我旁边,负责协调现场团队。周文婧和李建明坐在后排,表情严肃。天城的刘工带着安全团队,在隔壁房间监控网络动态。

“一号点准备完毕。”

“二号点准备完毕。”

七个点位依次汇报。耳麦里传来的声音紧绷而清晰,像战前最后的确认。

“开始部署。”我说。

命令下达,七个点位同时行动。工程人员打开信号控制箱,技术人员接入设备,部署脚本开始运行。大屏幕上,进度条缓慢前进。

时间一分一秒过去。指挥中心里静得能听到呼吸声。陈锋紧盯着屏幕,额头上渗出细密的汗珠。我知道他在担心什么——如果内鬼选择在这个时候行动,如果系统真的被攻击,如果部署失败......

“一号点进度50%。”

“三号点进度45%,网络波动,自动重试中。”

“五号点进度60%,正常。”

汇报声此起彼伏。一切看起来都很顺利。但太顺利了,反而让人不安。

“注意,检测到异常访问。”隔壁房间传来刘工的声音,“来自境外IP,尝试连接蜜罐接口。”

来了。

“放他进来,”我沉声说,“但限制权限,只给假数据。”

“明白。”

陈锋调出蜜罐的监控画面。一个虚拟的调试界面被打开,攻击者正在尝试输入指令。但所有指令都被重定向到一个模拟环境,真实系统毫发无损。

“他在尝试获取系统权限,”刘工汇报,“手法专业,跳板用了七层,源头在......立陶宛?”

“继续监控,不要打草惊蛇。”

部署进度继续推进。六个点位已经完成80%,只有三号点因为网络问题稍慢,但也在可控范围内。

“攻击者获取了‘管理员权限’,”刘工的声音带着一丝兴奋,“他在浏览假的管理界面。现在在尝试修改信号配时参数......他在输入指令,想要在早高峰时,将所有路口的绿灯时间缩短到10秒。”

10秒绿灯。在车流量最大的早高峰,这意味着每个路口只能通过三四辆车,整个区域的交通会瞬间瘫痪。

“记录所有操作,准备溯源。”周文婧站起来,走到我身边,“能抓到真实IP吗?”

“正在追踪,但需要时间。他在用TOR网络,很难......”

“等等!”陈锋忽然说,“他停止了操作,在清理痕迹。他要跑。”

“切断他的退路,”我下令,“启动反向追踪程序。”

“正在启动......追踪到第五层跳板......第六层......锁定目标,IP位于本市!经纬度正在计算......”

大屏幕上弹出一张地图,一个红点在地图上闪烁,位置快速定位。

“新科大厦,17层,1706室。”刘工报出地址。

新科大厦,离我们公司只有三个街区。那是海川科技在本市的办事处。

“报警。”周文婧简洁地说。

李建明已经拿起电话。两分钟后,警方确认出警。

而部署现场,进度条走到了终点。

“一号点部署完成,系统启动正常。”

“二号点完成......”

七点整,七个点位全部部署完毕。大屏幕上,七个路口的信号灯开始按照新系统运行。早高峰的车流缓缓通过,系统自适应调整着信号时长,车流平稳,无拥堵,无异常。

指挥中心里爆发出低低的欢呼。陈锋瘫坐在椅子上,长长地舒了口气。李建明擦着额头上的汗,对周文婧露出笑容。

但我没有放松。因为耳麦里传来最后一个点位的汇报:“三号点系统启动正常,但......检测到异常进程,正在占用系统资源。”

“什么进程?”我问。

“不清楚,不是我们的程序。它在后台运行,试图连接外部服务器......”

“切断外部连接,隔离那个进程。”我快速下令,“陈锋,检查三号点的部署日志,看有没有异常。”

陈锋调出日志,快速浏览。突然,他的脸色变了。

“部署脚本被篡改了。有人加了一段恶意代码,会在系统运行两小时后触发,将所有信号灯设为常绿。”

常绿。听起来是好事,但实际上更危险。如果所有方向都是绿灯,路口会变成碰撞现场。

“能清除吗?”

“可以,但需要重启系统。现在早高峰,重启会导致交通中断至少十分钟。”

“十分钟......”我计算着风险。早高峰的十分钟,足以让七个路口堵死。

“有没有办法不重启,直接清除?”周文婧问。

陈锋的手指在键盘上飞舞:“我在试......找到了,恶意代码被加密了,但加密密钥......密钥是部署时间的哈希值。今天是4月29日,部署时间是6:30,哈希值是......”

他快速计算,然后输入指令。屏幕上,恶意进程停止了。

“清除了。”陈锋的声音有些颤抖,“但篡改者很狡猾,他在部署脚本里还埋了另一个后门,如果第一个被清除,第二个会在中午触发。”

“能一并清除吗?”

“可以,但需要时间。现在最重要的是,找到是谁篡改了脚本。”陈锋调出三号点的访问记录,“昨晚只有一个人有权限修改部署脚本——现场技术员,王强。”

王强,项目组的老员工,平时沉默寡言,技术扎实。他是陈锋提拔的人,但在陈锋“失势”后,很快转向支持我。至少表面上是这样。

“联系三号点,控制住王强,但不要打草惊蛇。”我对现场指挥说。

“明白。”

十分钟后,耳麦里传来回复:“王强不见了。他说去上厕所,已经二十分钟没回来。我们在卫生间找到了他的工牌和手机,人跑了。”

跑了。做贼心虚。

“调取现场监控,看他往哪个方向去了。”周文婧冷静地说,“联系警方,增加一个追捕目标。”

警方那边传来消息,已经到达新科大厦1706室,但里面空无一人,只有还在运行的电脑,和没来得及关掉的远程连接界面。人已经跑了,但电脑没带走,里面存有大量证据。

“至少确认了,攻击来自海川。”李建明说,“但王强为什么帮他们?他图什么?”

“查他的账户。”我说。

天城的安全团队效率极高。五分钟后,刘工汇报:“王强的账户,过去半年有六笔不明汇款,总计一百二十万。汇款方是同一个海外账户,和海川给陈总监汇款的那个账户,是同一个开户行。”

一切都连起来了。海川收买了王强,作为内应。他们原本可能想收买陈锋,但陈锋收了钱却没办事,于是他们启动了备用计划——用陈锋作为烟雾弹,掩护真正的内鬼王强。

而陈锋,差点成了替罪羊。

“所以攻击测试环境,用陈总监家的IP,是王强干的?”小赵问。

“应该是。他住陈锋对门,有他家的WiFi密码。趁陈锋不在,用他的网络攻击,嫁祸给他。”刘工分析。

“那今天早上的攻击呢?海川的人亲自出手,不怕暴露吗?”

“他们可能没想到我们能这么快追踪到真实IP。”周文婧说,“或者,他们以为有王强做内应,可以随时切断追踪。但王强跑了,他们没了内应,就暴露了。”

指挥中心里,众人沉默。真相大白,但代价是,内鬼跑了,竞争对手虽然暴露,但人也跑了,证据能定多少罪,还不好说。

而系统虽然部署成功,但被埋了后门,需要彻底检查。

“各位,”我站起来,“现在最重要的是确保系统安全。我建议,立即组织团队,全面检查所有代码,清除所有可能的恶意程序。同时,七个点位增派人员现场值守,一旦有异常,立即切换回手动模式。”

“我同意。”周文婧说,“天城的团队会全力配合。李总?”

“我没意见。”李建明点头,“陈锋,你负责带团队检查代码。元朗,你统筹全局。”

“是。”

陈锋看着我,眼神复杂。我知道他在想什么——如果没有今天的计划,没有那个蜜罐,没有反向追踪,他现在可能已经被当成内鬼抓起来了。而真正的内鬼王强,可能会继续潜伏,在某个关键时刻,毁掉整个系统。

“去吧。”我对他说,“用你的能力,弥补你的错误。”

“我会的。”陈锋重重点头,转身走向技术团队。

部署后的第一小时,系统运行平稳。七个路口的通行效率提升了15%,早高峰的拥堵时间缩短了二十分钟。交管部门发来感谢信,媒体已经聚集在指挥中心外,等待采访。

但我们都高兴不起来。王强还没抓到,海川的人跑了,系统里可能还有没发现的隐患。

上午十点,警方传来消息:在王强的住处搜到了大量现金,以及一个加密的硬盘。硬盘正在破解,但需要时间。王强的手机定位最后出现在长途汽车站,他可能已经离开本市。

“继续追捕。”周文婧对电话说,“海川那边,我们已经联系了他们的总部,对方表示会配合调查,但我不抱希望。”

商场如战场,输了就认,但想让他们付出代价,难。

中午,系统运行平稳。陈锋带着团队,清除了三号点的所有后门,其他点位也完成了全面检查,确认安全。

“暂时没问题了。”陈锋向我汇报,眼睛里满是血丝,但眼神清明,“但我建议,未来一周,每天早晚高峰都要有人现场值守。我会排班。”

“你排第一班?”

“是。这是我欠的。”

我没有反对。

下午,记者招待会。李建明和周文婧作为双方代表,宣布智慧交通系统一期试运行成功。我在后台,看着屏幕上滚动的新闻标题,心里五味杂陈。

“不想去露个脸?”苏晓不知何时来到我身边,递给我一杯咖啡。

“不想。”我接过咖啡,“功劳是大家的,风险也是大家的。我一个人露脸,不合适。”

“你总是这样。”苏晓握住我的手,“但这次,你做得很好。不只是技术上,更是做人上。”

“我差点就误会了陈锋,差点就成了帮凶。”

“但你给了他解释的机会,也给了他弥补的机会。”苏晓轻声说,“这比单纯的报复,需要更大的勇气。”

也许吧。

记者会结束,人群散去。我走到露台上,陈锋在那里抽烟——我认识他十年,从不知道他抽烟。

“戒了很久,今天又抽上了。”他苦笑,递给我一支,我摇头。

“系统暂时稳定了。但海川不会善罢甘休,王强还没抓到,后面还有硬仗。”

“我知道。”陈锋吐出一口烟雾,“我已经向李总提交了辞职信。等这波稳定了,我就走。”

“没必要......”

“有必要。”他打断我,“元朗,我不是在赌气,也不是在赎罪。我只是觉得,我配不上这里了。偷来的东西,终究要还。骗来的位置,坐不安稳。”

他看着远处的城市:“我想找个地方,从零开始。写代码,做项目,不争不抢。也许去个小公司,也许自己创业。但无论如何,我想重新活一次,像个人一样活着。”

我沉默。这是他自己的路,我没资格劝。

“那八十万,我已经退还给海川了。通过天城转交的,有记录。”陈锋说,“另外,我把这些年存的钱,加上我家的房子卖了,凑了两百万,成立了一个基金,帮助那些家境困难、需要支付巨额医疗费的程序员。名字还没想好,你帮我想一个?”

我看着这个曾经的朋友,现在的陌生人,也许未来永远不会再见的人。

“叫‘黎明’吧。”我说,“无论夜多长,天总会亮的。”

陈锋愣了一下,然后笑了,眼里有泪光。

“黎明。好,就叫黎明。”

他把烟摁灭,转身面对我,深深鞠了一躬。

“元朗,谢谢你。谢谢你在最后,还愿意拉我一把。这辈子,我欠你的,还不清了。下辈子,如果有下辈子,我还你。”

“不用下辈子。”我扶起他,“这辈子,好好活着,就是还我了。”

他点头,转身离开。背影在夕阳下拉得很长,孤独,但笔直。

我站在露台上,看着这个城市。车流如织,信号灯闪烁,系统在默默工作,让这座城市运行得更顺畅。那里面有我的心血,也有陈锋的救赎,有王强的背叛,有海川的算计,有天城的坚持,有无数人的汗水和泪水。

很复杂,不完美,但真实。就像生活本身。

苏晓走过来,从背后抱住我。

“回家了?”

“嗯,回家了。”

夕阳西下,把整个城市染成金色。明天太阳照常升起,日子还要继续。但至少今晚,我可以牵着她的手,平平安安回家。

(第十二章,终章,字数约5000)

尾声

三个月后。

智慧交通系统试运行成功,七个路口的平均通行效率提升22%,事故率下降18%。天城建设决定全面推广,二期工程覆盖三十个路口,预算十亿。

我被正式任命为技术总监,但拒绝了。我选择成立自己的技术咨询公司,专门做智慧城市系统的安全审计。天城是我的第一个客户,周文婧亲自签的合同。

“你确定不留下?”签约那天,她问我。

“确定。”我说,“我想用自己的方式,做点事。”

“也好。”她微笑,“保持联系。有困难,找我。”

陈锋离开了这个城市。听说他去了西南的一个小城,在一家初创公司做技术主管,工资只有之前的三分之一,但他在朋友圈发的照片,笑容是真的。

“黎明基金”已经帮助了七个家庭。陈锋每周会给我发邮件,汇报进展,从不提自己,只提那些被帮助的人。他说,这是他这辈子,做得最对的一件事。

王强在边境被抓,试图偷渡出境。审讯中,他交代了所有罪行——海川给了他二百万,让他在系统中埋后门,制造事故,逼天城撤资。警方顺藤摸瓜,查到了海川的更多违法行为,案件还在审理中。

李建明升任集团副总裁,主管新技术板块。他邀请我回去当顾问,我答应了,但只接项目,不入职。

生活回到了正轨。我和苏晓计划要孩子,周末去看房子,想换个大一点的。我妈依然每周炖汤,说我瘦了,要补补。

一个普通的周六下午,我在书房整理旧物。在一个纸箱里,翻出了大学时的照片。编程大赛的合影,我和陈锋站在一起,举着二等奖的奖杯,笑得没心没肺。

照片背面,有我们当年写的字:“兄弟同心,其利断金。”

十年过去了。同心变成了离心,兄弟变成了陌路。但至少最后,我们没有变成敌人。

手机响了,是陌生号码。我接听。

“元朗,是我。”陈锋的声音,听起来轻松了很多。

“陈锋?怎么换号了?”

“新办的,本地号。”他说,“我下个月结婚,你来吗?”

我愣住了。

“对方是基金帮助过的一个女孩的姐姐,护士,人很好。”陈锋的声音里带着笑意,“不豪华,就请几个朋友,简单的仪式。你来吗?”

我看着照片上那两个年轻的、对未来充满憧憬的脸。

“来。”我说,“一定来。”

“谢谢。地址我发你。还有......对不起,和谢谢。”

电话挂断。我坐在书房里,夕阳透过窗户,在照片上投下温暖的光。

十年青春,三年心血,一场背叛,一次救赎。所有这些,最后都沉淀成两个字:生活。

它不完美,充满遗憾,但只要你还在往前走,天,总会亮的。

窗外,华灯初上。城市的脉搏在智慧系统的调度下平稳跳动,车流如河,灯光如星。而我和我爱的人们,在这星河之中,继续着各自的故事,平凡,真实,但珍贵。

这就够了。

(全文完)

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

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-05-02 09:34:30
U.2硬盘之死:一个致命缺陷如何杀死SATA接班人

U.2硬盘之死:一个致命缺陷如何杀死SATA接班人

灰度测试中
2026-05-01 00:13:05
承德288件国宝被调包,慈善家李春平脱不了关系,到底怎么回事?

承德288件国宝被调包,慈善家李春平脱不了关系,到底怎么回事?

凡人侃史
2026-04-29 23:41:45
拒绝谴责争议主播被骂,穆斯林候选人震动密歇根,民调反追平对手

拒绝谴责争议主播被骂,穆斯林候选人震动密歇根,民调反追平对手

李覴在北漂
2026-05-02 10:59:49
回国后我才敢说:印尼是我去过的所有东南亚国家中,最被低估的

回国后我才敢说:印尼是我去过的所有东南亚国家中,最被低估的

千秋文化
2026-04-28 20:20:16
破案!郑智吃红牌原因曝光,恐遭足协重罚

破案!郑智吃红牌原因曝光,恐遭足协重罚

何老师呀
2026-05-01 21:46:50
苏提达结束瑞典行程!穿黑裙把蝴蝶胸针别在腰上,细节尽显高级感

苏提达结束瑞典行程!穿黑裙把蝴蝶胸针别在腰上,细节尽显高级感

八八尚语
2026-05-02 10:57:53
二八事件再反转!杜新枝儿媳内讧互撕,利益纠葛下原形毕露

二八事件再反转!杜新枝儿媳内讧互撕,利益纠葛下原形毕露

魔都姐姐杂谈
2026-05-01 13:33:45
于东来再次确认:今年开始,胖东来落实像学校一样的性质,力争工作三年内的员工能获得毕业综合技术能力,发公司认可的毕业证、技术等级证

于东来再次确认:今年开始,胖东来落实像学校一样的性质,力争工作三年内的员工能获得毕业综合技术能力,发公司认可的毕业证、技术等级证

极目新闻
2026-05-01 12:26:46
“靠老公养,月薪三万,不用带娃”,两年前全网羡慕的那个全职主妇,现状让人唏嘘不已

“靠老公养,月薪三万,不用带娃”,两年前全网羡慕的那个全职主妇,现状让人唏嘘不已

橙子说说咱家娃
2026-04-29 08:10:38
重庆:加大公积金惠民力度

重庆:加大公积金惠民力度

界面新闻
2026-05-01 16:38:19
“观音回到了故乡”,82岁演员左大玢现身河南香山寺,该寺被称为“观音祖庭”,大批游客偶遇合影,景区回应

“观音回到了故乡”,82岁演员左大玢现身河南香山寺,该寺被称为“观音祖庭”,大批游客偶遇合影,景区回应

极目新闻
2026-05-01 16:12:53
央视主持大洗牌!3位旧人离场,杨帆处境尴尬,撒贝宁成最大赢家

央视主持大洗牌!3位旧人离场,杨帆处境尴尬,撒贝宁成最大赢家

阿雹娱乐
2026-05-01 16:59:54
叶新萍已被查实,举报人再爆院长儿子:一个人占了整个科室的福利

叶新萍已被查实,举报人再爆院长儿子:一个人占了整个科室的福利

娱乐圈见解说
2026-05-01 00:33:10
米体:国米意甲夺冠奖金约600万欧,已开始筹备庆祝活动

米体:国米意甲夺冠奖金约600万欧,已开始筹备庆祝活动

懂球帝
2026-05-01 20:49:19
波兹洛娃抽烟又怎样?专业没毛病!斯诺克最靓风景线,优雅的神

波兹洛娃抽烟又怎样?专业没毛病!斯诺克最靓风景线,优雅的神

小彭美识
2026-04-28 11:08:54
《寒战1994》票房第一,看完后我想说:吴彦祖把港片的大门踹烂了

《寒战1994》票房第一,看完后我想说:吴彦祖把港片的大门踹烂了

林轻吟
2026-05-01 16:49:39
广东一女子爱喝藏红花茶,2年后体检,医生纳闷:你都干啥了

广东一女子爱喝藏红花茶,2年后体检,医生纳闷:你都干啥了

坠入二次元的海洋
2026-05-01 15:19:21
湖南男子买烟炫富,致使一家三口被灭,2岁儿子在遗体边躺了两天

湖南男子买烟炫富,致使一家三口被灭,2岁儿子在遗体边躺了两天

莫地方
2026-04-24 00:10:03
特朗普精力充沛,养生秘诀是吃大量阿司匹林,日常三餐吃麦当劳

特朗普精力充沛,养生秘诀是吃大量阿司匹林,日常三餐吃麦当劳

南权先生
2026-04-04 05:05:03
2026-05-02 12:55:00
侃故事的阿庆
侃故事的阿庆
几分钟看完一部影视剧,诙谐幽默的娓娓道来
601文章数 8349关注度
往期回顾 全部

头条要闻

网友五一堵车在高速上点外卖 女老板穿着围裙亲自送到

头条要闻

网友五一堵车在高速上点外卖 女老板穿着围裙亲自送到

体育要闻

坎宁安大逆转:像看到了2006-08的勒布朗

娱乐要闻

白百何罕晒大儿子 18岁元宝越来越帅

财经要闻

雷军很努力 小米还是跌破了30港元大关

科技要闻

AI热潮耗尽库存,Mac Mini起售调高200美元

汽车要闻

新纪录!零跑汽车4月交付达71387台

态度原创

家居
时尚
数码
游戏
房产

家居要闻

灵动实用 生活艺术场

聪明女人衣服从来不买太多!这三种精品提前准备好,耐穿又实用

数码要闻

苹果macOS 27新功能前瞻,彻底抛弃Intel Mac

《红色沙漠》重磅更新又来了!BOSS和据点都能重新打

房产要闻

所有户型全卖爆!海口TOP级豪宅,景观样板间五一全线开放!

无障碍浏览 进入关怀版