楔子
公司项目拿了行业大奖,庆功宴连开了三天,没人通知我。我坐在工位上刷到同事们发的朋友圈——海鲜自助、KTV、第二场烧烤,九宫格照片里每个人都笑得很开心。三天后总监沈琳打来电话,声音急得像着了火:“沈浩你快过来!系统崩了,只有你能处理!”我说:“沈总,我前天已经签完离职了。”
第1节 获奖了,但没我
周一早会上,沈琳站在投影幕布前,宣布了一个消息。
“告诉大家一个好消息,咱们的‘天枢’项目获得了年度科技创新奖,这是行业内最高级别的奖项之一。”
会议室里响起一阵掌声。有人吹了口哨,有人拍桌子,气氛热烈得像过年。
沈琳双手向下压了压,示意大家安静:“为了庆祝,公司安排了庆功活动,今天晚上开始,连续三天,各部门轮流参加。”
投影幕布上打出了庆功安排表——第一天海鲜自助,第二天KTV包场,第三天户外烧烤。下面还附了一行小字:具体参加人员由各部门负责人通知。
散会后我回到工位,继续写代码。
中午吃饭的时候,隔壁工位的小刘路过我旁边,拍了拍我的肩膀:“浩哥,今晚海鲜自助,你去不去?”
“没人通知我。”
他愣了一下:“不可能吧,你是天枢的主力啊。”
“真没人通知我。”
他挠了挠头,表情有些尴尬:“那可能是沈总那边还没通知到位,你再等等。”
我点了点头,没说什么。
下午五点,同事们开始陆续收拾东西。有人换上了外套,有人补了口红,三三两两地往电梯口走。王磊从总监办公室出来,手里拿着车钥匙,大声说了一句:“兄弟们,今晚不醉不归!”
一群人哄笑着响应。
王磊路过我工位的时候,脚步停了一下,看了我一眼,然后什么也没说,继续走了。
我坐在工位上,盯着屏幕上的代码光标闪了又闪。
六点半,办公室安静下来了。
我关掉电脑,收拾好东西,背着包走出公司大门。等电梯的时候,手机震了一下,是工作群里发来的照片——一大桌子菜,螃蟹、龙虾、刺身拼盘,摆得满满当当。王磊坐在C位,端着一杯红酒,对着镜头比了个耶。
电梯到了。
我走进去,按了一楼。
电梯门关上的那一刻,我听见楼道里传来王磊的声音,像是在跟谁说话:“沈浩没通知吧?算了,他去了大家也不自在。”
电梯下行,信号断了。
第2节 第二天的朋友圈
第二天早上,我照常九点到公司。
打卡的时候碰见前台小周,她看见我,表情有些不自然,打了个招呼就低下头假装整理文件。我没在意,刷了卡走进办公区。
工位上放着一杯咖啡,还冒着热气。杯底压着一张便签纸,上面写着一行字:“哥,给你带的。——林晓”
我拿起咖啡喝了一口,热的,不加糖,她知道我的口味。
打开电脑,登录微信,朋友圈的红色提示标着三位数。
我点开看了一眼,全是庆功宴的照片。
第一波是昨晚的海鲜自助。市场部的周姐发了一组九宫格,配文是“庆功宴第一弹,海鲜吃到撑”,照片里她端着一只帝王蟹,笑得很灿烂。技术部的小刘发了一张大合照,一群人挤在镜头前,背后是堆成山的贝壳和虾壳。
第二波是今晚的KTV。有人发了小视频,配乐是某首抖音热歌,画面里王磊拿着麦克风闭着眼睛唱得投入,下面一排点赞和评论:“王总唱得太好了”“技术部麦霸实至名归”。
我划了几张,把手机翻了过去,继续写代码。
中午林晓端着饭盒坐到我对面,压低声音说了一句:“哥,昨晚你怎么没来?”
“没人通知我。”
她的筷子停了一下:“不可能吧,天枢项目你写了六成以上的代码,庆功宴不叫你?”
“事实就是这样。”
她放下筷子,拿起手机,翻了一会儿,然后把屏幕转向我。
是她跟另一个同事的聊天记录。
“沈浩昨晚怎么没来?”
“别提了,沈总那边说不用通知他。”
“为什么?”
“王磊说沈浩不合群,叫他去了大家放不开。沈总就同意了。”
我看着那段聊天记录,没有说话。
林晓收回手机,看着我,欲言又止。
我端起咖啡喝了一口,已经凉了。
第3节 第三天的表彰会
庆功第三天,公司召开了全员表彰大会。
地点在办公楼附近的会议中心,能容纳三百人的大厅坐得满满当当。舞台背景是巨大的LED屏,滚动播放着天枢项目的宣传片。激昂的背景音乐配上炫目的特效,看起来确实很有排面。
沈琳穿着一身干练的白色西装,踩着高跟鞋走上舞台,接过主持人递来的话筒。
“各位同事,大家好。今天站在这里,我非常激动。天枢项目能够获得这个奖项,离不开每一位团队成员的付出和努力。”
大屏幕上开始滚动获奖名单。项目总监沈琳,副总监王磊,技术部核心成员若干。我的名字没有出现在上面。
沈琳开始逐一感谢。
“感谢王磊副总监在项目关键阶段的统筹协调,感谢市场部的大力推广,感谢技术部全体同仁的日夜奋战。”
她感谢了所有人。
唯独没有提我的名字。
我坐在最后一排,靠墙的位置。旁边的座位空着,前面的同事在鼓掌,我也跟着鼓掌。手掌拍在一起,发出空洞的声响。
王磊被点名上台,沈琳把一束鲜花递给他,两个人并肩站在聚光灯下合影。台下闪光灯噼里啪啦地亮成一片。
散会后,我随着人流往外走。走到门口的时候,赵姐从旁边追上来,跟我并肩走了一段。
“沈浩。”
“嗯。”
“你太老实了。”
我没接话。
她叹了口气,加快脚步走远了。
我站在会议中心的台阶上,看着同事们三三两两地讨论着晚上去哪吃烧烤。阳光很好,照在身上暖洋洋的。我站了一会儿,转身往公司的方向走。
第4节 猎头的电话
表彰会结束的第二天下午,我接到了一个电话。
号码是陌生的,归属地显示北京。我接起来,对面是一个声音干练的女性。
“您好,请问是沈浩先生吗?”
“我是。”
“我是锐仕猎头的顾问Amy,方便聊几分钟吗?”
“你说。”
“我们受一家互联网公司的委托,正在寻找一位技术副总。他们看了您的履历,对您在‘天枢’项目中的技术贡献非常认可,想跟您聊聊。”
“哪家公司?”
她说了一个名字。我知道那家公司,业内排名前三的独角兽,去年刚完成D轮融资,估值近百亿。
“薪资方面,对方给出的预算是您现在薪资的两倍左右,外加期权。具体可以面谈。”
我握着手机,沉默了几秒。
“我考虑一下。”
“好的,我稍后把详细JD发到您邮箱,您看完如果感兴趣,随时联系我。”
挂了电话,我坐在工位上,看着屏幕上密密麻麻的代码。
两倍薪资。期权。技术副总。
我在这家公司干了八年,从初级工程师做到技术总监,年薪涨了不到三倍。沈琳是空降的,来了两年,年薪是我的两倍不止。王磊跟她进来的,水平一般,但会来事,升得比谁都快。
我打开邮箱,看到了猎头发来的职位描述。公司规模、业务方向、团队架构,每一项都比现在强。
我没有立刻回复。
我打开电脑上一个隐藏的文件夹,里面是我这八年写的所有核心模块的源代码。每一个模块都是我一行一行敲出来的,从架构设计到细节实现,从数据库表结构到接口文档,全在我脑子里。
公司没有任何一份完整的架构文档。
沈琳让我补过,我写了一半,停下了。
我关掉文件夹,拿起手机,给猎头发了一条消息:“方便安排面试。”
第5节 沈琳的谈话
猎头电话之后的第三天,沈琳把我叫进了办公室。
她坐在办公桌后面,面前放着一杯美式咖啡,笔记本电脑开着,屏幕上是我的绩效考核页面。她指了指对面的椅子,示意我坐下。
“沈浩,最近状态怎么样?”
“还行。”
她端起咖啡喝了一口,放下,身体向前倾了一点,做出一种推心置腹的姿态。
“天枢项目做得很好,你的贡献公司是看到的。下半年有晋升名额,我已经把你的名字报上去了。”
“谢谢沈总。”
“不过,”她话锋一转,“公司最近在做知识沉淀,你手头那几个核心模块,一直没有完整的文档。你看是不是抽时间补一下?方便团队后续维护。”
“好,我尽快。”
“不用急,质量第一,”她笑了笑,“另外,王磊那边会协助你对接受,你有什么问题可以找他沟通。”
我点了点头,站起来走出了办公室。
回到工位,林晓的脑袋从隔板上方探出来,压低声音说了一句:“哥,我刚才看见王磊在翻你的代码仓库。”
“他翻就翻吧。”
“不是,”她的声音压得更低了,“我听说沈总已经在安排他接手你的模块了。”
我握着鼠标的手停了一下。
“你确定?”
“HR那边的朋友说的,王磊的绩效考核里新增了一项——‘承接核心模块的技术交接’。这不是明摆着要架空你吗?”
我盯着屏幕上的代码光标,闪了又闪。
我打开那个隐藏的文件夹,看了一眼里面的源代码,然后关掉了。
我拿起手机,给猎头发了一条消息:“面试时间定了吗?”
她秒回:“下周三下午两点,方便吗?”
“方便。”
第6节 交接的陷阱
沈琳找我谈话的第二天,王磊就过来了。
他搬了一把椅子坐在我工位旁边,手里拿着一个笔记本,封皮上印着公司的logo,翻开第一页是空白的。他把笔帽咬开,翘起二郎腿,往椅背上一靠。
“浩哥,沈总让我跟你对接一下核心模块的事。你大概什么时候能把文档整理出来?”
“这周吧。”
“行,你整理好了发我就行,我看看就行。”
他没有打开那个笔记本,没有记一个字,甚至连笔都没有拿起来过。他说完那句话之后就开始刷手机,刷了大概五分钟,站起来拍了拍我的肩膀:“辛苦了浩哥,你慢慢弄,不急。”
然后他走了。
我坐在工位上,看着他留下的那把空椅子,坐了一会儿。
林晓从隔板后面探出头来,看了一眼王磊的背影,又看了我一眼,没有说话。
我打开文档编辑器,开始写技术文档。
写到第三天的时候,我停下来,从头到尾看了一遍自己写的内容。API接口、数据库表结构、缓存策略、负载均衡配置,每一个细节都写得清清楚楚。任何一个有一定经验的工程师拿到这份文档,都可以无缝接手我的工作。
我盯着屏幕上那行标题看了很久。
然后我按下了关闭按钮,没有保存。
我把文档编辑器最小化,打开了一个新的工程文件,开始做另一件事——在核心代码里加一段注释。看起来像是普通的开发备注,实际上是一个运行依赖说明。如果有人在不了解完整架构的情况下修改这段代码,会触发连锁报错。
不是恶意代码,只是一个保险。
做完这件事之后,我把代码提交了,提交信息写的是“优化性能,调整部分参数”。
然后我打开抽屉,拿出那张已经打印好、签好名的离职信,装进信封里。
第7节 离职的决定
周三下午,我去参加了面试。
面试地点在市中心的一栋甲级写字楼,三十六楼,落地窗能看到整个城市的天际线。面试官是对方的CTO,一个四十岁左右的中年男人,戴着一副黑框眼镜,说话语速不快,但每个问题都问在点上。
他问了我两个技术问题,我回答了。他又问了一个架构设计的问题,我画了一张草图给他看。他看完之后点了点头,把草图收起来,说了一句:“你什么时候能入职?”
“一个月后。”
“太久了,两周行不行?”
“我尽量。”
他站起来,跟我握了握手:“欢迎加入。”
走出写字楼的时候,阳光很好。我站在门口的台阶上,抬头看了一眼那栋大楼的玻璃幕墙,蓝天白云映在上面,像一幅画。
我掏出手机,给我老婆发了一条消息:“面试过了。”
她秒回:“太好了!晚上吃什么?我给你做。”
我回:“红烧肉。”
她发了一个OK的手势。
回到家的时候,她已经做好了饭。红烧肉、清炒时蔬、一碗番茄蛋汤。她坐在餐桌对面,看着我吃了一会儿,问了一句:“新公司怎么样?”
“挺好的,薪资翻倍,带团队。”
“那你这边什么时候提离职?”
“明天。”
她点了点头,没有多问。结婚这么多年,她从来不干涉我的职业决定,每次都是同一句话——“你开心就行。”
吃完饭我洗碗,她靠在厨房门口看着我,忽然说了一句:“你在那家公司干了八年,舍得吗?”
我冲掉盘子上的泡沫,放进沥水架里。
“没什么舍不得的。”
第8节 最后一个任务
第二天上午,沈琳把我叫到办公室,安排了一个紧急任务。
“客户那边有个新需求,要在现有系统上加一个数据看板,三天内上线。你辛苦一下,加个班。”
“好。”
我回到工位,开始评估工作量。数据看板涉及到三个数据源的对接,前端展示倒是不复杂,但后端的数据清洗和聚合逻辑需要重新写。正常工期至少五天,压缩到三天意味着每天至少要干到晚上十点。
我没有拒绝,开始写代码。
第一天,我完成了数据源的对接和清洗逻辑。
第二天,我完成了聚合逻辑和接口开发。
第三天上午,我完成了前端联调和测试。整个功能跑了一遍,没有问题。我写了一段部署文档,连同代码一起提交了。
提交之前,我在核心数据处理模块里加了一段注释。看起来像是一行普通的参数说明,实际上是整个数据看板的运行前提——如果后续有人修改了这个模块的输入参数格式而没有同步调整下游逻辑,看板会直接崩溃。
提交信息写的是:“完成数据看板开发,已测试通过。”
然后我关掉IDE,打开抽屉,拿出那个装好离职信的信封,走进了沈琳的办公室。
沈琳正在打电话,看见我进来,指了指对面的椅子示意我坐下。她挂了电话之后,看了一眼我放在桌上的信封,笑容凝固了一下。
“这是什么?”
“我的离职信。”
她没有立刻拿起来看,靠在椅背上,双手交叉放在桌上,看着我。
“为什么?”
“个人原因。”
“薪资问题?还是团队问题?”
“都不是,就是想换个环境。”
她沉默了几秒,拿起信封拆开,看了一眼里面的内容,放回桌上。
“沈浩,公司很看重你,你在这个节骨眼上走,对项目影响很大。”
“文档我会整理好,代码已经全部提交了。”
“这不是文档和代码的问题,”她的语气变得柔和了一些,“你在这个团队八年了,感情上舍得吗?”
“舍不得,但还是要走。”
她又沉默了几秒,然后拿起笔,在离职信上签了字。
“那交接做完再走。”
“好。”
我拿起签好字的离职信,站起来,走出了办公室。
回到工位,林晓凑过来,小声问了一句:“哥,你真要走?”
“嗯。”
她低下头,没有再说话。
第9节 离职审批
离职审批走了一个星期。
这一个星期里,我每天正常上班,正常写代码,正常开会。王磊没有再提交接的事,我也没主动找他。文档我写了一部分,但核心模块的部分始终是空的。
周五下午,赵姐把我叫到了人事办公室。
她关上门,给我倒了一杯水,坐在我对面,看着我。
“沈浩,你真的想好了?”
“想好了。”
“你是我见过技术最好的人,也是最能忍的人,”她叹了口气,“沈琳那个人,不值得你给她卖命八年。”
我没说话。
“新公司那边定了吗?”
“定了。”
“那就好,”她端起杯子喝了一口水,“离职手续我给你加急办,下周五之前全部走完。”
“谢谢赵姐。”
她摆了摆手:“别谢我,是我该替公司跟你说声抱歉。你这样的员工,公司留不住,是公司的损失。”
我端着那杯水,没有喝,杯壁的温度透过指尖传上来,温的。
第10节 最后一天
最后一天上班,我带了一个纸箱来公司。
工位上的东西不多,一个键盘,一个水杯,几本技术书,一盆绿萝。绿萝是林晓送我的,养了两年,藤蔓已经垂到了桌沿下面。
我把东西一样一样装进纸箱里。键盘放进去的时候,手指在按键上停了一下——这个键盘我用了五年,空格键已经被磨得发亮,F键上的字母磨掉了一半。
林晓站在我旁边,看着我收拾东西,眼圈有点红。
“哥,你走了我怎么办?”
“你技术没问题,自信一点。遇到解决不了的问题,可以先自己查,查不到再给我发消息。”
“你会回吗?”
“会的。”
她低下头,用力点了点头。
王磊从走廊那头走过来,路过我工位的时候停了一下,看了一眼我桌上的纸箱,笑了一下:“走了啊?可惜了。”
我没抬头,继续把绿萝放进纸箱里。
他站了几秒,见我没搭理他,讪讪地走了。
下午五点,我办完了最后一道手续,把工卡交给了前台。小周接过工卡的时候,说了一句:“浩哥,以后常回来看看。”
“好。”
我抱着纸箱走出公司大门。秋天的风有点凉,吹在脸上很舒服。我站在门口,回头看了一眼那栋我进出了八年的办公楼,然后转身走向停车场。
手机震了一下,是林晓发来的消息:“哥,保重。”
我坐进车里,把纸箱放在副驾上,发动了车子。
开出停车场的时候,夕阳正好落在大楼玻璃幕墙的顶端,反射出一片金红色的光。我踩下油门,汇入了晚高峰的车流中。
第11节 新生活的第一天
离职后的第一天,我睡到上午九点半才醒。
阳光透过窗帘的缝隙照进来,在卧室地板上画出一道金色的长条。我侧过身,看了一眼手机,没有未读消息,没有工作群的艾特,没有钉钉的提示音。世界安静得像按下了暂停键。
我翻了个身,又躺了十分钟,然后起床洗漱。老婆已经去上班了,餐桌上留了一碗小米粥和一个水煮蛋,旁边压了一张便签:“粥在锅里热的,蛋剥好了,中午自己解决。”
我坐在餐桌前,喝完粥,剥开鸡蛋吃了。然后洗了碗,擦干手,走到阳台上站了一会儿。楼下的小区里有几个老人在下棋,一个小孩子骑着三轮车在甬道上转圈,阳光晒在脸上暖洋洋的。
下午我去菜市场买菜。好久没去过菜市场了,以前都是下班后在超市随便买点,或者直接点外卖。菜市场的摊位一个挨着一个,卖菜的阿姨扯着嗓子吆喝,鱼摊上的水溅到地上,湿漉漉的。我买了一斤排骨、一把青菜、几根葱,还顺手买了一兜草莓。
晚上老婆回来,看见桌上摆好的饭菜,站在厨房门口愣了一下。
“你做的?”
“不然呢?”
她换了鞋,洗了手,坐下来夹了一块排骨咬了一口,点了点头:“可以啊,离职了厨艺见长。”
“以后天天给你做。”
她笑了一下,没有接话,低头继续吃饭。
吃完饭我们一起洗碗。她站在左边,我站在右边,水龙头的水哗哗地流着,她递给我一个盘子,我接过来冲干净放进沥水架。两个人没有说话,但也不觉得尴尬。
洗完之后她靠在料理台边上,擦着护手霜,忽然说了一句:“你看起来比上班的时候轻松多了。”
“是吗?”
“嗯,眉头没那么皱了。”
我没有照镜子,不知道自己眉头皱了多久了。八年了,可能早就习惯了。
那天晚上我早早洗了澡,躺在床上看书。老婆在旁边刷手机,刷了一会儿忽然把手机递到我面前。
屏幕上是一个微信群的消息提示,来自前公司的技术群。消息数量已经显示了99+,最新几条是运维发的:“核心服务全部宕机,重启无效,回滚也失败,在线等,急。”
我看了一眼,把手机还给她。
她接过手机,看了我一眼:“你不看看?”
“不看了。”
她没再说什么,把手机放到床头柜上,关了灯。
黑暗中,我睁着眼睛躺了一会儿,然后翻了个身,闭上了眼睛。
第12节 群里的混乱
第二天早上,我打开手机,前公司的技术群已经炸了。
未读消息四百多条,我往上翻了翻,大致了解了情况:凌晨三点,系统开始出现异常,先是响应变慢,然后是部分接口超时,到了凌晨五点,核心服务全部宕机。运维团队尝试了重启服务、回滚版本、扩容服务器,所有常规手段都用上了,没有任何效果。
王磊在群里发了一条消息:“正在排查,大家不要慌。”
这条消息是凌晨四点发的。
到了早上七点,他又发了一条:“已经定位到问题了,正在修复。”
但到了上午九点,系统仍然没有恢复。群里开始有人质疑:“王总,到底什么问题?怎么还没好?”
王磊没有回复。
十点的时候,运维发了一条消息:“王副总监,我们按照你说的方案操作了,还是不行。你能不能到现场看一下?”
王磊回了一句:“我在路上了。”
十一点,系统仍然处于瘫痪状态。客户的投诉电话已经打到了销售部和市场部,据说有客户直接说要解约。
群里开始出现各种猜测和抱怨。
有人问:“这个模块以前是谁负责的?”
有人回:“沈浩。”
群里安静了几秒。
然后有人发了一条:“沈浩不是已经离职了吗?”
又是一阵沉默。
我放下手机,去厨房给自己倒了一杯水。窗外的阳光很好,楼下有人在遛狗,一只金毛叼着球在草地上跑来跑去。我靠在窗台上,喝了一口水,看着那只金毛把球叼回来放在主人脚边,摇着尾巴等下一次投掷。
手机又震了一下。
是林晓发来的私信:“哥,系统崩了,你知道了吗?”
我回:“看到了。”
“王磊搞不定,运维也搞不定,大家都在群里@你。”
我没有回复那条消息,把手机放在茶几上,走进书房,打开了电脑。
第13节 求助的电话
第三天上午,沈琳的电话打过来了。
我正在书房里看书,手机在茶几上震动,屏幕上显示的名字是“沈琳”。我看了两秒,接了起来。
“沈浩,系统崩了,你应该知道了吧?”
“知道。”
“现在情况很严重,客户那边已经在闹了,高层也在施压。我们试了所有办法,都不行。只有你能处理。”
我靠在椅背上,没有说话。
“你能不能过来一趟?帮我们看看问题出在哪。”
“沈总,我前天已经签完离职了。”
电话那头沉默了几秒。
“我知道。你回来帮一次忙,算兼职,按顾问费算,行不行?”
“报价单我发你邮箱。”
“什么报价单?”
“你看了就知道了。”
我挂了电话,打开电脑,新建了一个Word文档,开始写报价单。
远程技术支持:每小时两千,起步四小时。
现场支持:每小时五千,起步八小时。
如需修改代码:另议。
支付方式:预付百分之五十,到账后开始服务。
我把报价单发到了沈琳的邮箱。
二十分钟后,她的电话又打过来了。
“沈浩,你这是趁火打劫。”
“明码标价,童叟无欺。”
“你以前也是公司的员工,就算离职了,回来帮个忙不是应该的吗?”
“沈总,我在公司干了八年,做了六个核心模块,没有一个署过我的名。庆功宴连开了三天,没有一个人通知我。你觉得我应该吗?”
她沉默了。
“报价单二十四小时内有效,过期重报。”
我挂了电话。
第14节 报价单
两个小时后,沈琳回复了邮件。
只有一个词:“成交。”
紧接着,公司财务给我转了一笔钱,备注是“技术顾问费预付款”。四万块,正好是远程支持八小时的费用。
我查了一下银行到账提醒,然后给沈琳回了一条消息:“远程接入地址发我。”
她秒回了一个链接。
我打开电脑,连上VPN,进入了前公司的内网。系统状态面板上一片飘红,核心服务的健康检查全部失败。我花了十分钟查看日志,又花了五分钟追踪调用链,定位到了问题的根源。
是王磊改了一段代码。
他在不知情的情况下,删掉了一行关键的依赖配置。那行配置看起来像是多余的参数,实际上是整个服务链的基石。没有它,所有上游服务都无法正常通信。
我没有立刻修复。
我截了一张图,圈出了那行被删除的配置,然后在群里发了一条消息:“问题在这里。谁动了core-service的配置文件?”
群里安静了大概一分钟。
然后王磊回了一句:“我改的。那个参数我看注释是空的,以为是冗余配置,就删了。”
“那个参数不是冗余配置,是整个服务注册中心的依赖注入标识。没有它,所有微服务之间的通信都会中断。”
群里又安静了。
我没有再说话,花了一个小时修复了配置,重启了服务,验证了所有接口的正常运行。系统状态面板上的红色警报一个一个地变成了绿色。
我在群里发了最后一条消息:“已修复。”
然后我退出了VPN,关掉了电脑。
第15节 重返公司
系统恢复之后,沈琳又给我打了一个电话。
“沈浩,你能不能来公司一趟?有些事想当面跟你聊聊。”
“什么事?”
“电话里说不清楚,你来了就知道了。”
我犹豫了一下,还是答应了。
第二天下午,我开车去了前公司。前台小周看见我,愣了一下,然后赶紧帮我开了门禁。走过办公区的时候,不少同事抬头看我,目光里带着各种复杂的情绪——惊讶、好奇、尴尬。
沈琳在会议室等我。她穿着一件灰色的西装外套,面前放着一杯已经凉了的咖啡。看见我进来,她站起来,指了指对面的椅子。
我坐下,没有寒暄,等她开口。
“沈浩,我想请你回来。”
“回来?”
“对,公司需要一个像你这样的技术核心。条件你开,薪资、职位、权限,都可以谈。”
我看着她,没有立刻回答。
“沈总,我在公司干了八年,做了六个核心模块。天枢项目获奖,表彰大会上感谢了所有人,唯独没有我。庆功宴连开了三天,我是最后一个知道的。”
她张了张嘴,想说什么,被我打断了。
“我不是来翻旧账的。我只是想告诉你,我不缺这份工作。”
我站起来。
“这次的顾问费,按合同结算就行。以后再有技术问题,可以找我,按报价单收费。”
我转身走出了会议室。
走到门口的时候,迎面碰上了王磊。他站在走廊里,手里拿着一份文件,看见我出来,脚步顿了一下,脸上的表情很复杂。
我看了他一眼,没有说话,从他身边走了过去。
走出公司大门的时候,手机震了一下。是林晓发来的消息:“哥,你刚才来公司了?”
“嗯。”
“我看到你从会议室出来了。你走了之后,沈琳在会议室里坐了很久,没出来。”
我没有回复,拉开车门,坐了进去。
发动引擎的时候,我看了一眼后视镜里那栋办公楼。秋天的阳光斜照在玻璃幕墙上,反射出一片刺眼的光芒。我挂上档,踩下油门,驶离了那个我进出了八年的地方。
第16节 沈琳的挽留
沈琳第二次给我打电话,是在我离开公司后的第三天。
那天晚上我正陪老婆在客厅看电影,手机震了一下,屏幕上显示的名字是“沈琳”。我按了静音,没有接。电话响了五六声之后挂断了,紧接着进来一条短信。
“沈浩,我是认真的。公司不能没有你。你考虑一下,条件真的可以谈。”
我把手机翻了个面,屏幕朝下,继续看电影。
老婆偏过头看了我一眼:“谁啊?”
“前总监。”
“找你回去?”
“嗯。”
“你怎么想的?”
“没怎么想。”
她没再追问,把腿蜷缩到沙发上,靠在我肩膀上。电影里男主角正在说一段很长很长的独白,我没有听进去。
过了几分钟,手机又震了一下。还是沈琳的短信。
“我知道你心里有气。但公司这几年的发展,你也看在眼里。你亲手搭建的系统,你一手带起来的团队,你真的舍得吗?”
我拿起手机,打了一行字:“沈总,搭建系统和带团队的人,没有被邀请参加庆功宴。”
发送。
然后我把沈琳的号码拉进了黑名单。
老婆看了一眼我的动作,没有说什么,伸手拿了一颗草莓递到我嘴边。我咬了一口,酸的,但还不错。
第17节 王磊的结局
事故复盘会是在系统恢复后的第四天召开的。
林晓后来在微信上给我转述了会议的全过程。高层全部到场,包括CEO和分管技术的副总裁。沈琳主持复盘,运维团队做了事故报告,详细还原了整个故障的时间线和根因分析。
报告的最后几页PPT,清楚地指出了事故的直接责任人——王磊。他在未经评审的情况下擅自修改了核心服务的配置文件,删除了关键的依赖注入标识,且修改前后没有进行任何测试。
CEO当场拍了桌子。
“一个副总监,改核心配置不需要审批?测试流程是摆设?”
会议室里鸦雀无声。
王磊试图辩解:“我当时以为那个参数是冗余的,注释是空的,而且之前也没有文档说明……”
“没有文档说明,你就可以随便改?”CEO打断他,“你是副总监,不是实习生。这点判断力都没有?”
王磊低下头,不再说话了。
最终的处罚决定在当天下午公布:王磊记大过一次,取消全年年终奖,从副总监降级为高级工程师,调离核心项目组。
消息在公司内部传开之后,有人同情,有人幸灾乐祸,更多的人是说“活该”。
林晓把这些消息一条一条转发给我的时候,我正在新公司的工位上配置开发环境。我看完她发来的聊天记录截图,回了一个字:“哦。”
她秒回:“你就这反应?”
“不然呢?”
“我以为你会高兴。”
“没什么好高兴的。他能力不行,迟早要出事,跟我没关系。”
林晓发了一个竖大拇指的表情,然后说:“哥,你真的变了。”
我放下手机,继续配置环境。
屏幕上的代码一行一行地跳动着,光标在末尾闪烁,等着我敲下第一个字符。
第18节 林晓的成长
王磊被降级之后,技术部进行了一轮架构调整。沈琳把王磊手里的大部分工作分给了其他人,其中一部分落到了林晓头上。
林晓给我发消息的频率明显变高了。
一开始是问一些技术问题,大多是具体的实现细节。我能回的尽量回,但不再像以前那样手把手地教。我会告诉她思路,告诉她从哪里入手查资料,但不会再直接给她写代码。
“哥,这个接口的并发处理我写完了,你帮我看看有没有问题?”
“你自己测了吗?”
“测了,但我不确定是不是最优解。”
“压测报告发我看看。”
她发了一份压测报告过来。我扫了一眼,数据还不错,响应时间和吞吐量都在合理范围内。有一个地方的索引没建对,可能会导致慢查询,我指了出来。
“这个地方加个联合索引,其他的没问题。”
“好的,谢谢哥!”
过了几天,她又发了一条消息:“哥,我今天独立解决了一个线上bug,运维那边都说我定位问题的速度比以前快了好多。”
“恭喜,你早就可以了。”
她发了一个笑脸。
又过了两周,她给我发了一条长长的消息,说她主动申请了一个新项目的技术负责人岗位,通过了评审,正式开始带项目了。她说这是她第一次独立负责一个完整的技术项目,既兴奋又紧张。
我看了那条消息很久,回了一句:“记住我第一次跟你说的那句话。”
她秒回:“自信一点。”
“记住了就好。”
我放下手机,靠在椅背上。窗外是新公司的写字楼,楼层比前公司高得多,能看到很远的地方。天际线在黄昏的光线中勾勒出一层金色的轮廓,像一幅安静的油画。
第19节 新公司的日子
新公司入职的第一个月,我几乎没有在晚上九点之前下过班。
不是因为加班文化,而是因为要学的东西太多了。新的业务领域、新的技术栈、新的团队协作方式,每一样都需要时间去适应。但我并不觉得累,因为每一分钟都能感觉到自己在吸收新的东西。
新老板姓周,四十出头,技术出身,说话直接但公正。入职第一周,他把我叫到办公室,聊了大概二十分钟。
“沈浩,你的履历我看过了,技术能力没问题。我对你的要求只有一个——把团队带好。”
“具体是指?”
“我不需要你一个人写所有代码。你需要的是让团队里每一个人都能写好代码。你明白我的意思吗?”
“明白。”
“那就行,”他站起来,跟我握了握手,“有任何需要,直接找我。”
他说话的方式让我想起一个人——我自己。或者说,是我想成为的那种管理者。
入职一个月后,我主导的第一个项目顺利上线。项目不大,是一个内部管理系统的升级改造,但涉及到的业务流程比较复杂,团队磨合也花了一些时间。上线那天晚上,我留在公司盯着系统运行状态,一直到凌晨确认一切正常才离开。
第二天早上,周总在全员邮件里点名表扬了我所在的团队。
林晓在微信上转发了那封邮件的截图,配文是:“哥,你上公司邮件了!”
我回:“低调。”
她发了一个偷笑的表情。
第20节 前公司的后续
沈琳被调离技术总监岗位的消息,是赵姐告诉我的。
那天赵姐约我吃饭,说好久没见了,想聊聊。我答应了,约在公司附近的一家湘菜馆。她比我先到,已经点好了菜,剁椒鱼头、小炒黄牛肉、一盘空心菜。
“你瘦了,”她打量了我一眼,“但气色好多了。”
“新公司伙食不错。”
她笑了一下,夹了一块鱼肉放进嘴里,嚼了嚼,放下筷子。
“沈琳被调去行政部了。”
我夹菜的手没有停顿,把一块牛肉放进嘴里,嚼完,咽下去。
“什么时候的事?”
“上周。高层对她的管理能力提出了质疑,认为她在技术团队的带领下接连出现重大事故,负有不可推卸的责任。调令已经发了,这周交接完就过去。”
“王磊呢?”
“王磊还在技术部,但基本被边缘化了。他现在每天按时上下班,不主动接活,也没人给他派活。估计干不了多久了。”
我端起茶杯喝了一口,没有说话。
赵姐看着我,沉默了一会儿,忽然说了一句:“沈浩,你当初走的时候,是不是就已经预料到今天了?”
“没有。”
“真的?”
“真的。我只是不想再待下去了。”
她盯着我看了几秒,然后端起茶杯,跟我碰了一下。
“不管怎么说,你走得对。”
那天晚上回到家,我站在阳台上抽了一根烟。我已经很久没抽烟了,上一次抽还是在天枢项目上线前的那天晚上,一个人在机房旁边的楼梯间里抽了半包。
我吐出一口烟雾,看着它在夜风中散开,消失不见。
手机震了一下,是林晓发来的消息:“哥,沈琳调走了,你知道吗?”
“知道。”
“技术部现在人心惶惶的,好几个人都在看机会。”
“你呢?”
“我还在。我想再待一段时间,把手头这个项目做完。”
“好。”
我掐灭烟头,转身回了屋里。老婆已经睡了,床头灯还亮着,她侧躺着,呼吸平稳。我轻手轻脚地洗漱完,关了灯,躺下来。
黑暗中,我睁着眼睛躺了一会儿,然后翻了个身,闭上了眼睛。
第21节 赵姐的邀约
赵姐第二次约我,是在沈琳调走的两周后。
这一次她没约吃饭,直接来了我新公司楼下的咖啡馆。她穿着一件驼色风衣,手里拎着一个公文包,看起来像是刚从某个会议上出来。她点了一杯美式,给我点了一杯拿铁,记得我喜欢喝甜的。
“我今天来找你,是有正事的。”
“你说。”
“公司想请你回去做技术顾问,不是兼职,是正式的,薪资比你走的时候高百分之五十,直接向VP汇报。”
我端起拿铁喝了一口,放下。
“赵姐,你应该知道我不会回去的。”
“我知道,但上面的意思是我得来问一下,”她苦笑了一下,“沈琳走了之后,技术部群龙无首,几个核心项目都处在半停滞状态。高层现在才意识到,你当初在的时候,帮他们兜了多少底。”
我没有接话。
“而且,”她压低了一点声音,“CEO亲自过问了这件事,他说当初庆功宴的事他不知情,如果知道的话,不会让沈琳那样处理。”
“他知不知道不重要了。”
赵姐看着我,沉默了几秒,然后叹了口气。
“我就知道你会拒绝。但我得来,这是态度问题。”
“我理解。”
她端起咖啡喝了一口,放下,换了一个话题:“新公司怎么样?”
“挺好的,老板靠谱,团队也不错。”
“那就好,”她点了点头,“你是我见过最能忍的人,也是最有骨气的人。沈浩,好好干,你值得更好的。”
她站起来,拿起公文包,跟我握了握手,转身走出了咖啡馆。
我坐在原位,把剩下的拿铁喝完,杯底的糖浆有点腻,但我还是一口喝完了。
第22节 庆功宴的真相
林晓约我喝酒,是在一个周五的晚上。
她选了一家烧烤店,在城东的一条巷子里,店面不大,但生意很好,门口排着队。她提前订了位置,靠角落的一张桌子,相对安静一些。
她点了一堆烤串和两瓶啤酒,给我倒了一杯,给自己也倒了一杯。她端起杯子跟我碰了一下,喝了一大口,然后放下杯子,用纸巾擦了擦嘴。
“哥,有件事我一直没告诉你。”
“什么事?”
“那次庆功宴的事。”
我夹了一串烤肉,没有接话。
“我后来问过沈琳的助理,”她低着头,手指在啤酒杯的杯沿上划来划去,“她说沈琳原本安排了人通知你的,但王磊在开会的时候说,你最近状态不好,叫你去怕你放不开。沈琳就没有坚持。”
我嚼着烤肉,咽下去,又喝了一口啤酒。
“就这个?”
“就这个。”
“我猜到了。”
她抬起头看着我:“你猜到了?”
“王磊不想让我去,沈琳顺水推舟。他们两个都不想我在场。”
她张了张嘴,想说什么,又闭上了。
我端起啤酒杯,跟她碰了一下。
“都过去了。”
她看着我,眼眶有点红,但没让眼泪掉下来。她端起杯子,把剩下的啤酒一口干了,然后用力放下杯子,吸了吸鼻子。
“哥,我以后也想成为你这样的人。”
“什么样的人?”
“技术好,脾气也好,被人欺负了也不吭声,但心里有数。”
我笑了一下,没有接话,又夹了一串烤肉放进嘴里。
炭火的香味混着孜然和辣椒的味道,在舌尖上炸开。我嚼了很久才咽下去。
第23节 释怀
新公司入职满三个月的那天,我加班到晚上九点。
走出写字楼的时候,城市的夜景在眼前铺展开来。远处的居民区亮着星星点点的灯火,主干道上的车流像一条流动的光河。秋夜的空气带着一丝凉意,吹在脸上很舒服。
我站在门口的台阶上,没有立刻去停车场,掏出手机,把前公司的技术群退掉了。然后打开通讯录,把那些久未联系的前同事的联系人一个一个地删掉。删到王磊的名字时,我的手指停了一下,然后按下了删除。
删完之后,通讯录里和前公司有关的人,只剩下了林晓和赵姐。
我锁上手机,走向停车场。
坐进车里之后,我没有立刻发动引擎,靠在座椅上,透过挡风玻璃看着前方。路灯的光透过梧桐树叶的缝隙洒下来,在地面上投下一片斑驳的光影。
我掏出手机,给我老婆发了一条消息:“周末我们去海边吧。”
她秒回:“好。”
我发动了车子,驶出了停车场。
车载电台里放着一首老歌,旋律很舒缓。我跟着哼了几句,歌词记不全,但调子是对的。车窗开了一条缝,风灌进来,吹乱了头发。
我没有关窗。
第24节 重逢
一年后,行业峰会。
我作为新公司的技术代表上台做主题演讲,分享的是我们在高并发架构方面的实践经验。会场很大,能容纳上千人,台下坐满了同行。灯光打在身上有些热,但我并不紧张。
讲到一半的时候,我扫了一眼台下,在第三排靠边的位置上看到了两张熟悉的面孔。
沈琳和王磊。
他们坐在那里,胸前挂着参展商的胸牌,面前的桌上摆着他们公司的宣传资料。沈琳的头发剪短了,穿着一身深蓝色的套装,看起来比一年前憔悴了一些。王磊坐在她旁边,低着头看手机,没有抬头看我。
我顿了一下,然后继续讲。
演讲结束后,主持人宣布进入问答环节。有几个观众提了问题,我一一回答了。最后一个问题是一个年轻人问的,关于微服务架构的服务治理。我回答完之后,台下响起了掌声。
我鞠躬下台,走到休息区,拿起一瓶水拧开喝了一口。
余光里,我看见沈琳朝我走了过来。
她在我面前站定,距离大概一米。她看起来有些犹豫,像是在组织措辞。我没有开口,等她先说话。
“沈浩,好久不见。”
“好久不见。”
“演讲很棒。”
“谢谢。”
然后是一阵短暂的沉默。
“我们公司现在也在做架构升级,”她说,“如果有机会,希望能跟你交流一下经验。”
“可以,让商务对接就行。”
她点了点头,又站了两秒,然后说了一句“保重”,转身走了。
我看着她走回展区的背影,她走路的姿势还是和以前一样,背挺得很直,步子很快。王磊跟在她后面,低着头,快步跟上。
我拧上瓶盖,把剩下的半瓶水放在桌上,转身走向了另一个展区。
第25节 尾声
峰会结束后的那个周末,我收到了猎头Amy的消息。
“沈总,有一家上市公司想挖你去做CTO,薪资翻倍,期权另议,有兴趣聊聊吗?”
我坐在书房里,看着这条消息,想了一会儿,回了一句:“暂时不考虑,现在的公司挺好的。”
她回了一个遗憾的表情,然后说:“那以后有机会再合作。”
我放下手机,继续写代码。
新项目的架构设计才写了一半,下周就要评审了。我盯着屏幕上的架构图,调整了几个节点的连接关系,修改了一处数据流向的标注,然后保存了文件。
老婆推门进来,端着一杯热茶放在我桌上。
“还在忙?”
“快完了。”
她站在我身后,看了一眼屏幕上的架构图,她看不懂,但还是认真地看了几秒。
“你现在的状态,跟以前不一样了。”
“哪里不一样?”
“以前你是完成任务,现在你是真的想做这件事。”
我端起热茶喝了一口,温度刚好。
她拍了拍我的肩膀,转身走出了书房。走到门口的时候,她回过头说了一句:“饭好了,下来吃。”
“马上。”
我保存了文件,合上电脑,站起来走到窗边。
窗外的天色已经完全暗下来了,城市的灯光在远处连成一片,像一条发光的河流。我站了一会儿,然后转身下楼。
楼梯间里飘着饭菜的香味,混着油烟和葱花爆锅的味道。客厅里传来电视的声音,老婆在厨房里喊了一句“洗手吃饭”。
我走进洗手间,拧开水龙头,凉水冲过手指,带走了键盘上的余温。
(全文完)
创作声明:本故事纯属虚构,人物事件均为艺术创作,由AI辅助完成,理性阅读,无任何现实指向,请勿模仿与对号入座!
热门跟贴