庆功宴漏掉的人

楔子

沈明辉的电话打过来的时候,我正在家里收拾行李。他的语气很急,说系统崩了三天了,整个项目组束手无策,只有我能处理。我告诉他,沈总,我前天已签完离职。电话那头沉默了五秒钟,然后他说了一句话,声音低得像是从牙缝里挤出来的:“你是不是早就想走了?”我挂了电话,把SIM卡从手机里取出来,扔进了垃圾桶。

第1节 庆功宴的通知

庆功宴的通知是周二下午发的。

公司群炸了,消息一条接一条往上滚,全是欢呼和表情包。项目经理赵磊在群里发了一个大红包,备注写着“感谢大家三个月来的付出”。同事们疯狂刷屏,有人喊“赵哥威武”,有人发礼花特效,有人已经开始约晚上的座位。

我盯着手机屏幕,上下翻了两遍。

全员@的消息里,没有我。

我以为是自己看漏了,又重新翻了一遍。从上到下,逐条查看。通知里写的是“项目组全体成员”,附件里有一张聚餐名单,Excel表格,四十多个名字,按部门排列。

我CTRL+F搜索自己的名字。

零条结果。

我放下手机,靠在椅背上,盯着天花板看了十秒钟。然后我拿起手机,给赵磊发了一条微信:“赵哥,晚上的庆功宴在哪个餐厅?”

他回得很快:“你又不是项目组的,来干嘛?”

我盯着那行字,看了很久。

不是项目组的。

这个项目,从立项到上线,整整三个月。第一个月,需求不明确,方案改了七版,项目组的人换了一批又一批。第二个月,技术方案卡住了,核心架构没人能定,赵磊在周会上拍了三次桌子,问谁能把这个坑填上。

是我填的。

我花了两个通宵,把整套架构方案写了出来。第三个月的开发阶段,前端后端联调出了问题,又是我一层一层排查,定位到核心接口的bug,改完已经是凌晨四点。

验收会上,沈明辉表扬了所有人。他提到赵磊“统筹有方”,提到测试组“严谨细致”,提到产品经理“需求把控到位”。四十分钟的总结发言,我的名字一次都没有出现过。

散会后林峰跟我一起走下楼,他犹豫了一下,说:“师傅,你的名字被从汇报PPT里删掉了。”

我说:“删了就删了吧。”

林峰还想说什么,张了张嘴,又闭上了。

他知道说什么都没用。

这种事不是第一次了。

第2节 去年的绩效

去年年底绩效评定,我拿了B。

不是C,但比C好不了多少。B的意思是你干得不错,但还不够好。至于哪里不够好,没有人告诉我。

我去找沈明辉谈过一次。我说沈总,我想知道我的不足在哪里,明年好改进。他靠在椅子上,双手交叉放在桌上,说:“小林啊,你的技术能力我是认可的,但你要多跟团队沟通,多展示自己。”

我说好,我改。

然后今年上半年,我主导了两个技术难点攻关,写了三份技术文档分享到部门群,主动在周会上汇报进展。我以为这样够“展示自己”了。

年中考核的时候,沈明辉给我的评语是:“技术能力强,但缺乏大局观。”

我问什么是大局观。

他说:“你要站在公司的角度考虑问题,不能只盯着自己那一亩三分地。”

我没再问了。

因为我已经听懂了。大局观的意思就是:你的功劳是团队的,团队的问题是你自己的。

那天晚上我回到家,坐在沙发上发了很久的呆。我老婆问我怎么了,我说没事,项目有点累。她没有追问,去厨房给我热了一碗汤。

我喝着汤,打开手机,看到项目群里赵磊发了一张照片。照片上是沈明辉和他握手的特写,配文是“感谢沈总的信任和支持”。下面一排点赞。

我关掉手机,把汤喝完,去洗了澡。

躺在床上,我盯着天花板,想起了三年前刚入职的时候。那时候沈明辉面试我,问了我一个问题:“你为什么选择我们公司?”我说:“因为我觉得这里的项目有挑战性,能学到东西。”

他说很好,年轻人就要有干劲。

三年后,我确实学到了很多东西。我学会了怎么写代码不被署名,学会了怎么背锅不吭声,学会了怎么在庆功宴的名单上自动消失。

第3节 三天的热闹

庆功宴连办了三天。

第一天是聚餐,在一家海鲜酒楼。林峰给我发了一张照片,满桌子的菜,帝王蟹、龙虾、鲍鱼,摆得满满当当。他说师傅你没来太可惜了,这家店的椒盐皮皮虾特别好吃。

我说你们吃开心就好。

第二天是唱歌,在KTV包了个大包。朋友圈被同事们刷屏了,有人唱《海阔天空》,有人唱《光辉岁月》,有人喝多了抱着麦克风喊“我们是最棒的团队”。赵磊发了一段视频,配文是“这氛围,绝了”。

我点开视频看了三秒钟,关掉了。

第三天发奖金。项目奖金包不小,据说赵磊拿了大头。他在群里发了一个更大的红包,备注写着“见者有份”。我点开,抢到了三块六毛八。

我盯着那个数字看了很久,然后把红包截图保存了。

那天下午,我打开招聘网站,更新了简历。上一次更新简历是两年前,那时候我刚进这家公司,满怀热情,觉得自己找到了一个能施展拳脚的地方。

我把项目经验一条一条填进去,写得尽量客观。写到最近这个项目的时候,我犹豫了一下,还是在描述里加了一句话:“负责核心架构设计与关键技术攻关。”

这是事实。

我保存了简历,设置了“隐身可见”,然后关闭了网页。

下班的时候,我在电梯里碰到了周晓曼。她看了我一眼,笑着说:“小林,这几天怎么没看你发朋友圈啊?项目结束了,该放松放松。”

我说:“周姐,我没参加庆功宴。”

她愣了一下,然后说:“哦,是吗?可能是行政那边漏了通知吧。”

我说:“可能是吧。”

电梯到了一楼,她先出去了。我站在电梯里,多等了几秒才走出来。

行政漏了通知。

这个理由挺好的。

下次可以用。

第4节 竞对的电话

周四上午,我接到了一个电话。

号码是陌生的,我本来想挂掉,但不知道为什么还是接了。

“您好,请问是林峰的技术师傅吗?”

我愣了一下:“我是,您是?”

“我是苏敏,星耀科技的人力资源总监。冒昧打扰您,我在技术社区看过您写的几篇博客,关于分布式系统架构的那几篇,写得非常好。”

我说谢谢。

“是这样的,我们公司目前在招聘一位技术总监,我觉得您的背景非常合适,不知道您有没有兴趣聊一聊?”

我说我现在还在职。

“我知道,”她说,“我不着急,您可以考虑一下。如果您方便的话,我们可以先约个时间通个电话,或者线下喝杯咖啡,互相了解一下。”

我沉默了几秒,说:“好。”

挂了电话,我坐在工位上,盯着电脑屏幕发呆。星耀科技,业内排名前三的公司,总部在隔壁城市,离我这里高铁一个小时。他们的技术总监岗位,薪资至少是我现在的两倍。

我打开浏览器,搜了一下星耀科技的官网,又搜了一下苏敏的LinkedIn。她在星耀做了六年人力资源,之前在一家外企待过四年。履历很干净。

下午,苏敏加了我的微信。她没有催我,只是发了一条消息:“林工,这是我的联系方式,您随时可以找我。”

我回了一个“好的”。

那天晚上,我跟我老婆说了这件事。她正在洗碗,听了之后停下手里的动作,转过身看着我。

“你想去吗?”

“我在考虑。”

她擦了擦手,走过来坐在我旁边:“你在这家公司干得不开心,我知道。你虽然不说,但我看得出来。”

我没说话。

“如果你想去,就去试试。大不了就是不成,也没什么损失。”

我说好。

第二天上午,我给苏敏发了一条消息:“苏总,方便的话,我想跟您聊聊。”

她秒回:“随时方便。您看今天下午三点,我们公司楼下的咖啡厅,可以吗?”

我说可以。

下午我跟公司请了半天假,说是身体不舒服。沈明辉没多问,批了。

我坐高铁去了隔壁城市,四十分钟就到了。苏敏选的那家咖啡厅就在星耀科技大楼的一楼,落地窗,光线很好。

我到的时候,她已经坐在那里了。她看起来三十五六岁,短发,穿着一件白色衬衫,干练但不凌厉。她看见我,站起来,微笑着伸出手:“林工,幸会。”

我握了握她的手,坐下了。

第5节 面试

苏敏没有跟我谈情怀。

她点了一杯美式,我点了一杯拿铁,然后她直接从包里拿出一份打印好的JD,放在桌上推到我面前。

“林工,这是我们技术总监的岗位职责和要求,你先看一下。”

我接过来,快速扫了一遍。技术栈跟我目前做的完全匹配,团队规模二十人左右,汇报给CTO。

“薪资范围呢?”

苏敏没有绕弯子:“基础年薪六十万到八十万,视面试情况定。期权另算,入职满一年后行权。还有一笔签字费,具体数额我们可以谈。”

我心里默默算了一下。我现在年薪不到三十万,加上年终奖,勉强三十万出头。六十万的底薪,翻了一倍。

“面试流程是什么样的?”

“三轮。第一轮是我们CTO,第二轮是技术委员会,第三轮是CEO。如果你时间方便,我可以安排在下周。”

我说好。

苏敏看着我,笑了笑:“林工,我多说一句。我看过你的技术博客,也跟你们公司的几个技术人员聊过。你在圈子里的口碑很好,大家都知道活是你干的。”

我端着咖啡杯的手停了一下。

“我们看重的是技术,不是谁的功劳被谁占了。”

我喝了一口拿铁,苦的,但心里某个地方松了一下。

面试结束后,我走出星耀科技的大楼,站在门口深吸了一口气。阳光很好,楼前的草坪修剪得很整齐,几个员工坐在长椅上吃午餐,聊着天。

我掏出手机,给我老婆发了一条消息:“面试完了,感觉不错。”

她回了一个竖起大拇指的表情。

我坐高铁回去的路上,收到了苏敏的微信:“林工,CTO对你的评价很高。下周安排第二轮面试,你方便吗?”

我回:“方便。”

然后我关掉手机,靠在座位上,看着窗外飞速掠过的田野。

高铁广播响起:“前方到站是……”

我闭上眼睛,嘴角不自觉地往上弯了一下。

第6节 周四的平静

庆功宴结束后的第一天,公司恢复了正常运转。

没有人注意到我还在不在。

我坐在工位上,打开电脑,像往常一样登录系统、查看邮件。收件箱里有十几封未读,全是系统通知和跨部门抄送,没有一封是专门发给我的。

隔壁工位的小刘在跟同事分享庆功宴上拍的照片,说那天的帝王蟹有多新鲜。我戴上耳机,打开音乐播放器,把音量调到刚好盖住他们说话的程度。

中午去食堂吃饭,碰到林峰。他端着餐盘坐到我对面,看了看四周,压低声音说:“师傅,昨天发奖金了,你知道吗?”

“知道。”

“赵磊拿了八万。”

我夹菜的筷子没停:“正常。”

“不正常,”林峰说,“那个项目要不是你,根本做不下来。他凭什么拿八万?”

我嚼完嘴里的饭,看着他:“就凭他的名字在PPT上,我的不在。”

林峰沉默了。他低头扒了几口饭,又抬起头:“师傅,你就这么算了?”

我没回答。

吃完饭回工位的路上,我路过公告栏,上面贴着一张庆功宴的合影。四十多个人挤在镜头前,笑得灿烂。我站在照片前看了几秒,找到了自己的位置——不在里面。

下午,我提交了年假申请。连着周末,一共五天。

沈明辉秒批。

审批通过的邮件弹出来的时候,我盯着屏幕上“审批人:沈明辉”那几个字,笑了一下。他批得这么快,大概根本没看我要休假几天,甚至没注意到我还在休假申请的理由栏里写了什么。

我写的是:“个人事务处理。”

他没问是什么个人事务。

他也不在乎。

第7节 周五的异常

周五下午两点十七分,系统开始出现异常。

最先发现问题的是运维组。监控大屏上突然飘红,核心服务的响应时间从正常的五十毫秒飙升到三秒以上,然后十秒,然后直接超时。

运维组长第一时间拉了群,@了项目组所有人。

赵磊在群里回复:“正在排查。”

过了二十分钟,他又发了一条:“初步判断是数据库性能问题,DBA已经在处理了。”

又过了半个小时,DBA回复:“数据库没有问题,指标全部正常。”

赵磊不说话了。

下午三点四十分,系统彻底崩溃。用户端全部无法访问,后台管理页面也打不开。客服部门的电话被打爆了,反馈群里的消息一分钟刷几十条,全是用户在骂。

沈明辉在项目群里发了一条语音,语气很冲:“谁能告诉我到底是什么问题?”

群里安静了整整两分钟。

然后有人小心翼翼地回了一句:“沈总,这个模块的核心代码是林工写的,我们这边不太熟……”

沈明辉没有回复那条消息。

他直接给我打了电话。

我当时正在家里收拾行李,手机响了,屏幕上显示“沈明辉”三个字。我看着那三个字,让铃声响了五秒,然后接起来。

“小林,你在哪?”

“在家,休年假。”

电话那头顿了一下,然后他的语气变得很急:“系统崩了,你能回来一趟吗?”

我靠在衣柜上,看着行李箱里叠好的衣服:“沈总,我在休假。”

“我知道,但这个情况紧急,只有你能处理。你回来看看,算加班,三倍工资。”

“沈总,我前天已签完离职。”

电话那头沉默了。

我听见他的呼吸声,粗重而急促,像是在极力压制着什么。

过了大概五秒钟,他开口了,声音低了很多:“你说什么?”

“离职,”我说,“我已经签完字了。”

“什么时候的事?”

“前天。”

“我怎么不知道?”

“人事那边应该还没来得及通知你。”

又是一阵沉默。然后他说了一句话,声音很轻,但每个字都清清楚楚:“你是不是早就想走了?”

我没有回答。

我挂断了电话。

第8节 周六的求助

周六上午,沈明辉又打了一次电话。

这回他的语气变了,没有了昨天的急促和质问,换成了一种我从没听过的语调——客气,甚至带着点低声下气。

“小林,我知道你已经签了离职,但系统现在瘫痪了,客户那边损失很大,公司也很被动。你能不能回来帮个忙?条件你提。”

我正坐在客厅里吃早饭,煎蛋配牛奶,窗外阳光很好。

“沈总,我已经不是公司的人了。”

“我知道,所以我说条件你提。加班费、补偿、都可以谈。”

“不是钱的问题。”

“那是什么问题?”

我把牛奶杯放下,想了想,说:“沈总,你还记得去年绩效评定的时候,你跟我说我缺乏大局观吗?”

电话那头没说话。

“你还记得上个月的验收会,你表扬了所有人,唯独没提我的名字吗?”

还是没说话。

“你还记得周二庆功宴,我翻了三遍通知名单,都没找到自己的名字吗?”

沈明辉沉默了很久,然后说:“小林,这些事我们可以当面聊。你先回来把系统修好,其他的都好说。”

我笑了一下:“沈总,系统不是我弄崩的,对吧?”

“当然不是。”

“那谁弄崩的,谁去修。”

我挂了电话。

那天上午,我的手机震动了无数次。赵磊打了三个电话,我没接。周晓曼打了一个,我也没接。林峰发了一条微信,问我是不是真的要走了。

我回他:“嗯。”

他又发了一条:“师傅,那你保重。”

我看着那三个字,心里涌起一股说不清的感觉。三年了,我带了他两年多,教会了他很多东西。他是这个公司里唯一一个让我觉得这三年的时间没有完全白费的人。

我回了他四个字:“你也保重。”

然后我把手机调成静音,继续收拾行李。

第9节 沈明辉的变脸

周日中午,沈明辉亲自登门了。

我不知道他从哪弄到我的住址的。大概是人事档案里查到的。他站在我家门口,穿着一件皱巴巴的衬衫,头发乱糟糟的,眼睛下面挂着两个明显的黑眼圈。跟三天前在庆功宴上意气风发的样子判若两人。

我老婆开的门。她回头看了我一眼,眼神里带着询问。

我说:“没事,你先进去。”

她点点头,转身进了卧室。

沈明辉站在门口,挤出一个笑容:“小林,我能进去坐坐吗?”

我让开身子,他走了进来。他站在客厅里,环顾了一圈,目光落在我放在墙角的一个行李箱上。

“你要出远门?”

“嗯。”

“去哪?”

“还没定。”

他没再追问,在沙发上坐了下来。我没坐,靠在电视柜上,等他开口。

“小林,我来找你,是想跟你好好谈谈。”

“谈什么?”

“谈你离职的事。”

“离职手续已经办了。”

“我知道,但我想挽留你。”他抬起头看着我,“你在这家公司干了三年,技术能力大家有目共睹。我知道以前有些地方做得不到位,让你受委屈了。但公司现在确实需要你。”

“沈总,系统崩了需要我,对吧?”

他被我戳穿了,脸上的表情僵了一下,但很快又恢复了:“不只是系统的事。我是真的觉得你是个难得的人才,不想失去你。”

“那庆功宴为什么没叫我?”

他愣了一下。

“验收会为什么没提我的名字?”

他又愣了一下。

“绩效评定的时候,为什么说我缺乏大局观?”

他张了张嘴,没说出话来。

“沈总,这些问题你能回答我吗?”

他沉默了很久,然后说了一句话:“小林,职场就是这样。有些事不是我能决定的。”

我点了点头:“我明白。所以我做了我能决定的事。”

我走到门口,打开了门。

沈明辉看着我,知道再说下去也没用了。他站起来,走到门口,停下来,背对着我说了一句话:“你走了,系统怎么办?”

“那是你的问题,不是我的。”

他走了以后,我关上门,靠在门板上,长长地呼出了一口气。

我老婆从卧室里走出来,看着我:“谈完了?”

“谈完了。”

“你还好吗?”

“挺好的。”

她走过来,抱了我一下,什么也没说。

第10节 赵磊的甩锅

系统崩溃的第三天,赵磊在项目群里甩锅了。

林峰把截图发给了我。赵磊在群里发了一段很长的消息,大意是说:这个系统的核心模块是由“已离职的技术人员”开发的,当时为了赶进度,代码质量没有得到充分保障,存在一些潜在的技术隐患。这次的故障很可能与这些历史遗留问题有关。

他没有提我的名字,但所有人都知道他说的是谁。

群里没有人反驳他。

也没有人替我说话。

林峰说他当时想说话,但打了几个字又删掉了。他说他不知道该说什么,怕说了反而给我惹麻烦。

我说:“你不用说什么,让他说。”

林峰又发了一条消息:“师傅,他把聊天记录发到公司大群了。”

我点开大群的截图,看见赵磊把那套说辞又发了一遍。这次还加了一句:“我们会尽快联系相关人员进行技术交接,确保系统稳定性。”

相关人员。

这个词用得真好。

我已经不是公司的人了,变成了“相关人员”。

我把截图放大,看了几遍,然后关掉了。

林峰问我:“师傅,你不生气吗?”

我想了想,回他:“生气有用吗?”

他发了一个难过的表情。

我放下手机,继续整理我的技术文档。这三年写的代码、做的设计、积累的经验,我全部打包备份了。这些东西是我的,不是公司的。

赵磊想甩锅,就让他甩吧。

反正我已经不在那个棋盘上了。

第11节 周晓曼的电话

周日下午,周晓曼打来了电话。

她的语气一如既往地温和,像什么事都没发生过一样:“小林,听说你提交了离职申请?”

“嗯。”

“怎么这么突然?公司对你不好吗?”

我握着手机,差点笑出声。周姐不愧是做人事的,这句话问得滴水不漏,既显得关心,又把责任全推到我身上。

“周姐,我在公司干了三年,绩效B,工资没涨过,项目做完了庆功宴没我的份。你觉得公司对我好吗?”

电话那头沉默了几秒。

“小林,我知道你心里有委屈。但你也知道,公司的制度就是这样,不是针对你一个人。”

“那这次系统崩溃,赵磊在群里说是我的代码有问题,这也是制度吗?”

周晓曼没有接这个话。她换了一个话题:“小林,你的离职申请,沈总还没有批。”

“我知道。”

“如果你愿意留下来,我可以帮你争取更好的条件。薪资方面,我可以跟上面申请调一级。”

“周姐,我已经签了新公司的offer了。”

她愣了一下:“这么快?”

“嗯。”

“哪家公司?”

“这个就不方便说了。”

她又沉默了几秒,然后语气变了,从温和变成了公事公办:“那你的离职手续,你打算什么时候办?”

“随时可以。只要沈总把我的离职申请批了,我随时可以去公司办手续。”

“沈总那边……”

“周姐,”我打断她,“离职申请是他压着的,不是我。你与其劝我留下来,不如去劝他把字签了。拖着对谁都没好处。”

周晓曼沉默了一会儿,说:“我明白了。”

挂了电话,我坐在沙发上,看着窗外的天色一点点暗下来。

我老婆端着一杯水走过来,递给我:“人事打来的?”

“嗯。”

“怎么说?”

“想让我留下来。”

“你答应了吗?”

“没有。”

她把水杯放在我手里,坐在我旁边:“那他们会不会卡你的离职手续?”

“有可能。”

“那怎么办?”

我喝了一口水,说:“他们有他们的办法,我也有我的。”

第12节 被压着的离职

周一早上,我登录公司系统,发现我的账号已经被冻结了。

进不了OA,打不开邮件,连企业微信都登不上去。

我打电话给IT部门,对方说:“林工,你的账号是人事那边通知冻结的,说是离职流程已经启动了。”

“我的离职手续还没办完,为什么提前冻结账号?”

“这个……我不太清楚,你要问人事。”

我挂了电话,又给周晓曼发了条微信:“周姐,我账号被冻结了,离职手续还没办,这是什么意思?”

她过了二十分钟才回:“可能是IT那边操作失误,我帮你问一下。”

我看着那条消息,心里清楚得很。不是操作失误,是故意的。先冻结账号,造成我已经离职的事实,然后再拖着不批离职申请,让我处于一个既不能工作又不能离职的尴尬状态。拖久了,我耗不起,就只能主动放弃补偿金走人。

这套流程,周晓曼做过很多次了。

我之前见过两个同事就是这么被逼走的。一个是干了五年的老员工,被拖了两个月,最后放弃了N+1,签了自愿离职。另一个更惨,被拖到试用期最后一天,然后以“试用期不合格”为由辞退,一分钱赔偿没拿到。

我当时还替他们不平过。

没想到现在轮到我了。

我打开手机录音,然后拨通了沈明辉的电话。

响了三声,他接了。

“沈总,我账号被冻结了,你知道这事吗?”

“我知道,人事那边跟我说了,说是流程上的误会。”

“什么误会?”

“就是……系统自动操作的,不是针对你。”

“那我的离职申请,你批了吗?”

电话那头顿了一下:“小林,我还是希望你能再考虑一下。”

“沈总,我已经考虑得很清楚了。”

“你再想想,公司培养了你三年……”

“沈总,”我打断他,“培养了我三年,然后给我打B,不涨工资,庆功宴不叫我,系统崩了让我背锅。这就是你说的培养?”

他没说话。

“沈总,我给你两个选择。第一,今天把我的离职批了,N+1补偿一分不能少,我签完字走人。第二,我现在把我们这三年的聊天记录、绩效评定邮件、项目汇报PPT的修改记录,全部打包发到行业群里,让大家看看你是怎么‘培养’员工的。”

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

然后他说了一句话,声音很低:“你狠。”

“不是我狠,是你逼的。”

第13节 补偿到账

当天下午,周晓曼通知我去公司办离职手续。

我到公司的时候,是下午三点。办公楼里一切如常,同事们该敲代码的敲代码,该开会的人聚在会议室里。没有人注意到我走进来,也没有人跟我打招呼。

我走到人事办公室,周晓曼已经在等我了。桌上摆着一份离职协议,一式三份,每份都已经盖好了章。

“小林,你看看,没问题就签字。”

我坐下来,把协议从头到尾看了一遍。N+1补偿,金额没错,发放日期写的是“签署后三个工作日内”。

“周姐,补偿金什么时候到账?”

“财务说这两天就会打到你卡上。”

我点了点头,拿起笔,在每一份协议上签了字。

周晓曼收好协议,递给我一张纸:“这是离职证明,你收好。”

我接过来看了一眼,上面写着“因个人原因申请离职”,措辞标准,没有任何问题。

“谢谢周姐。”

“不客气,”她看着我,犹豫了一下,说,“小林,以后有什么打算?”

“换一个环境。”

“也好,”她说,“你还年轻,有的是机会。”

我没接话。

从人事办公室出来,我去工位收拾东西。三年的积累,最后装进了一个纸箱:一个键盘,一个水杯,几本技术书,一盆快枯死的绿萝。

林峰走过来,站在我旁边,看着我收拾。

“师傅,你真的走了。”

“嗯。”

他沉默了一会儿,从口袋里掏出一个信封,递给我:“这是大家凑的一点心意。”

我打开信封,里面是一张贺卡,封面上印着一行字:“前程似锦”。翻开,里面密密麻麻写满了签名,大概有二三十个人。有些名字我认识,有些我不认识。

我合上贺卡,放进口袋里。

“替我谢谢大家。”

“师傅,你以后还写博客吗?”

“写。”

“那我还能问你技术问题吗?”

“可以。”

他笑了,笑得有点勉强:“那师傅,你保重。”

“你也是。”

我抱起纸箱,走出了办公室。

走到电梯口的时候,我回头看了一眼。走廊尽头,林峰还站在那里,看着我。我冲他点了点头,走进了电梯。

电梯门关上的那一刻,我长长地呼出了一口气。

三年的青春,就装在这个纸箱里了。

第14节 沈明辉的道歉信

回到家,我把纸箱放在墙角,还没来得及拆开,手机就响了。

是林峰打来的。

“师傅,沈总让我转交一个东西给你。”

“什么东西?”

“一个信封。他说让你务必看一下。”

我沉默了几秒,说:“你帮我拆开看看,里面是什么。”

林峰拆开信封,过了一会儿说:“是一封信,手写的。”

“写的什么?”

林峰念了起来。

“小林:

当你看到这封信的时候,你应该已经办完离职手续了。有些话,当面说不出口,写下来反而容易一些。

首先,我要跟你道歉。为这三年里所有对你不公平的对待道歉。庆功宴漏掉你,是我的疏忽。验收会上没有提你的名字,是我的私心。绩效评定给你打B,是我不够公正。我有很多理由来解释这些事,但说到底,就是一句话:我不够重视你。

你是一个很好的技术人员,甚至可以说,是我带过的最好的。但这个项目能顺利上线,你的贡献最大,这一点我心里很清楚。只是有些时候,作为管理者,我不得不做一些平衡。这种平衡,牺牲的往往是像你这样不会争的人。

我知道现在说这些已经晚了。你找到了更好的去处,我替你高兴。真的。

如果以后有机会,希望能再跟你合作。

沈明辉”

我听完,沉默了很久。

“师傅,这封信……你要不要?”

“你帮我收着吧。”

“好。”

挂了电话,我坐在沙发上,看着墙角那个纸箱,发了一会儿呆。

我老婆从厨房探出头来:“怎么了?”

“沈明辉写了一封道歉信。”

“写的什么?”

“大概意思就是他错了,希望我原谅他。”

“那你原谅他吗?”

我想了想,说:“不重要了。”

第15节 新公司的第一天

周一早上八点半,我准时出现在星耀科技的大楼门口。

苏敏已经在等我了。她穿着一件深蓝色的西装外套,手里端着一杯咖啡,看见我走过来,微笑着迎上来。

“林工,欢迎加入星耀。”

她带我走进大楼,刷卡通过了闸机。电梯里,她简单地跟我介绍了一下今天的安排:“上午我带你认识一下团队,下午CTO想跟你聊聊后续的项目规划。工位已经准备好了,你看看还缺什么,直接跟我说。”

电梯到了六楼,门打开,眼前是一个开放式的办公区。落地窗,光线充足,工位之间间距很大,每个桌上都有一盆绿植。

苏敏带我走到靠窗的一个工位前,桌上放着一台全新的显示器,一个笔记本,还有一个名牌,上面印着我的名字和职位。

“这是你的工位,看看满意吗?”

我坐下来,试了试椅子的高度,刚刚好。窗外的视野很好,能看到一片绿地和一个喷泉。

“满意。”

“那好,我先带你去见团队。”

苏敏带着我走了一圈,认识了技术部的每一个人。团队平均年龄不大,大部分人看起来都在三十岁以下。每个人都很客气,叫我“林哥”或者“林工”,没有那种打量和审视的眼神。

中午,苏敏在公司的食堂请我吃了一顿饭。食堂不大,但菜品很丰富,中餐西餐都有,还有水果和酸奶。

“怎么样,还习惯吗?”她问我。

“挺好的。”

“那就好。对了,有件事我想跟你说一下。”

“什么事?”

“你前公司的系统崩溃了,你知道吗?”

我夹菜的手停了一下:“知道。”

“我听说他们到现在还没修好,客户那边损失不小。”她看着我,眼神里带着一丝探究,“你有没有兴趣接这个活儿?”

“什么意思?”

“外包,”她说,“以星耀的名义,接你们前公司的系统修复项目。你来做,工期和报价你来定。”

我放下筷子,看着她:“苏总,你这是让我回去赚他们的钱?”

她笑了:“怎么,不敢?”

“不是不敢,”我说,“是怕价格开太高,他们接受不了。”

“那你打算开多少?”

“五十万。”

苏敏端起咖啡杯,喝了一口,然后说:“我觉得可以。”

她放下杯子,看着我,眼睛里带着笑意:“这个活儿,你接不接?”

我沉默了三秒钟。

“接。”

第16节 报价

苏敏的效率很高。

周二上午,她就把外包合同拟好了。她拿着合同走进我的办公室,放在我桌上:“你看看,条款有没有需要调整的。”

我接过来,从头到尾看了一遍。合同写得很规范,项目范围、交付标准、付款方式、违约责任,每一项都清清楚楚。付款方式是预付百分之五十,验收后付尾款。

“苏总,这个预付款比例是不是高了?”

“不高,”她说,“这是你的项目,你说了算。”

我看了她一眼,她表情很平静,不像是在试探我。

“那甲方是谁?”

“星耀科技,”她说,“合同以星耀的名义签,你作为星耀的技术顾问执行。前公司那边,我已经让人去对接了。”

“他们同意了?”

“沈明辉亲自回的邮件,说同意外包合作。”苏敏顿了顿,“看来是真的急了。”

我点了点头,没再说什么。

当天下午,苏敏把报价单发了过去。五十万,工期一周,预付二十五万。

沈明辉那边没有还价。

周三上午,星耀的财务确认收到预付款。苏敏把到账截图发给我,附了一句话:“林工,可以开工了。”

我看着那张截图,心里说不上是什么感觉。五十万,相当于我在那家公司干两年的薪水。而现在,他们用这笔钱请我回去修我自己写的系统。

我打开电脑,连上了星耀的远程服务器,开始分析系统崩溃的日志。

日志量很大,光是错误日志就有几千条。但我只看了十分钟,就大致定位到了问题所在——不是代码问题,是服务器配置错误。有人在维护的时候改了一个核心参数,导致缓存服务频繁失效,数据库连接池被耗尽,最终引发连锁崩溃。

我把排查结果记录下来,然后开始写修复方案。

修复本身并不复杂,把配置回滚,重启服务,再做一轮数据一致性校验,基本就能恢复。真正花时间的,是那些被损坏的数据。

我估算了一下,纯技术修复大概需要一天,数据恢复需要两天,加上测试和验证,五天左右可以全部搞定。

我打开项目管理工具,创建了任务列表,开始一项一项地推进。

第17节 沈明辉的求助

开工第二天,沈明辉通过林峰找到了我。

林峰在微信上给我发了一条消息:“师傅,沈总想加你微信,让我先问问你同不同意。”

我想了想,回他:“让他加吧。”

几分钟后,沈明辉的好友申请弹了出来。我点了通过。

他发来的第一条消息是一段语音。我没点开听,直接回了文字:“沈总,我在工作,不方便听语音,有事请打字。”

过了几秒,他回了一段文字:“小林,系统修复进展怎么样了?”

“按计划推进,周五之前可以完成。”

“能不能再快一点?客户那边催得很紧。”

“不能。”

他沉默了一会儿,又发了一条:“那能不能先恢复部分功能?让用户可以访问,后面的慢慢修。”

“可以,但需要加钱。”

他大概没想到我会这么直接,隔了快一分钟才回复:“加多少?”

“十万。周五之前恢复核心功能,剩下的下周完成。”

“这个价格是不是有点……”

“沈总,我现在是星耀的技术顾问,不是你的下属。报价是公司定的,我只是执行。”

他又沉默了。过了大概五分钟,他回了一句:“我跟上面商量一下。”

我放下手机,继续写代码。

半个小时后,苏敏走了过来:“林工,前公司那边同意了加价方案。六十万,周五恢复核心功能。”

“知道了。”

她在我旁边站了一会儿,然后说:“林工,我能问你一个问题吗?”

“你问。”

“你现在是什么感觉?”

我停下敲键盘的手,想了想,说:“没什么特别的感觉。就是一个项目而已。”

苏敏笑了一下,没再追问,转身走了。

第18节 修复

周五下午三点,核心功能恢复上线。

我盯着监控大屏,看着那些指标曲线一点一点恢复正常。响应时间从超时降到两秒,再从两秒降到五百毫秒,最后稳定在五十毫秒以内。

运维组长在群里发了一条消息:“核心服务已恢复,所有指标正常。”

群里安静了几秒,然后炸了。

有人发了一个“666”,有人发了一排鼓掌的表情,有人直接@我,说“林工牛逼”。

我没有回复。

我关掉监控页面,打开任务列表,把“核心功能恢复”这项任务的进度条拖到百分之百,然后在备注栏里写了一行字:“已完成。剩余数据修复工作预计下周二前交付。”

苏敏走过来,手里端着一杯咖啡,放在我桌上:“辛苦了。”

“应该的。”

她看了一眼我的屏幕:“数据修复还要多久?”

“三天左右。有一些脏数据需要手工清理,比较耗时。”

“不急,按你的节奏来。”

她说完正要走,又停下来,回过头说了一句:“林工,前公司的尾款已经打过来了。”

我端起咖啡喝了一口:“知道了。”

那天晚上,我加班到八点,把数据清洗脚本写完了。关电脑的时候,手机亮了一下,是林峰发来的消息。

“师傅,系统恢复了,是你修的吗?”

“嗯。”

“赵磊在群里说,是他协调资源找的外包团队解决的。”

我看着那条消息,打了一个“哦”,又删掉了。然后重新打了一行字:“随他去吧。”

林峰回了一个委屈的表情。

我关掉手机,收拾东西下班。

走出办公楼的时候,夜风迎面吹来,带着初夏的温热和草木的气息。我站在门口,深深地吸了一口气,然后朝着地铁站的方向走去。

第19节 赵磊的阴阳怪气

系统恢复后的第三天,赵磊在行业群里发了一段话。

那个群我早就退了,但林峰把截图发给了我。赵磊的原话是:“这次系统崩溃给我们提了个醒,核心技术还是要掌握在自己手里。依赖外部人员,成本高、风险大,不是长久之计。”

下面有人回复:“赵哥说得对,核心技术必须自主可控。”

还有人问:“这次是找的哪家外包?”

赵磊回:“一家小公司,技术还行,就是报价太黑了。”

林峰把截图发过来的时候,附了一句话:“师傅,他说的‘外部人员’是你。”

我看着那段话,笑了一下。

赵磊这个人,永远有本事把别人的功劳说成自己的,把自己的责任推给别人。系统崩溃是他操作失误导致的,修复是我做的,到了他嘴里,变成了“核心技术必须自主可控”的教训总结。

我给林峰回了一条消息:“他有没有说系统是怎么崩的?”

林峰秒回:“没有。他只说是‘历史遗留问题’。”

“那你帮我把这个东西转给他。”

我把服务器配置的修改记录截图发了过去。截图上有操作人、操作时间、修改内容,清清楚楚地显示着:系统崩溃的前一天晚上,赵磊登录了服务器,修改了一个核心参数,然后退出。

那个参数不应该被修改。任何有一点常识的运维人员都知道。

但赵磊不是运维人员。他是项目经理。他大概是在调试什么东西的时候顺手改的,改完忘了还原,然后系统就崩了。

林峰收到截图后,回了一排感叹号。

“师傅,这个你哪来的?”

“服务器日志。我修复系统的时候顺便查了一下。”

“你要发出去吗?”

“不发。”

“为什么?”

“因为不值得。”

我放下手机,继续写我的数据清洗脚本。

第20节 行业的传言

赵磊在行业群里的那段话,还是传开了。

但传开的方式跟他想的不太一样。

有人在群里问了一句:“赵哥,你说的那家外包公司是哪家?报价多少?”

赵磊回:“星耀科技,报了五十万。”

群里安静了几秒,然后有人回了一句:“五十万?那不算贵啊。系统崩了三天,核心功能一周恢复,这个价格很合理了。”

又有人接话:“星耀科技的技术实力确实强,我们之前跟他们合作过,交付质量很高。”

赵磊大概没想到风向会是这样,没有再回复。

但事情没有就此结束。

有人在行业里打听了一下,知道了这次修复的核心技术人员是从原公司跳槽到星耀的,而且就是那个被庆功宴漏掉的人。

消息在几个技术群里传开了。版本越传越离谱,有人说我是被赵磊逼走的,有人说沈明辉为了省钱不给我涨薪才导致我跳槽,还有人说系统崩溃就是赵磊搞出来的,为了甩锅给我。

林峰把那些聊天记录一条一条转给我,问我是不是真的。

我没有正面回答,只回了他一句:“少看群,多写代码。”

但这件事还是传到了苏敏耳朵里。

周五下午,她把我叫到办公室,关上门,笑着问我:“林工,你在行业里火了,你知道吗?”

“不知道。”

“好几个猎头打电话到我这儿来挖你,说你技术好,有原则,是个难得的人才。”

我看着她:“你怎么回的?”

“我说,别想了,他是我们的人。”

她说完,从抽屉里拿出一个信封,推到我面前:“这是你这个项目的分成,按照公司规定,技术顾问拿百分之七十。”

我打开信封,里面是一张支票,金额是三十五万。

“多了。”

“不多,”她说,“这是你应得的。”

我收起支票,站起来:“谢谢苏总。”

“不客气,”她说,“对了,下周有个新项目,你有没有兴趣?”

“什么项目?”

“一个金融系统的架构重构,甲方是国内排名前十的银行。工期六个月,预算三百万。”

我看着她,沉默了几秒。

“有兴趣。”

第21节 沈明辉的下场

系统恢复后的第二周,前公司内部开始清算。

林峰在微信上给我实时播报。先是运维组长被叫去谈话,然后是整个项目组被要求写复盘报告。赵磊在报告里把自己摘得干干净净,把责任全部推给了“历史遗留问题”和“外部协作不畅”。

但这次没人买他的账。

客户那边的损失摆在那里。系统崩溃三天,数据损坏,核心功能瘫痪,客户的业务受到了严重影响。客户方的负责人直接给沈明辉打了电话,语气很不客气:“你们内部的问题我不管,但我的损失必须有人负责。”

沈明辉压不住了。

周三下午,公司高层召开了紧急会议。林峰说会议开了四个小时,散会的时候,每个人的脸色都不好看。

周四上午,通知下来了。

赵磊被调岗,从项目经理降为普通职员,负责文档整理和会议纪要。沈明辉被降职,总监的头衔被撤了,降为高级经理,薪资同步下调。

林峰把通知截图发给我,问:“师傅,你看到了吗?”

我点开截图,扫了一眼,回了一个字:“嗯。”

“你不高兴吗?”

我想了想,回他:“谈不上高兴不高兴。他们怎么样,跟我已经没有关系了。”

“师傅,你真的放下了?”

“不是放下,”我说,“是不值得再花精力去想。”

林峰发了一个大拇指的表情,然后说:“师傅,我下周也提离职了。”

我看了那条消息,没有马上回复。过了几秒,我问他:“想好了?”

“想好了。我投了几家公司的简历,拿到了一个offer,薪资涨了百分之四十。”

“哪家公司?”

“不是星耀,”他说,“我知道星耀很好,但我想自己去闯一闯。”

我看着那行字,突然觉得这小子真的长大了。

“那就去吧。”

“师傅,以后我遇到问题还能问你吗?”

“可以。”

他发了一个笑脸,然后说:“师傅,谢谢你。”

我关掉微信,继续写代码。

第22节 林峰的跳槽

林峰正式提离职那天,给我打了一个电话。

“师傅,我今天把离职申请交了。”

“沈明辉批了吗?”

“批了。他没说什么,就签了字。”

“补偿呢?”

“N+1,一分没少。周姐办的,很痛快。”

“那就好。”

电话那头沉默了一会儿,然后林峰说:“师傅,我想请你吃顿饭,感谢你这几年对我的照顾。”

我说好。

周五晚上,我们约在公司附近的一家烧烤店。我到的时候,林峰已经坐在那里了,桌上摆了一盘花生毛豆和两瓶啤酒。

他看见我,站起来,有点拘谨地笑了笑:“师傅,你来了。”

我坐下,开了一瓶啤酒,给他倒了一杯,给自己倒了一杯。

“入职时间定了吗?”

“下个月一号。”

“公司怎么样?”

“还行,做电商的,技术栈跟之前差不多。团队不大,但 leader 说可以让我带两个人。”

“不错,有进步。”

他端起酒杯,敬了我一下:“师傅,这杯我敬你。谢谢你带我入门,教了我那么多东西。”

我端起酒杯,跟他碰了一下:“是你自己肯学。”

他喝了一口,放下杯子,低头看着桌面,沉默了一会儿。

“师傅,其实我一直想跟你说一件事。”

“你说。”

“那次庆功宴,我知道他们没叫你。我本来想跟你说的,但我不敢。”

我看着他,没说话。

“我怕说了你难受,也怕说了之后,你去找他们理论,把事情闹大。我当时想,多一事不如少一事。”他抬起头看着我,“师傅,对不起。”

我端起酒杯,喝了一口,然后把杯子放下。

“林峰,你记住一句话。”

他看着我。

“在职场上,你可以善良,但不能软弱。你可以不争,但不能没有底线。那天的事,你没有错。错的是那些做决定的人。”

他点了点头,眼眶有点红。

那天晚上,我们喝到了很晚。聊技术,聊行业,聊未来的规划。他问我新公司怎么样,我说挺好的,老板靠谱,团队也不错。

他问我还恨不恨沈明辉和赵磊。

我说:“不恨了。恨一个人太累了。我现在过得比他们好,这就是最好的报复。”

他笑了,笑得很大声。

第23节 年终聚会

十二月底,星耀科技举办了年度总结大会。

苏敏提前一周通知我,说让我准备一个发言。我说我不会发言,她说不行,你是今年的最佳新人,必须上台。

我说我不是新人,我是社招进来的。

她说在我眼里,第一年都是新人。

年会在一家五星级酒店的宴会厅举行,现场布置得很隆重,舞台两侧的大屏幕循环播放着公司的宣传片。台下坐了三百多人,黑压压的一片。

我的座位在第一排,旁边是苏敏和CTO。

颁奖环节进行到一半的时候,主持人念到了我的名字:“年度最佳贡献奖——林峰技术部。”

我站起来,整了整西装,走上台。

主持人递给我一个话筒,台下响起了掌声。我站在台上,看着下面那些面孔,有的熟悉,有的陌生。他们都看着我,等着我说话。

我沉默了几秒,然后开口了。

“谢谢公司给我这个奖。今年对我来说是很特别的一年,我从上一家公司离职,加入了星耀。说实话,刚来的时候,我没什么信心。我不知道自己能不能适应新的环境,能不能融入新的团队。”

台下很安静。

“但事实证明,我的担心是多余的。这半年,我做了几个项目,学到了很多东西,也认识了一群很棒的同事。这个奖不是给我一个人的,是给我们整个技术部的。”

掌声又响了起来。

我鞠了一躬,走下台。

回到座位,苏敏侧过头来,小声说:“讲得不错。”

“紧张得手心全是汗。”

她笑了。

年会结束后,我一个人站在酒店门口等车。夜风很冷,我缩了缩脖子,把大衣的领子立起来。

手机震动了一下。我掏出来一看,是林峰发来的消息:“师傅,我看到你们公司年会的照片了,你上台领奖了?”

“嗯。”

“帅!”

我笑了一下,正要回复,又收到了一条消息。

这条消息来自一个陌生号码。

“小林,恭喜你。听说你在新公司干得很好。沈明辉。”

我盯着那行字,看了几秒钟。

然后我把手机放回口袋里,没有回复。

车来了,我拉开车门,坐进去。车子驶入夜色,城市的灯光在车窗上一盏一盏地掠过。

第24节 前同事的问候

年会之后,我的微信开始陆续收到一些前同事的消息。

有的人是来祝贺的,说看到我在新公司的发展很好,替我高兴。有的人是来打听消息的,问星耀还招不招人,待遇怎么样。还有的人,纯粹是来叙旧的,说好久不见,有空一起吃饭。

这些人里,有些在我离职的时候连一句再见都没说过。

我一条一条地看,一条一条地回。该回复的回复,该敷衍的敷衍,该忽略的忽略。

有一条消息引起了我的注意。是以前技术部的一个同事,叫王磊,跟我同期进的公司。他在消息里说:“林哥,听说赵磊被调岗以后,干了一个月就辞职了。现在在一家小公司做项目助理,工资降了不少。”

我没有回复这条消息。

不是因为我不想知道,而是因为我觉得,这些事情已经跟我没有任何关系了。

赵磊过得怎么样,沈明辉过得怎么样,那家公司现在怎么样了——这些问题的答案,对我来说已经没有意义了。

我的生活在前方,不在后方。

腊月二十八,我请了一天假,提前回老家过年。

高铁上,我靠在窗边,看着窗外飞速掠过的田野和村庄。手机响了,是苏敏发来的消息:“林工,新年快乐。明年继续加油。”

我回:“新年快乐。明年继续。”

她发了一个红包,我点开,金额是888。

我笑了一下,收了红包,回了一句:“谢谢老板。”

她回了一个大笑的表情。

列车驶入隧道,车窗外的光线暗了下来,然后又亮起来。

我关掉手机,靠在座椅上,闭上眼睛。

新的一年,还有很多代码要写,还有很多项目要做,还有很多路要走。

但这一次,我不再是一个人了。

第25节 赵磊的私信

除夕那天晚上,我收到了一条私信。

是赵磊发来的。

他没有加我好友,是通过临时会话发的。消息很长,密密麻麻的一大段,我花了大概两分钟才读完。

“小林,我知道你可能不想看到我的消息。但我还是想跟你说几句话。

以前的事,是我不对。抢你的功劳,甩锅给你,庆功宴没叫你,这些都是我做的。我当时觉得,职场就是这样,你不抢别人就会抢,你不甩别人就会甩到你头上。我从来没觉得自己做错了什么。

但这几个月,我经历了很多事。被调岗,被降薪,最后被迫离职。新工作找得很不顺利,投了几十份简历,面试通知没几个。有一家公司的人力资源在面试的时候问我,为什么从上一家公司离职,我答不上来。

我开始反思自己。我发现我工作了这么多年,真正拿得出手的东西,没有几样。那些所谓的业绩和成果,有多少是别人的功劳,我自己心里清楚。

小林,我不求你原谅我。我只是想跟你说一声对不起。这句话迟到了三年,但我是真心的。

祝你前程似锦。”

我看完这段消息,把手机放在桌上,去厨房倒了一杯水。

窗外有人在放烟花,砰的一声,在夜空中炸开,五彩缤纷的光芒透过窗户照进来,在地板上投下一片斑驳的影子。

我端着水杯,站在窗前,看了一会儿烟花。

然后我走回桌前,拿起手机,打了几个字,发了过去。

“收到了。新年快乐。”

我没有拉黑他。

不是因为原谅了他,而是因为不值得再为他浪费一个操作。

第26节 新的项目

春节后开工的第一天,苏敏把我叫到办公室。

“林工,银行那个项目正式启动了。甲方那边点名要你做技术负责人,你有没有信心?”

“有。”

“好,”她从桌上拿起一份文件,递给我,“这是项目章程,你看一下。团队由你组建,人员你挑,预算你定。我只提一个要求。”

“什么要求?”

“按时交付,质量达标。”

我接过文件,翻开第一页,扫了一眼项目概述。三百万的预算,六个月的工期,覆盖核心系统重构、数据迁移、性能优化三大模块。

“没问题。”

苏敏看着我,笑了一下:“我就喜欢你这种干脆。”

我拿着项目章程走出她的办公室,回到工位,打开电脑,开始搭建项目框架。

手机震了一下。是林峰发来的消息:“师傅,开工大吉!”

我回他:“开工大吉。”

他又发了一条:“师傅,我这边也接了一个新项目,带四个人。有点紧张。”

“紧张是正常的。做好规划,控制好节奏,遇到问题及时沟通。”

“好。师傅,等我项目做完了,请你吃饭。”

“等你项目做完了再说。”

我放下手机,把注意力集中到屏幕上。

窗外,阳光正好。远处的写字楼在阳光下泛着光,天空湛蓝,没有一丝云。

新的一年,新的项目,新的开始。

(全文完)

创作声明:本故事纯属虚构,人物事件均为艺术创作,由AI辅助完成,理性阅读,无任何现实指向,请勿模仿与对号入座!