![]()
发薪那天下午,我正在核对一批结算数据,手机轻轻震了一下。
银行短信显示,工资到账六千元。
我把数字看了两遍,又打开劳动合同。税前年薪八百万,按月发放,白纸黑字,签字和公章都在。
办公室的空调吹得很足,隔壁工位有人拆开一袋饼干,奶油味混着咖啡味飘过来。我把当月考勤、工资短信和合同页面依次截了图。
高蕾在财务办公室接待我。她抿了一口温水,说这是系统里暂时核定的金额,其余部分还要走流程。
我问她:“合同里的按月发放,怎么解释?”
她低头翻了翻桌上的文件,没有正面回答,只说陈总正在开会,让我先回工位。
我没争辩。回去后打印了一份离职通知,连同入职以来提交的风险清单,一起发给陈志远、高蕾和管理层邮箱。
下午四点二十分,我交还门卡和电脑。屏幕关掉前,那份书面风险提醒仍停在已发送页面,上面列着迁移条件不足、维护记录残缺等问题。
走出恒序科技时,外面刚下过雨。楼下卖盒饭的摊主在收塑料凳,积水里浮着几片香菜叶。
第二天上午九点零七分,陈志远的电话打了进来。
我没接。此后四十分钟,他一共打了十七次。
十点多,高蕾发来消息,说核心系统已经全面停摆,订单、对账和结算全卡住了。紧跟着,她又问了一句。
“周老师,你离开时,有没有带走旧项目笔记?”
我盯着那行字,慢慢放下茶杯。杯底磕在桌面上,声音不重。
01
一个月前,陈志远约我在老城区一家面馆见面。
店里还是十几年前的样子,墙砖被油烟熏黄,老板端面时,拇指离汤沿只有半寸。陈志远穿着深灰衬衫,比约定时间早到了二十分钟。
十二年前,他是我带过的年轻工程师。那时他话不多,遇到线上问题能守到凌晨,饿了就拿冷馒头蘸辣酱。
后来他离开原单位,自己做系统,生意越做越大。我们在几个项目上碰过面,报价互相压过,方案也争过,关系便淡了。
他把菜单推过来,开门见山。
“周老师,来恒序吧。税前年薪八百万。”
我没碰菜单,先看了看他。他眼下有两片青色,右手一直转着茶杯,杯里的茉莉花贴在杯壁上。
我问:“为什么是我?”
“供应链结算这一块,我只信你的判断。”
这话听着舒服,尤其对一个四十九岁、简历已经很少被主动翻开的技术人。可越舒服的话,我越不敢马上接。
原公司这两年把重心转向年轻团队。我还坐在架构师的位置上,会议却越来越少叫我。工资不少,活也稳,可那种稳像走廊尽头的旧椅子,没人搬走,也没人真需要。
陈志远取出合同初稿。岗位、年薪、发放方式、入职日期都写得清楚,工作内容是接管恒序的核心结算系统,完成一次整体迁移。
“周期多长?”
“三个月,前一个月摸清现状。”
我翻到违约条款,又问现有团队规模。他说有二十多人,基础不差,只是系统跑久了,历史问题多。
面上来时,他把香菜拨到一边。这个习惯没变。我当年带他加班,点餐总要多说一句,不放香菜。
吃完面,我没有当场签。合同带回家,逐页拍照,还列了七个问题发给他。晚上十一点,陈志远一条条回完,末尾写道,条件都可以谈。
林慧看完合同,先算了税,又算我们还剩多少房贷。她在连锁药店管财务,碰到大数字反而更慢,计算器按得一声一声。
“八百万,不像白给的。”她说。
我端着洗好的葡萄站在餐桌边,笑了笑。
“人家买的是经验。”
“经验值钱,我知道。可他这些年跟你一直较着劲,怎么忽然来请你?”
窗外有辆送货车倒进小区,提示音隔着玻璃一遍遍响。我捏起一颗葡萄,没有马上吃。
陈志远当年从我手底下出来,后来成了同行对手。论技术,他知道我的长处,也知道我的脾气。由他开出这个价,比陌生人的赞许更能落到心里。
周予安那晚回来得迟。他二十四岁,在外地项目组做软件实施,刚结束一轮上线。听说年薪,筷子停在半空。
“爸,这数够你再干几年了。”
他说得直。我也明白,五十岁以后,技术岗位能不能保住,不看昨天做过什么,只看今天还能解决什么。
家里的养老账户不算薄,可林慧腰不好,药店盘点时常站到深夜。儿子还租着房,将来买房、结婚,哪样都不是小数目。
更要紧的是,我不想在原公司等一张客气的退休通知。
三天后,我和陈志远在恒序会议室签了合同。他握住我的手,说团队盼了很久。
那天下午,旧上级罗建国给我打来电话。他六十三岁,退休后在郊区种菜,说话还是从前那股慢劲。
“合同看细了吗?”
“看了,钱和岗位都写清楚了。”
电话那边传来水管冲地的声音。他沉默片刻,才说:“合同归合同,技术边界归技术边界。两样东西分开留痕。”
我问他是不是听说了什么。
罗建国咳了一声,只说年纪越大,字越要写清。我应下来,心里却觉得他过于谨慎。
入职前一晚,我把用了多年的机械键盘擦了一遍,装进纸箱。林慧给我找出一件浅蓝衬衫,熨平领口,挂在阳台门边。
风吹进来,衣架轻轻碰着玻璃。
我看了几眼合同封面,关掉客厅的灯。
02
入职第一天,陈志远亲自把我带进研发区。
工位比原公司窄,桌下堆着交换机和纸箱。几个年轻人站起来叫周老师,我点点头,把自己的键盘接上电脑。
新系统的界面做得漂亮,首页曲线平滑,结算金额实时跳动。可点进后台,味道就变了。定时任务层层套着,临时开关有四十多个,名字有的规范,有的只写两个拼音字母。
陈志远说:“先熟悉三天,第四天开始接管。”
我抬头看他。
“三天连数据流都走不完。”
他拍了拍椅背,笑得有些疲惫。
“你上手快,团队也会配合。”
所谓配合,并没有那么顺。我要近半年的运行报告,技术组给了三份摘要。我要变更记录,对方发来一个共享目录,里面缺了好几个月。
高蕾来得更勤。
她四十一岁,说话利落,文件夹按颜色分类。第一次到我工位,她要我整理以前项目的完整流程资料,说可以帮助团队理解我的架构习惯。
我说:“先把恒序现状给全,我才能判断哪些资料有用。”
她把手搭在椅背上,笑了一下。
“旧流程先交过来,我们同步准备,省时间。”
我没有答应,只给了一份公开培训稿。那里面讲的是通用结算思路,没有客户数据,也没有旧项目的细节。
第二天,她又发来一张清单。从对账顺序、退款冲销,到跨月调账,问得很细,甚至要求我提供十二年前常用的流程图模板。
我回信说明,个人资料不能直接混入现系统,若有具体问题,可以在评审会上逐项讨论。
高蕾很快来到工位。
“周老师,陈总请你来,就是想让迁移快一点。”
“快要有依据。现状不给全,资料给再多也没用。”
她看着我桌上的笔记本,停了两秒,随后把话题转到考勤和报销。语气仍客气,只是走时关门比来时重了一点。
接下来一周,我跟着值班人员跑了两次夜间批处理。凌晨一点,办公室只剩服务器风扇声。年轻工程师小吴从抽屉里拿出泡面,调料包撒了一桌。
结算队列每隔一阵就会停顿。小吴熟练地打开一张表,手工改掉几行状态,再重新放行。
我问:“这种校正每天都有?”
他吸了一口面,说高峰期一天两三次,大家已经习惯。至于谁定下的做法,他摇头,说自己进公司时就是这样。
维护记录里也能看到类似痕迹。许多条目只写了处理结果,没有签字,没有复核人。有一页甚至只留着一句,金额已对齐。
表面平稳,底下却靠人手托着。像旧楼墙上新刷的白漆,远看干净,靠近能闻见潮味。
我把缺失项列成表格,发给陈志远和高蕾。陈志远回了一个收到,高蕾则让我不要把日常修正写得过重,以免影响迁移进度。
这句话让我不太舒服。
不过我仍相信,只要数据给齐,问题总能拆开。做了二十多年结算系统,我见过更乱的现场。杂线再多,也有源头。
周五下午,我开了一场内部梳理会。二十多个流程走下来,业务组能答一半,研发组又补两成,余下部分没人说得准。
陈志远中途进来,靠墙听了十分钟。他没有打断,只在散会后问我,能不能先定迁移日期。
“至少等风险清单闭环。”
“客户催得紧。”
“那也不能拿日期倒推安全。”
他搓了搓额头,叫我再抓紧些。门外有人推着保洁车经过,轮子碾过地砖缝,咯噔一声。
晚上,我把当天发现的问题重新排序。人工校正、记录缺页、开关含义不明,都放在高风险栏。
翻到一组跨月结算异常时,我停住了。
那组数据先扣后补,尾差被塞进下一周期,处理顺序有种说不出的熟悉。不是行业常见写法,至少我这些年很少见到。
我把两段日志并排放大,看了十来分钟。字段名换过,结构也不一样,暂时看不出更多东西。
也许只是碰巧。
我没有下结论,只在风险清单最后加了一行。
“结算异常规则来源不明,需补充完整说明,迁移前禁止自动放行。”
写完已是晚上九点。玻璃窗映着我的脸,眼角纹路比屏幕里的代码还密。我保存文件,又单独备份了一份。
走廊尽头,高蕾办公室的灯还亮着。她隔着百叶窗打电话,桌面摊着我白天交出的那份公开培训稿。
03
风险清单发出后的第二天,陈志远把我叫进小会议室。
桌上摆着四瓶矿泉水,三瓶已经喝空。投影幕上只有一行日期,比原定迁移时间早了二十六天。
他说:“下周五切换,你把安全确认签了。”
我看了一遍排期。数据校验只留半天,回退演练没有安排,夜间批处理仍靠人工修正。
“这个日期不能签。”
陈志远靠进椅背,双手交叉放在肚子上。他问我还缺什么,我把清单推过去,上面共有三十七项,其中十二项标了红色。
现状报告不完整,变更记录断档,关键开关没有说明。最麻烦的是那组跨月结算异常,没人能说清触发条件。
“先迁过去,再慢慢补。”他说。
“迁移不是搬桌子。出了偏差,账会落到客户头上。”
陈志远拔下投影线,屏幕暗了。他在屋里走了两圈,终于说出一直没讲的事。
恒序最大的客户只给了一个月整改期。月底前看不到新系统,对方就会重新评估合作。
我算了算日期。从我入职到月底,刚好一个月。所谓三个月迁移,从一开始就没有三个月。
“面馆里为什么不说?”
“当时还在谈展期。”
“现在谈成了吗?”
他没有回答,只让我体谅公司处境。说完又提八百万年薪,语气像在提醒我,这个价买的不只是坐班时间。
那一刻,我才尝出面馆那碗汤里的后味。不是重视,是火已经烧到门口,急着找一个能进去的人。
我仍旧没签。
下午,高蕾送来一张新版确认表。标题从安全确认改成阶段评估,正文却没变,仍写着系统具备提前迁移条件。
我把纸还给她。
“换标题也不行。”
她站在桌旁没动,说管理层已经排了客户汇报,陈总希望内部意见一致。
“事实不一致,意见怎么一致?”
高蕾把纸收进文件夹,嘴角的笑淡了些。临走前,她提醒我试用期内也要服从工作安排。
我打开劳动合同,重新看了一遍工资条款。首月按月发放,没有附加迁移节点,也没有绩效比例。
正好临近发薪,我给高蕾发邮件,请她确认首月工资计算方式。两个小时后,她回了一句,按公司流程执行。
我又问具体金额和日期,她没有回复。
晚上七点,陈志远在研发区开临时会。他当着二十多个人宣布,下周五进行首次切换,由我做最终技术确认。
几道目光落到我身上。小吴还握着半根火腿肠,包装纸停在嘴边。
我合上笔记本。
“我没有确认这个日期。”
陈志远看着我,脸上的笑挂了几秒。他说会后再谈,让大家先按计划准备。
会议散后,我留在原位,把三十七项风险整理成正式邮件。每一项都附上发现时间、所需材料和可能影响,同时写明,在完成校验与回退演练前,我不同意切换。
收件人是陈志远、高蕾和管理层。发送前,我从头读到尾,没有一句气话。
邮件发出后,陈志远推门进来。
“周老师,内部问题,没必要发这么多人。”
“你已经向团队宣布由我确认。”
“我那是稳定人心。”
“那我也要把真实意见写清楚。”
他拉开椅子坐下,低声说公司现在经不起拖。他叫了我两次周老师,第三次只叫老周。
我问:“首月工资怎么发?”
陈志远摸出手机,看了一眼屏幕。
“高蕾在处理,财务上的事我不细管。”
“合同是你签的。”
他起身走到门边,说眼下先把系统做好,待遇不会亏我。门合上时,外面的说话声一下小了。
那组异常数据还停在屏幕上。我顺手点开底层日志,发现几个缩写的排列方式,很像我早年写变量时的习惯。
先业务名,再周期,最后加状态尾码。那时候内存紧,我总把名字压得很短。
可这种写法并不稀奇。我把两份代码结构对照了一遍,没有找到相同段落,便在备注里写下,疑似行业旧式命名,继续核验。
凌晨回家,林慧已经睡了,餐桌上扣着一碗凉面。我坐在暗处吃完,芝麻酱结成小块,粘在筷子上。
手机亮了一次,是陈志远发来的消息。
“下周五不变,想办法做成。”
我没有回,把邮件回执单独存进了私人硬盘。
04
发薪日下午两点,银行短信来了。
六千元。
我起初以为是报销款,点进手机银行,摘要却写着工资。数字后面两个零很规整,看久了有点刺眼。
按合同折算,首月税前应发六十多万元。扣税后不会是六千,也不可能只差一个小数点。
我去找高蕾。她正和人核对采购单,见我进门,让对方先出去,又顺手把桌上的计算器推到一边。
“工资怎么回事?”
她调出一张内部表格。我的名字后面写着试岗津贴,金额六千元,备注栏是待迁移成果验收。
我把手机放在桌上。
“劳动合同里没有试岗津贴。”
“这是阶段安排,迁移成功后统一补齐。”
“谁定的?”
高蕾停顿了一下,说公司目前要把资金用在关键节点,希望我理解。她还说,八百万不是不发,只是往后顺延。
窗台上有盆绿萝,叶尖积着一层灰。空调风一吹,最长的那根藤轻轻碰着玻璃。
我问:“如果迁移一直不通过呢?”
“周老师,以你的能力,不会出现这种情况。”
话说得圆,意思却很直。钱压在他们手里,要我先签字、先切换,再谈合同。
我要求她出具书面说明。高蕾说内部方案不便单独开证明,可以在迁移完成后补一张工资明细。
我打开录音,她看见了,没有再往下说。
回到工位,我先下载合同、考勤、工资流水和全部邮件。风险清单导出成不可修改的格式,连同发送回执一起存了三份。
陈志远的办公室门关着。秘书说他在外面见客户,暂时回不来。
我给他打电话,响了很久才接通。
“六千元,你知道吗?”
那边有汽车鸣笛声。他说正在路上,让我先听高蕾安排。
“我要你亲口说明。”
“老周,系统过了这个坎,钱一分不会少。”
“所以你知道。”
他沉默几秒,随后说晚点回来谈。还没等我再问,电话断了。
我坐在工位上,把那份离职通知改完日期。入职时带来的机械键盘沾了些饼干屑,我倒过来拍了两下,装回纸箱。
小吴从旁边探头,问我是不是换工位。我说不换,走了。他张了张嘴,最后只把一摞测试记录放到我桌上。
下午四点二十分,我将离职通知发给陈志远、高蕾和管理层。邮件写明,公司未按合同发放工资,我自通知送达起解除劳动关系。
后面还附着一句,迁移条件尚未满足,三十七项风险未闭环,不得依据我的名义进行切换。
高蕾追到门禁口。
“周老师,你这样走,项目怎么办?”
“按我发的清单处理。”
“六千只是暂时的。”
“合同也不是暂时的。”
她挡了半步,又让开。保安接过门卡,在登记表上写了四点二十七分。
出了大楼,我没有立刻回家。街角打印店里闷得厉害,机器吐出的纸带着热气。我把合同和关键邮件又打了一套,装进牛皮纸袋。
林慧下班后在菜市场门口找到我。她手里拎着半只鸡,塑料袋底下渗出一点血水。
听完经过,她只问材料存全没有。我点头,说纸质、硬盘和邮箱都有。
“该要的钱,一分也别让。”
她往前走了几步,又停下来。
“可我问你件事。你是不是又觉得,他们没你就转不动?”
我没接话。
菜市场快收摊了,卖鱼的人往地上冲水,腥味顺着水沟漫过来。林慧把袋子换到另一只手。
“以前你在家也这么说。流程只有你熟,别人学不会,交出去就没人要你了。”
“这次不一样,材料是他们不给。”
“我知道。可你这一个月,是不是也有点等着他们来求你?”
她没替恒序说话,也没劝我回去。问完便走到前面,跟摊主讲鸡杂要不要另算钱。
我站了片刻,低头看牛皮纸袋。边角被汗浸软了一小块。
回家后,我把六千元流水打印出来,与合同对应页钉在一起。订书机按下去,发出清脆一声。
陈志远晚上打来三个电话,我一个没接。他发消息说,明早十点当面谈,所有问题都可以解决。
我回了八个字。
“请先按合同书面回复。”
第二天早上九点零七分,他的电话再次打来。四十分钟里,一共十七通。
十点十一分,高蕾发来消息,核心系统全面停摆。订单积压,对账中断,结算页面无法打开。
下一条消息却问,我有没有带走旧项目笔记。
我截了图,回复她,个人物品均已在门禁处登记,公司设备和资料全部交还。如需沟通,请用邮件。
发送后,林慧把热好的馒头端上桌。蒸汽扑到我眼镜上,眼前白了一层。
她没有问系统的事,只把咸菜往我这边推了推。
05
上午十一点,恒序发来正式邮件,要求我立即返岗,协助恢复系统并说明离职前的操作情况。
邮件抄送了管理层,措辞很硬。其中一段说,我作为核心架构人员突然离开,可能与本次停机存在关联。
我把离职通知、门禁登记和风险邮件按时间排好,回信只有四点。
第一,我离职前没有取得生产环境发布权限。第二,个人物品已登记。第三,三十七项风险早已书面提示。第四,如认为我实施了异常操作,请提供日志。
半小时后,对方发来一张权限截图。我的账号在昨晚仍显示启用。
我查看时间,发现账号最后一次登录是昨晚十一点四十八分,而我下午四点多已经交回电脑。
我再次回信,要求保存完整登录地址、设备编号和操作流水。只截账号状态,说明不了使用人。
陈志远终于发来语音,声音沙哑。
“老周,先来公司。客户每小时都在问。”
我没有回复语音,仍让他用邮件说清。他连着发了几段,先说恢复后再谈工资,后来又说六千元只是财务误会。
中午,高蕾来到我家楼下。她穿着昨天那件黑色外套,鞋边沾了灰,手里提着公文包。
林慧没有让她进门。我们在小区凉亭里谈,旁边几位老人正在下棋,棋子落在木盘上,啪嗒作响。
高蕾先说系统影响了数百家供应商,又说公司愿意补发工资,只要我当天回去。
我问她:“六千元是谁定的?”
她低头拨了拨包带。
“是临时安排。”
“谁批准的?”
“陈总知道。”
风从凉亭边穿过去,桌上一张废广告纸翻了个面。我早有判断,可听见她亲口说出来,胸口还是沉了一下。
高蕾承认,公司当时资金紧张,又怕我不肯在月底前完成迁移。陈志远同意先发六千元,想把剩余工资压到切换成功后。
“你们拿合同里的钱卡我?”
她说做法不妥,公司可以马上纠正。我问若系统没有停摆,什么时候纠正。她没有回答。
我把谈话要点整理成文字,当着她的面发到双方邮箱。高蕾看完,没有提出修改。
到这一步,工资缩水的经过已经清楚。系统停摆发生在我离职之后,我也有风险邮件和权限记录。至少眼前这笔账,不能全扣到我头上。
下午两点,陈志远又发来会议邀请。我拒绝返岗,只同意在取得全部日志后,以外部人员身份查看材料。
他没有接受,反复强调时间紧。快四点时,公司法务送来一份返岗承诺书,里面要求我无条件接管恢复工作,并承担操作后果。
我在最后一页写下不同意,拍照退回。
林慧坐在餐桌边做药店月报。计算器按到一半,她抬头问我,既然证据齐了,为什么还盯着那组异常日志。
我说不上来。
那套先扣后补的顺序,还有几个缩写,总在脑子里绕。像在旧柜子里闻到樟脑味,明明多年没开过,鼻子却认得。
下午四点四十,高蕾打来电话,说有一份旧材料必须让我亲自看。她不肯拍照,也不说从哪里找到,只约我五点到恒序一楼会客区。
我带上录音笔和纸质邮件。林慧送我到门口,提醒我不要签空白页。
恒序大厅比昨天乱得多。前台电话一直响,几名员工抱着电脑进进出出。屏幕上的订单曲线停在上午九点,右上角不断跳出红色提示。
陈志远没有出现。
五点整,高蕾抱着一只发黄的档案袋走进会客区。封口处卷了边,正面只写着一个十二年前的项目编号。
她把袋子推到我面前。
“先看,看完再决定回不回。”
我没有碰,先让她说明材料来源。高蕾说自己只拿到复印件,其他情况要等陈志远回来解释。
袋中没有补发工资单。
第一张是十二年前一次停机事故的责任说明。纸面复印得发灰,末页却清楚印着我的签名。日期、姓名和当时的岗位,都对得上。
我往后翻,附页列着一组未完整交接的结算规则。先扣后补,尾差转入下一周期,异常时需要人工校正。
正是我这些天反复标记的那一组。
后面还有当前系统的调用截图。故障链路穿过相同规则,连几个缩写的排列顺序都没有变。
我把两张纸并排放在玻璃桌上。旧纸上的签名微微向右斜,那是我四十岁以前的写法。后来手腕受过伤,收笔早就变了。
可我不记得签过这份说明。
高蕾说,技术组已经确认,瘫痪模块仍在调用这些未交接规则。她没有说它们怎样进入恒序,也拿不出原始资料,只说眼下需要我。
我抬头看大厅。墙边坐着几个研发人员,有人端着泡面,却忘了撕开调料包。订单报警声隔几分钟响一次,短促得像收银台扫错了码。
“最大客户今晚八点给答复。”高蕾说,“如果不能拿出恢复方案,对方可能解约。”
恒序有三百名员工。这个数字我入职时见过,工资表、工位和门禁名单都能对上。
我原以为停机证明公司绕不开我的提醒,也证明他们压工资有多荒唐。现在桌上多了一份十二年前的说明,纸末是我的名字。
回去救系统,我就得面对那组没有完整交接的规则,也得解释自己的签名。
转身离开,合同争议和本次强行切换都仍有清楚记录,我可以继续守住眼前的清白。可八点一到,客户若解约,三百人的工资便可能停下来。
墙上的电子钟跳到五点零七分。
高蕾把一支黑色签字笔放在档案袋旁边,没有催我。
我看着那支笔,又看了一眼自己的旧签名,手始终没有伸过去。