我年终奖4200同事全42万,我没吭声 45天后合约到期上司断供电话来
楔子
那天财务把年终奖的条子递到我手里,我正蹲在机房角落给一台老掉牙的服务器换电容。焊锡的松香味儿混着灰尘往鼻子里钻,手指上沾着黄黑色的助焊剂残渣,指甲缝里嵌着洗不掉的金属粉末。机柜风扇嗡嗡地转,像一头喘了十年的老牛。我随手把条子对折,塞进工装裤侧兜——那个兜平时用来装扎带和电工胶布,纸片混进去,跟一颗螺丝钉没什么两样。
直到晚上回家掏出来,就着厨房灯管那点惨白的光,才看清上头印着的数字:4200。
同一天,隔壁工位小赵发了条朋友圈,九宫格正中间那张是手机银行到账短信截图,他忘了打码。数字清清楚楚——42万后面跟着一个零,我数了两遍,没错,六位数。
我盯着屏幕看了大概七秒。七秒里厨房水龙头滴了四滴水,楼下有人喊了一嗓子“收废品”,冰箱压缩机嗡地响起来。然后我摁灭屏幕,把手机扣在桌上,继续吃我的蛋炒饭。蛋炒饭是老婆中午剩的,米粒有点硬,我嚼得很慢。
没吭声。
四十五天后,合约到期的早上,手机响了。来电显示是三个字,我盯了很久才接。
那个声音说了一句我这辈子都想不到的话。
第一章 机房在负一层
机房在负一层,手机常年没信号。
这是当初入职时没人告诉我的事。第一天报到,HR带我坐电梯往下走,数字从1跳到-1,门打开,迎面一股空调冷风夹杂着灰尘和金属的气味,灯光是惨白的日光灯管,二十四小时不关。走廊两侧是黑色的机柜,指示灯密密麻麻,像一片不会眨的眼睛。嗡鸣声从四面八方涌过来,低频的,持续的,像大地本身在震动。
“技术部就你一个人?”我问。
“目前是。”HR笑得有点尴尬,“之前那个上个月走了。”
我点了点头,没多问。那年我二十九岁,刚从一家小公司跳过来,上一份工作干了四年,公司倒闭,老板跑路,欠了两个月工资。我需要一份稳定的收入。儿子刚上幼儿园,老婆在超市做收银员,房租每个月一千八,水电煤气物业费加起来四百多,剩下的刚够吃饭。稳定比什么都重要。
第一天我就记住了所有机柜的位置。服务器四十七台,存储设备十二套,网络设备二十三台,核心交换机两台做冗余,防火墙一台旧的一台新的,旧的那台已经过了维保期,风扇响得不正常。我拿手电筒照了一圈,在笔记本上画出网络拓扑图,标出每一个节点的IP和用途。画完已经晚上九点,整层楼只剩我一个人的呼吸声和机器的嗡鸣。
锁门的时候,我回头看了一眼。那些指示灯在黑暗中一闪一闪,像一片沉默的星空。
从那天起,我成了这片星空的守夜人。
告警短信绑的是我的手机号。不管是半夜两点还是大年初一,只要系统出问题,短信就响。第一年我还设了特殊铃声,后来关掉了——铃声会吵醒儿子,而且听多了心跳会加速。我改成震动,手机放在枕头底下,一震就醒。老婆说过几次:“你能不能调成静音?”我说:“调静音就听不见了。”她翻了个身,没再说话。
有一回凌晨三点,核心交换机宕机。我从床上弹起来,穿着拖鞋就往外跑,老婆在后面喊:“穿件外套!”我没听见。骑车到公司,手冻得握不住钥匙,在门口搓了半天。进机房一看,电源模块烧了,备件在库房里,换上去花了四十分钟。恢复之后我坐在机房地板上,背靠着机柜,暖气还没上来,金属外壳冰凉。我掏出手机,看到老婆发了三条消息:“到了吗?”“穿外套了吗?”“注意安全。”
我回了一个字:“嗯。”
回到家已经五点半。老婆没睡,坐在客厅里,茶几上放着一杯凉透的水。她看了我一眼,什么也没说,起身去厨房热早饭。锅铲碰铁锅的声音从厨房传出来,叮叮当当的,在清晨的安静里格外清晰。我坐在沙发上,闻着煎鸡蛋的香味,忽然觉得鼻子有点酸。但也就那么一下。吃完早饭,我照常出门上班。
这种事,三年里发生了四百七十八次。
我数过。
第二章 小赵的朋友圈
年终奖发下来的那天,是个周五。
我正蹲在机房最里面那排机柜后面,处理那台2013年产的IBM服务器。RAID阵列的指示灯红橙闪烁,三块硬盘同时报错,财务系统跑在上面,月结在即,整个部门都在等。我拿手电筒一照,主板电容鼓了七个,像七颗长在电路板上的毒瘤。这活儿没人愿意干——机架式服务器四十八公斤,拆电源、拔线缆、下导轨,光扛出来就得两个人搭手。我一个人搬不动,只能蹲在后面,一点一点拆。
手机搁在机房外面的办公桌上,屏幕亮了一下,我没看见。
中午出来洗手,才发现微信未读消息九十九条。群里排着队复制“赵总牛逼”“赵总请客”,后头跟着一串烟花和啤酒的表情包。我往上翻,翻到了那张图。九宫格正中间,手机银行到账短信截图,数字清清楚楚。
四十二万。
当时我的手还湿着,洗手液没冲干净,屏幕沾上水渍一片模糊。我拿工装下摆擦了擦,又看了一遍。然后蹲在洗手间门口,后背靠着冰凉的瓷砖墙。左脚鞋带散了,松垮垮地拖在地上。隔壁女厕所有人出来,高跟鞋嗒嗒嗒走远。我盯着对面男厕小便池上方的烘手机,那台机器黄灯一闪一闪,感应线圈大概也快坏了,我记了一笔,回头得修。
我想起上个月加班到凌晨三点,为了迁移一个数据库,趴在交换机底下找一根光纤跳线,腰扭了三天直不起来。想起前年台风天全城淹水,我蹚着齐腰深的水来机房做异地备份,路上丢了只鞋,光着一只脚在公司沙发上睡了四晚。想起每一次告警电话,不管是半夜两点还是大年初一,我接起来第一句永远是“我看看,别急”。
那些时刻,钱这个字一次都没出现在我脑子里。
可此刻它出现了,以4和2开头,后面跟着不同数量的零。
我回到工位的时候,小赵正被一群人围着。有人递烟有人拍肩,他在笑,嘴角咧到耳根,露出一排整齐的牙。他比我小四岁,来公司两年,工装裤笔挺,头发用发胶抓出纹理,皮鞋擦得锃亮。他桌上摆着一杯星巴克,杯壁上凝着水珠。HR主管从旁边路过,拍了他胳膊一下:“小赵,续约合同下周签啊,涨薪百分之二十,别往外说。”声音不大,但足够让半径三米内的人都听见。
我坐下来,打开终端,继续敲那台老服务器的诊断命令。屏幕上跳出一行行代码,绿色的字符像下雨一样往下滚。手指搭在键盘上,指关节因为常年搬设备有点变形,小拇指外侧磨出一层薄茧。
下午四点,财务总监老周端着保温杯走过来,站在我隔板旁边。他咳了一声,我抬起头。老周这人五十七岁,头发白了一半,西裤永远提在肚脐以上,说话喜欢用“我跟你说句掏心窝子的”。他拧开杯盖喝了一口,茶垢在杯口积了厚厚一圈。
“小李啊,年终奖收到了吧?”
“收到了。”
“今年公司效益……你懂的,大环境不好。”他把“大环境”三个字咬得很重,眼睛看着窗外,仿佛那里有一片看不见的乌云,“你们技术岗,能发就不错了。”
“嗯。”
“小赵那个……”他顿了一下,“他是销售口的,提成制,跟你们不一样。你别往心里去。”
我点点头。老周又喝了口茶,似乎觉得我的反应过于平淡,站了几秒,走了。皮鞋敲在地砖上,咔,咔,咔,节奏很慢,像在等我喊住他。我没喊。
那天晚上回家,老婆在辅导儿子写作业。二年级的数学题,三位数加减法,儿子把6+7算成了12,老婆声音拔高:“再想一遍!”我推门进去,老婆看我一眼:“吃饭没?”“吃了。”“年终奖发了?”“发了。”“多少?”“够交物业费和暖气费。”“行。”
她没追问。我也没说谎——4200块,刚好够交这两样。
儿子举着作业本跑过来:“爸,这道题怎么做?”我低头看了一眼,把6和7两个数字圈起来,在他草稿纸上画了七根竖线。“你数,六根再加七根,总共几根?”他掰着手指头数了半天:“十三!”“对了。”老婆在旁边削苹果,削完递给我一半。我咬了一口,很甜。
手机在口袋里震了一下。是工作群消息,小赵@所有人,说周五晚上请大家吃饭,某某酒楼,人均五百那种。群里又是一片沸腾。我锁了屏,把苹果核扔进垃圾桶,帮儿子检查下一道题。
那天晚上我睡得比平时早,但半夜醒了一次。梦里全是绿色的代码在滚,滚着滚着变成了一串零。我翻身下床喝了杯水,坐在马桶上发了会儿呆。卫生间窗户没关严,夜风吹进来,带着楼下烧烤摊的孜然味。我忽然想起白天老周说的“别往心里去”,觉得有点好笑——肚子里的东西,往哪里去?
我没有抱怨。只是从那天起,我每天多带了一个充电宝。
第三章 每个人的账本不一样
年终奖的事,我没跟任何人说。
老婆不问,我不说。同事不问,我不提。小赵照常每天十点来公司,泡一杯挂耳咖啡,打开炒股软件看半小时大盘,然后开始打销售电话。他的电话内容高度雷同:“王总您好,上次那个方案您看了吗?对对对,价格好商量,您看什么时候方便我们过去拜访一下?”一天打二十个电话,能约到一个客户就算胜利。可就是这样的节奏,他去年做了八百万的业绩。
隔壁桌的产品经理老孙,每天加班到深夜写需求文档,头发一把一把掉,工位上常年备着霸王防脱。他的年终奖是一万八。前台小周,每天最早来开灯、最晚走关空调,收发快递、订水订饭、帮所有人跑腿,她的年终奖是两千。
我把这些看在眼里,写在一个牛皮纸封面的笔记本上。
那个笔记本是我入职第一天买的,五块钱,文具店最便宜的那种。本来打算记技术笔记,后来写着写着,变成了工作日志。每天做了什么,遇到什么问题,怎么解决的,耗时多久。一行行写下去,像在给自己的生活记账。
2021年7月12日,凌晨2:17,核心交换机宕机,恢复耗时4小时32分。
2021年11月3日,财务系统数据库死锁,处理耗时6小时18分。
2022年3月8日,勒索病毒攻击,隔离并恢复数据耗时32小时。
2022年9月15日,台风“梅花”登陆,涉水到岗,保障备份链路通畅,全天在岗。
2023年1月1日,元旦,远程处理OA系统故障,耗时2小时。
我一直往下翻,翻到最后一页。最近的一条是三天前:
2023年12月11日,IBM服务器RAID阵列重建,耗时7小时。主板电容鼓包7个,更换中。
三年,一千零九十五天。笔记本用掉了大半本,纸页边缘卷起来,封面的牛皮纸磨得发白。我把电脑合上,屏幕的光灭了,客厅陷入黑暗。窗外有只野猫叫了一声,像婴儿哭。我坐在黑暗里,脑子里反复算着一笔账。
老孙的一万八,是他每天加班到深夜换来的。小周的两千,是她风里雨里跑腿换来的。我的四千二,是四百七十八次半夜爬起来换来的。小赵的四十二万,是他一天二十个电话、被挂断被骂、在客户门口等四个小时换来的。
每个人的账本不一样,但都在算。
只是有的人的账本,写在合同里。有的人的账本,写在别人的需要里。
那之后的日子,一切照旧。我依然第一个到机房,依然在告警响起时秒接电话,依然把每一台设备的运行状态记在那个牛皮纸笔记本上。唯一的区别是,我开始留意一些以前从不注意的东西。
比如小赵打电话时的手势——他喜欢用左手拿手机,右手在桌上画圈,好像电话那头的人能看见他的动作。比如老孙写文档时咬笔帽,咬得笔帽变形。比如小周订饭时会把每个人的忌口记在便利贴上,贴满整个显示器边框。比如老周喝茶只喝第二泡,第一泡倒掉,说“洗茶”。
这些细节,以前从眼前过一百遍也看不见。现在看见了,就再也忘不掉。
第四章 那台老服务器
那台2013年的IBM服务器,跟了我三年。
它是我入职时接手的第—台设备,也是最后一台还在跑Windows Server 2008的系统。主板电容鼓了七个,我换掉五个,剩下两个位置太刁钻,焊枪伸不进去,一直搁着。每次开机自检要三分多钟,风扇响得像拖拉机发疯,RAID阵列的指示灯隔三差五闪红。可它从来没彻底死过。
财务系统跑在上面,月结、年结、报表、凭证,全指着这台老骨头。我提过三次更换申请,都被打回来。第一次理由是“预算不够”,第二次是“再等等”,第三次是“还能用”。于是我只能守着它,像守着一个随时可能咽气的老人。
十二月那次故障,是它最严重的一次。三块硬盘同时报错,RAID5已经降级运行了半年,备盘申请被财务砍了,理由是“设备还能用”。我蹲在机柜后面,拿手电筒照着,一块一块检查。硬盘外壳烫手,电路板上的芯片烧了个洞,焦糊味钻进鼻子。
我先把坏盘的数据往备用盘上镜像。ddrescue跑了四个小时,其中一块坏盘读到60%的时候彻底不认盘了。我把它拆下来,用密封袋装好,放进机房的冰箱冷冻层——零下十八度,冻了四十分钟再拿出来,又能读一段。这是老机房人的土办法,不管用是常事,管用就是赚到。反复三次,终于把数据全部镜像出来。
然后在虚拟环境里重建RAID,挂载文件系统,用fsck修复损坏的索引节点。屏幕上跳出一片红色的错误信息,我一条一条处理,像在一座倒塌的图书馆里一册一册找书。凌晨四点,数据库服务终于起来了。我远程登录进去,跑了一遍数据一致性检查,全部通过。
我靠在机柜上睡着了。
醒来的时候是早上七点,保洁阿姨在拖地,拖把碰到我的脚,我睁开眼,看见她吓了一跳:“小伙子你怎么睡这儿?”
“没事。”我站起来,腰像被人打了一棍,膝盖发软。去洗手间洗了把脸,镜子里的人眼窝深陷,胡子拉碴,白头发多了好几根。我盯着镜子看了几秒,忽然笑了一下。那个笑很轻,连自己都觉得意外。
上午九点,财务部恢复正常。老周站在我工位旁边,手里那杯茶终于不再晃了。“小李,这次多亏你。”他说,语气比平时真诚一些,“年终奖的事……我知道你心里有数。公司会记住的。”
我点了点头,没接话。他站了一会儿,似乎还想说什么,最终只是拍了拍我的肩膀。那只手掌温热而厚实,拍在肩上的分量却不轻。
那天中午,小赵破天荒请我吃了顿饭。就我们俩,楼下快餐店,他点了两荤一素,给我夹了个鸡腿。“李哥,这次财务的事,客户都知道了。昨天跟餐饮集团那边开会,他们董事长特意提到你,说这样的技术骨干得留住。”他扒了口饭,“我跟总监建议了,你的续约合同应该重新谈。”
“合同已经发过来了。”
“我知道,但可以改嘛。我帮你说。”
我放下筷子,看着他。小赵被我看得有点不自在,低头喝了口汤。“你为什么要帮我说话?”我问。
他愣了一下,然后笑了:“李哥,咱们是一起扛过枪的。去年那个勒索病毒,要是没有你,我那几个大客户的数据全完蛋,我的提成也泡汤了。我心里有数。”
我没再说话。鸡腿炖得很烂,筷子一夹肉就脱骨。我慢慢吃完,连骨头旁边的脆骨都嚼了。小赵掏出手机要扫码买单,我先一步把现金压在杯子下面。
“这顿我请。”我说。
第五章 老周的保温杯
老周的保温杯,是我见过最旧的一只。
银色不锈钢外壳,磕得坑坑洼洼,杯盖上的橡胶圈换过三回,每次换之前都漏水。他每天早上到公司的第一件事,是去茶水间洗杯子,用开水烫一遍,然后放一撮茶叶,倒满水,拧紧盖子。那杯茶能喝一整天,从早上的深褐色喝到下午的无色,最后连茶叶都嚼着吃了。
他端着那只杯子来找我的次数,三年里大概有五十多次。每次都是那套话——“小李啊,最近忙不忙”“设备运行怎么样”“有什么困难跟我说”。然后喝一口茶,等我说“还好”。我永远说“还好”。他就点点头,再喝一口,走了。
但年终奖那件事之后,他来找我的频率变高了。有时候一天来两次,上午一次下午一次,杯子里的茶从深喝到浅。他不再提年终奖,也不提小赵,聊的都是些有的没的——“最近天气冷了”“你儿子上几年级了”“你老婆工作怎么样”。我一一回答,简短,不带情绪。
有一回他站了很久,杯子在手里转了一圈又一圈。我以为他要说什么重要的话,结果他只是叹了口气:“小李啊,你这人什么都好,就是太闷了。”
“闷不好吗?”
“好,也不好。”他喝了口茶,“闷的人心里能装事,但也容易把自己装进去。”
我没接话。他站了一会儿,走了。皮鞋声咔咔咔响,像一把钝刀子在切什么东西。
后来我才知道,那段时间他正在跟陈总吵架。陈总想提我当技术总监,老周不同意。理由是我太年轻,资历不够,管理经验不足。他跟股东们说:“技术好不代表能管人,李工适合干活,不适合带队伍。”这些话是后来老杨告诉我的。老杨说的时候,语气里带着一点不平,但我听完之后,心里却没什么波动。
因为我知道老周没说错。那时候的我,确实只会干活。
他保温杯里的茶,从深喝到浅,从热喝到凉,从浓喝到淡。就像他在公司里的日子,一天一天走向无色。而我还年轻,我的茶刚泡上,颜色正好。
第六章 没说话的那顿饭
周五晚上小赵请客,订了公司旁边那家湘菜馆最大的包间。
大圆桌能坐十六个人,转盘上摆着转盘,凉菜热菜摞了三层。酒是飞天茅台,开瓶的时候“啵”一声脆响,满屋子酱香。我被安排在靠门的位置——那个位置一般留给司机或者来得最晚的人。行政部的小刘坐我旁边,她刚来半年,还带着学生气,偷偷跟我咬耳朵:“李哥,这酒一瓶得三千多吧?”“嗯。”“赵哥真大方。”“嗯。”“你年终奖发了多少?”我夹了一筷子剁椒鱼头,辣得舌尖发麻:“够花。”
小赵站起来敬酒,西装是新的,袖口标签还没剪,若隐若现露出一角。他端着分酒器,挨个碰杯,到我这儿的时候已经喝红了脸:“李哥!技术大拿!明年服务器全靠你了!”我端起啤酒杯跟他碰了一下,玻璃相撞发出清脆的“叮”一声。他的目光在我脸上停留了大概半秒,随即滑向了下一个人。
饭桌上聊的都是提成、客户、回款、明年的预算。有人问小赵怎么花那笔钱,他说先换车,宝马X3看了半年了。一桌人起哄说“赵总带带小弟”,他笑,拿筷子点了一圈:“好说好说。”
我低头剥虾。虾壳扎手,我剥得很慢,一只虾拆成三截,虾头虾尾整整齐齐排在骨碟边上,虾仁蘸醋,一口吃掉。吃到第七只的时候,旁边的小刘忽然压低声音:“李哥,我听说……你们技术部的年终奖系数是零点三。”
我手上动作没停:“你听谁说的?”
“就……HR那边传出来的。说公司规定技术岗绩效系数零点三到零点五,销售岗是十起步。”她表情有点愤愤,“这也太不公平了吧。”
我把第八只虾的壳剥完,虾仁放在醋碟里涮了涮,没急着吃。转盘正好转到我面前,上面是一盘清蒸鲈鱼,鱼眼睛白蒙蒙地瞪着天花板。我想起上个月月底,财务系统宕机,小赵在办公室拍桌子喊“这破系统早该换了”,我熬了四十八小时把数据从报废硬盘里恢复出来,他第二天在晨会上被表扬“客户响应及时”。
“制度嘛。”我说,把虾仁吃了。
小刘看了我一眼,没再说话。
散场的时候快十一点,一桌人喝得东倒西歪。小赵搂着销售总监的肩膀在门口叫代驾,手机屏幕的光映在他脸上,下巴上沾着一粒米饭。我帮服务员收拾了桌上的空瓶——十八个啤酒瓶、四个茅台空瓶、三瓶红酒,堆在纸箱里像一排等待检阅的士兵。
走出饭店,初冬的风灌进领口,我缩了缩脖子。小刘跟我同路,两个人沿着路灯往回走。梧桐叶落了满地,踩上去咔嚓咔嚓响。她忽然说:“李哥,你脾气真好。”
“跟脾气没关系。”
“那跟什么有关系?”
我想了想。我们走到十字路口,红灯亮着,一辆外卖电动车从面前飞驰而过,骑手没戴头盔,耳朵上挂着蓝牙耳机,嘴里喊着“马上到马上到”。绿灯亮了,我迈开步子。
“跟时间有关系。”我说,“时间会给你定价。”
小刘愣了一下,没听懂。我也没有解释。路口分别的时候,她往左我往右。我走出七八步,听见她在后面喊:“李哥,那你觉得你的时间值多少?”我没回头,摆了摆手。
那天晚上回到家,老婆已经睡了,床头灯还亮着,一本翻开的《小学数学教学法》扣在枕头上。她在准备教师资格证考试,考了两次,差三分。我轻手轻脚洗漱完,坐在客厅沙发上,打开了那个跟了我五年的旧笔记本。
屏幕亮起来,光驱嗡嗡响了一阵。我打开那个加密文件夹,里面是三年来的工作日志——每天做了什么,遇到什么问题,怎么解决的,耗时多久。一行行看下去,像在翻自己的病历。
我一直往下翻,翻到最后一页。最近的一条是三天前:
2023年12月11日,IBM服务器RAID阵列重建,耗时7小时。主板电容鼓包7个,更换中。
我把电脑合上,屏幕的光灭了,客厅陷入黑暗。窗外有只野猫叫了一声,像婴儿哭。我坐在黑暗里,脑子里反复算着一笔账:三年,一千零九十五天。多少个电话,多少次半夜爬起来,多少回把“马上处理”说成条件反射。这些时间,如果按小时计费,哪怕按最便宜的上门维修师傅的时薪,也该是多少?
我没有往下算。但那个数字像颗种子,在脑子里扎了根。
第七章 数字化改造项目
十二月中旬,公司接了一个大项目。
给一家连锁餐饮企业做数字化改造,涉及十二个城市的门店系统、中央厨房的供应链管理、会员数据中台。项目金额七百多万,小赵牵的头,但他不懂技术,方案得技术部出。总监把这个活儿派给了我,原话是:“小李,你牵头技术方案,小赵负责商务对接,两个月内出第一版。”
我花了三天时间做调研,跑了六家门店。跟店长聊,跟后厨聊,跟收银员聊,跟外卖骑手聊。有个店长跟我说,高峰期收银系统卡顿,顾客排队排到门外,一天能丢几十单。有个后厨主管说,中央厨房的配送单靠微信群喊,经常漏发错发。有个收银员说,会员系统经常登不上,顾客积分兑不了,投诉电话打爆。
我把这些全记下来,回来写了四十七页的方案。从网络架构到数据流向,从灾备策略到实施路线图,每一页都有数据支撑,每一行都经过验证。交给小赵的时候,他正对着镜子整理领带。
“辛苦了李哥,我看看。”他接过去,翻了前两页,然后合上,塞进公文包,“下周跟客户汇报,你也去吧。”
汇报那天,我穿了唯一一套西装,衬衫领子洗得有点发毛。客户会议室很大,长桌尽头坐着对方董事长,旁边一圈高管。小赵主讲,他打开我做的PPT,从第一页开始念。念到第三页的时候,客户技术总监打断了他:“这个灾备方案的RTO和RPO指标是怎么测算的?”
小赵顿住了。他低头看PPT,那页上写着“RTO≤4小时,RPO≤15分钟”。他大概连这两个缩写的全称是什么都不知道。
“这个……”他笑容不变,目光往我这边飘。
我接过话头:“RTO是恢复时间目标,RPO是恢复点目标。我们根据门店高峰时段交易数据量和历史故障恢复记录反推的。按照目前部署的本地备份加异地容灾架构,四小时内可以恢复核心交易,十五分钟内可以把数据损失控制在当日流水百分之零点五以内。”我打开随身带的笔记本,调出一张图表投到屏幕上,“这是详细的测算模型,考虑了网络带宽、备份窗口和人力响应时间三个变量。”
客户技术总监点了点头,又问:“如果异地机房同时故障呢?”
“我们在方案第七页设计了第三级冷备,利用对象存储做每日全量快照。极端情况下可以做到二十四小时内恢复所有数据。”我翻到那一页,上面有一张我画了三个晚上的架构图,每个节点都标注了延迟和吞吐量。
汇报结束,客户董事长站起来跟我握了握手:“年轻人,方案做得扎实。”小赵在旁边笑着附和:“我们李工是技术大拿,公司骨干。”他的手插在裤兜里,拇指来回摩挲着手机边缘。
回公司的车上,小赵坐在副驾驶,我坐后排。他回过头说:“李哥,今天多亏你了。回头我跟总监说,项目奖金给你多分点。”
“行。”我看着窗外,高架桥两侧的楼群往后退,玻璃幕墙反射着下午的阳光,一格一格的,像无数个格子间。
那天晚上回到公司,我打开笔记本,在“项目”那一页写了一行字:
2023年12月19日,数字化改造项目技术方案通过客户评审。方案页数47,调研耗时3天,测算模型修改5版。
然后我翻到新的一页,在最上面画了一条横线,下面开始记另一笔账。这一次我记的是:每一天,我处理了多少件事,其中多少件是别人不愿意做或做不了的,多少件是只有我能做的。
数字一天天累积。像一个沉默的计数器,在格子间的呼吸声里悄悄跳动。
第八章 续约意向书
元旦过后,公司发了续约意向书。
HR把电子版发到每个人邮箱,要求一周内签回。我打开附件,自己的那份合同和去年一模一样——期限一年,薪资不变,岗位不变,连“其他约定”那栏都是空的。
隔壁小赵在群里发了个截图,合同期三年,薪资一栏写着“基本工资上浮20%+业绩提成上不封顶”。截图配文:“感谢公司信任,再干三年!”
我关掉邮箱,打开终端,继续处理一封IT服务台的工单。有个同事的笔记本进水了,主板烧了,急着要数据。我拆开机器,把固态硬盘取出来,接上转接卡,挂载到Linux系统下。文件都在。导出来,拷到新机器上,装好系统,送到同事工位上。前后不到一小时。
同事连声道谢:“李哥你这速度,外面修电脑的得收我三百块。”
我摆摆手回了座位。打开那个牛皮纸笔记本,在今天的日期下面写:处理硬件故障1起,恢复数据47GB,耗时52分钟。
下班前,老周又端着保温杯过来了。这次他坐在我旁边的空椅子上,椅子弹簧吱呀一声响。“小李啊,续约合同看了没?”
“看了。”
“有什么想法没有?”
“没什么想法。”
老周盯着我看了一会儿,眼角的皱纹挤在一起。他大概觉得我该说点什么——抱怨、提要求、甚至拍桌子。可我什么都没说。他叹了口气,保温杯在手里转了两圈:“我跟你说句掏心窝子的,公司明年预算紧,技术岗的编制……可能还要压缩。你这边,我尽量争取。”
“谢谢周总。”
他走了。我继续盯着屏幕,右下角的时钟跳到18:00。我没有关电脑,而是打开了那个加密文件夹,把今天的日志补完。然后,我做了一件以前从没做过的事——把三年来的工作日志全部导出,按时间排序,做了一个完整的统计。
故障处理类型分布、平均响应时间、非工作时间出勤次数、核心系统维护记录……一列列数据滚过屏幕,像一支无声的军队在列队报数。总数出来了:三年,一千零九十五天,非工作时间被叫醒或加班的次数,四百七十八次。处理各类故障一千三百余起。核心系统维护窗口累计六百多小时。
我把这些数字复制到一个新建的文档里,然后关掉电脑。办公室的灯一排排灭掉,小赵他们早就走了。我一个人坐在黑暗的格子间里,只有显示器电源灯还亮着,一明一暗,像某种呼吸。
手机震了一下,老婆发来消息:“今晚想吃什么?我买了排骨。”
我回:“红烧。我马上回。”
站起身的时候,膝盖咔嗒响了一声。我拍了拍工装裤上的灰,拿起那个牛皮纸笔记本,想了想,又放回了抽屉最深处。
回家的地铁上,车厢里人挤人,一个戴耳机的年轻人靠在门边打瞌睡,手机屏幕上是某大厂的工牌照片。我忽然想起小刘那天问的问题:“李哥,你觉得你的时间值多少?”
当时我没回答。此刻我站在晃荡的车厢里,手扶着冰凉的金属扶手,脑子里冒出一个从未有过的念头:如果时间真的可以定价,那它就不该由别人来定。
地铁钻进隧道,窗外一片漆黑,车窗映出我自己的脸,模糊,沉默,嘴角绷成一条直线。我盯着那张脸看了很久,直到隧道尽头的光透进来。
第九章 倒计时第七天
距离合约到期还有七天的时候,公司出了件事。
财务系统在月初结账那天再次崩溃,而且这次比以往都严重——存储阵列的两块硬盘同时物理损坏,数据无法读取。整个财务部停摆,凭证录不进去,报表出不来,供应商的付款全部卡住。财务总监老周在办公室里团团转,打电话把服务器厂商的工程师叫来,对方看了一眼说:“阵列配置有问题,加上硬盘型号太老,备件要订,最快五天。”
五天。月结等不了五天。供应商的付款逾期要产生滞纳金,员工的工资核算也要受影响。老周满头汗地找到我:“小李,有没有办法?”
我蹲在机房地板上,手电筒照着那两块损坏的硬盘。空气里有一股焦糊味,硬盘电路板上的芯片烧了个洞。阵列卡日志显示RAID5已经降级运行了半年,一直没有更换备盘——因为备盘采购申请被财务砍了,理由是“设备还能用”。
“我试试。”我说。
那天晚上我没回家。先用ddrescue把坏盘上的数据镜像到两个备用盘上,花了四个小时。其中一块坏盘读到60%的时候彻底不认盘了,我把它放进冰箱冷冻层——零下十八度,冻了四十分钟再拿出来,又能读一段。反复三次,终于把数据全部镜像出来。
然后在虚拟环境里重建RAID,挂载文件系统,用fsck修复损坏的索引节点。屏幕上跳出一片红色的错误信息,我一条一条处理,像在一座倒塌的图书馆里一册一册找书。凌晨四点,数据库服务终于起来了。我远程登录进去,跑了一遍数据一致性检查,全部通过。
我靠在机柜上睡着了。醒来的时候是早上七点,保洁阿姨在拖地,拖把碰到我的脚,我睁开眼,看见她吓了一跳:“小伙子你怎么睡这儿?”
“没事。”我站起来,腰像被人打了一棍,膝盖发软。去洗手间洗了把脸,镜子里的人眼窝深陷,胡子拉碴,白头发多了好几根。我盯着镜子看了几秒,忽然笑了一下。那个笑很轻,连自己都觉得意外。
上午九点,财务部恢复正常。老周站在我工位旁边,手里那杯茶终于不再晃了。“小李,这次多亏你。”他说,语气比平时真诚一些,“年终奖的事……我知道你心里有数。公司会记住的。”
我点了点头,没接话。他站了一会儿,似乎还想说什么,最终只是拍了拍我的肩膀。那只手掌温热而厚实,拍在肩上的分量却不轻。
那天中午,小赵破天荒请我吃了顿饭。就我们俩,楼下快餐店,他点了两荤一素,给我夹了个鸡腿。“李哥,这次财务的事,客户都知道了。昨天跟餐饮集团那边开会,他们董事长特意提到你,说这样的技术骨干得留住。”他扒了口饭,“我跟总监建议了,你的续约合同应该重新谈。”
“合同已经发过来了。”
“我知道,但可以改嘛。我帮你说。”
我放下筷子,看着他。小赵被我看得有点不自在,低头喝了口汤。“你为什么要帮我说话?”我问。
他愣了一下,然后笑了:“李哥,咱们是一起扛过枪的。去年那个勒索病毒,要是没有你,我那几个大客户的数据全完蛋,我的提成也泡汤了。我心里有数。”
我没再说话。鸡腿炖得很烂,筷子一夹肉就脱骨。我慢慢吃完,连骨头旁边的脆骨都嚼了。小赵掏出手机要扫码买单,我先一步把现金压在杯子下面。
“这顿我请。”我说。
第十章 合约到期那天
合约到期那天,是腊月二十三,北方小年。
早上出门的时候,儿子跑过来抱住我的腿:“爸,今天买糖瓜吗?”我摸了摸他的头:“买,下班带回来。”老婆在厨房喊:“你合同今天到期,续约的事怎么说?”“没怎么说。”“那你问了吗?”“没问。”
她拿着锅铲走出来,看着我。油烟味从厨房飘出来,混着煎鸡蛋的香气。“你到底怎么想的?”她问。语气里没有责备,只是询问。
“晚上回来再说。”
到了公司,一切照旧。开电脑,看监控,处理夜间堆积的工单。小赵来得比平时晚,进门就嚷嚷着“昨晚喝大了”。老周在走廊里跟人打电话,笑声从门缝里挤出来。我坐在工位上,把那台老IBM服务器的最后一次巡检报告写完,存档。然后开始整理抽屉。
东西不多:一个用了六年的保温杯,杯底磕掉一块漆;一本工作笔记,封面磨得发白;几根网线,扎带捆得整整齐齐;一盒没吃完的薄荷糖,过期了;一张去年年会抽奖中的充电宝,从来没拆封。
我把它们一一装进一个牛皮纸袋,放在桌角。然后打开那个加密文件夹,最后一次核对了工作日志的完整性。三年,一千零九十五天,全部都在。我又打开了和老婆的聊天记录,往上翻,翻到三年前刚入职那天,她发了一条:“新工作加油,晚上给你做红烧肉。”我回了三个笑脸。
中午十二点,手机响了。屏幕上跳出一个名字——陈总。
陈总,公司创始人,五十多岁,常年在国外,一年回国两次。上一次见他还是去年年会,他端着酒杯绕场一周,跟每个人碰杯说“辛苦了”,到我面前停了两秒:“你是技术部的?好,好。”然后走向了下一个人。
我接起电话。
“小李啊。”他的声音有些沙哑,背景里有风声和车流声,大概在机场或车站。“今天合约到期对吧?”
“对。”
“续约的事,老周跟你谈了吗?”
“谈了。意向书发过来了。”
“你签了没有?”
“还没。”
电话那头沉默了几秒。风声很大,呼呼地灌进听筒。然后他说了一句话,一句我这辈子都想不到的话:“你别签了。”
我握着手机,站在工位旁边。小赵从旁边路过,嘴里哼着歌,工装裤口袋里露出宝马车钥匙的一角。财务部的打印机在嗡嗡作响。空调出风口吹出来的热风,烘得我后脖子发烫。
“小李,你听我说。”陈总的声音忽然清晰起来,大概走到了室内,“公司情况你可能知道一些,也可能不知道。但我知道你——三年了,你的工作记录我每个月都看。老周给我发的报告里,你的名字出现频率最高。”
我靠在隔板上,指尖有点发麻。
“我直说了。公司要转型,技术这块必须有人扛。老周明年退二线,技术总监的位置空出来了。我跟几个股东吵了两个月,他们想外聘,我坚持提你。但在这之前,你得先离开这个合约。”
“为什么?”
“因为旧合约里有竞业条款和薪资天花板。你续了,明年提总监就卡死了。必须先到期,重新签新约。这个我跟HR交代过了,但老周那边……他可能有自己的想法。”
我沉默着。窗外有只麻雀落在空调外机上,歪着头看过来。
“小李,你在听吗?”
“在。”
“新合约你让HR发给你,薪资你自己填。技术总监的待遇,你比我有数。”他顿了一下,“还有,年终奖那事儿我知道了。小赵的四十二万是他的业绩提成,合同规定的。你的四千二也是合同规定的。但合同是死的,人是活的。今年开始技术岗有项目分红,具体的你来了再谈。”
电话挂断之后,我在原地站了很久。手机屏幕暗下去,映出天花板上的灯管,一格一格,像一条路。
第十一章 我没马上回复
我没有马上回复陈总。
那天下午,我照常处理完所有工单,给每台服务器做了最后一次巡检,把机房的钥匙、门禁卡、密码信封整理好,放在抽屉里。然后拿起那个牛皮纸袋,下了楼。
走出写字楼大门的时候,保安老赵跟我打招呼:“李工,这么早走?”“嗯,今天有点事。”“明天见啊。”“明天见。”
我没有告诉他明天不来了。
回家的路上,我去超市买了糖瓜。儿子要吃的那种,圆圆的,裹着白芝麻,咬一口粘牙。又买了一条鲈鱼、一把蒜薹、两斤排骨。收银员扫码的时候,我盯着传送带上的东西看,忽然觉得这些东西都变得清晰了——糖瓜包装袋上的褶皱,蒜薹尖上没掐干净的须,排骨塑料袋里渗出的血水。以前下班买东西从来不会注意这些。
晚上吃完饭,儿子在客厅看动画片,声音开得很大。老婆在阳台上收衣服,一件一件叠好。我走过去,站在她旁边。
“今天陈总打电话来了。”
她手上的动作没停:“哪个陈总?”
“大老板。”
她把一件衬衫翻面,袖子折到背后。“说什么了?”
“说让我别签旧合同。说技术总监的位置空出来了,让我考虑。”
她转过身来,手里还攥着那件衬衫,看着我。阳台的灯很暗,她的脸一半在光里一半在阴影中。过了好一会儿,她说:“你怎么想?”
“我还没回他。”
“那就想好了再回。”她把衬衫放进盆里,端起盆往屋里走,经过我身边的时候停了一下,“排骨挺好吃的,儿子吃了两碗饭。”
那天晚上我失眠了。躺在黑暗里,听着老婆均匀的呼吸声,脑子里翻来覆去地过那些画面——机房的地板,服务器的嗡鸣,凌晨三点的告警短信,小赵朋友圈的截图,老周保温杯里晃动的茶汤,陈总电话里呼啸的风声。这些画面搅在一起,像一团找不到头的线。
凌晨三点,我起来上厕所。路过客厅的时候,看见那个牛皮纸袋放在茶几上。我走过去,把里面的东西倒出来。工作笔记、保温杯、网线、薄荷糖、充电宝。东西摊了一桌子。我拿起那本工作笔记,翻开。
第一页写着入职第一天的记录:2019年3月4日,入职。熟悉机房环境。服务器数量47台,存储设备12套,网络设备23台。网络拓扑图绘制完成。
字迹工整,一笔一划。
翻到中间某一页:2021年7月12日,凌晨2:17,核心交换机宕机。老婆打了三个电话没接。回家时她已经睡了,早饭在锅里温着,留了张纸条:注意身体。
又翻到后面:2023年1月1日,元旦,OA系统故障,远程处理。儿子在视频里说“爸爸新年快乐”,我处理完故障才看到消息,回复的时候他已经睡了。
我把笔记本合上。客厅里很安静,冰箱的嗡鸣声像某种陪伴。月光从窗帘缝里漏进来,照在地板上一条窄窄的白。我坐在沙发上,手里攥着那本笔记本,忽然觉得这三年像一场很长的夜班——天一直在黑,但有些东西一直在亮。
比如每一次故障排除后监控屏幕上恢复正常的绿色指示灯。
比如财务部同事收到恢复的数据时脸上的如释重负。
比如小赵那天饭桌上那句“我心里有数”。
比如老婆留的那张纸条,那锅温着的早饭。
比如儿子在视频里喊的那声“爸爸新年快乐”。
这些东西,都不在合同里,不在年终奖的数字里,不在绩效考核表里。可它们确确实实存在着,像机房角落里那些从不间断的指示灯,安静地亮着。
我拿起手机,给陈总回了条消息:陈总,谢谢。明天上午我去公司,当面聊。
发完消息,我把笔记本放回牛皮纸袋,拎着袋子回了卧室。老婆翻了个身,迷迷糊糊地问:“几点了?”“还早,睡吧。”我躺下来,这一次很快睡着了。没有做梦。
第十二章 新合约
第二天上午到公司的时候,HR已经在会议室等我了。
新合约打印出来放在桌上,厚厚一沓。待遇那栏空着,后面有铅笔轻轻写的“面议”两个字。我坐下来,HR主管递过来一支笔。
“陈总交代过了,你先看,有什么想法跟我说,我改。”
我翻开合同,一条一条看。期限三年,岗位技术总监,薪资——我拿起笔,在那个空白处写了一个数字。比原来的多了三倍。然后翻到最后一页,签了名字。
HR主管看了一眼那个数字,眉毛动了一下,但什么也没说。“行,我拿去给陈总确认。”她走到门口又回过头来,“对了,老周今天请假了,说是身体不舒服。”
我点了点头。老周的保温杯大概不会再出现在我隔板旁边了。
签完合同出来,走廊里碰到小赵。他正端着咖啡往工位走,看见我手里的合同副本,眼睛亮了一下:“李哥,签了?”“签了。”“涨了吧?”“涨了。”“那就好那就好。”他拍了拍我的胳膊,咖啡晃出来几滴,溅在他新西装的袖口上。他“哎呀”一声,手忙脚乱地擦,我却笑了。
“晚上请你吃饭。”我说。
“啊?”
“还去那家湘菜馆。就咱俩。”
他愣了一下,然后笑起来:“好,我订包间。”
晚上那顿饭,小赵没点茅台,要了两瓶啤酒。他给我倒满,自己也倒满,举杯:“李哥,敬你。”
“敬什么?”
“敬你没把服务器砸了。”他嘿嘿笑,露出一口整齐的牙,“说实话,你年终奖那事儿,我知道你心里不舒服。换我我也难受。但你是真没吭声。就这一点,我服。”
我喝了口啤酒,泡沫在舌头上炸开。“小赵,你那个四十多万,是不是每天打二十个电话打出来的?”
他想了想:“差不多吧。有时候三十个。被挂断是常事,被骂也不稀奇。有一回为了签个客户,在人家公司门口等了四个小时,最后人家从后门走了。”
“那你也挺难的。”
“难啊。但不难的事儿,哪能挣着钱?”他夹了块红烧肉,嚼了两口,“李哥,咱们不一样。你那个技术,是别人干不了的。我这个活儿,换个人也能干。所以我得往死里干。这道理我懂。”
我看着他。那张年轻的脸上有疲惫,也有一种我没见过的认真。他大概也经历过很多个不为人知的四十五天,只是我们从不聊这些。
“那就继续干。”我举杯。
“继续干。”他碰过来,啤酒沫溅到桌上。
第十三章 新合约生效之后
新合约生效之后,我做的第一件事,是建了一个技术部的知识库。
以前所有的系统配置、故障处理流程、应急方案,都装在我一个人脑子里。每次出问题,所有人第一反应就是喊“李哥”。我走了,系统就是一堆黑盒子。现在我把它们全部写出来——架构图、操作手册、故障树、检查清单。文档一共一百七十多页,每一条命令都经过测试,每一个步骤都有截图。
第二件事,是招人。我跟HR申请了两个编制,一个负责网络安全,一个负责数据中台。面试的时候,我不看学历,不看证书,只问一个问题:“遇到没见过的故障,你第一步做什么?”有人答“上报领导”,有人答“查手册”,只有一个女孩说:“我先看日志,先搞清楚发生了什么,再想为什么,最后才想怎么办。”我录了她。
第三件事,是改流程。以前技术部的工单系统就是个摆设,所有需求都靠微信喊。我重新设计了派单规则,按优先级和响应时间考核,每个人都有明确的值班表。一开始老员工不适应,觉得多了束缚。我说:“以前是我一个人扛,现在咱们一起扛。扛得住,大家都有功劳;扛不住,我来兜底。”三个月后,工单平均响应时间从四十分钟降到了八分钟。
这些事,都是一点一点做的。像重新布一盘棋,每一步都要想清楚。我每天下班前会把当天做的事记在那个牛皮纸笔记本上,和以前一样。只是内容变了——不再是“处理故障”“加班抢修”,而是“更新文档”“培训新人”“优化流程”。
有一天,那个新来的女孩问我:“李总,你以前是不是经常一个人加班?”
“你怎么知道?”
“因为知识库里那些文档,字里行间都是一个人写的。”她指着屏幕上一段话,“你看这句——‘如果凌晨三点出现这个告警,先别急着操作,确认电源冗余是否正常。另外,睡前把手机音量调到最大。’这不是写给团队的,是写给你自己的。”
我看着那段话,确实是我写的。去年冬天某个凌晨,被电话吵醒,摸黑爬起来处理故障,当时写在日志里的备注。后来整理知识库的时候,一字不改粘了进去。
“以后不用调最大音量了。”她笑着说,“值班表上有人。”
我也笑了。那天晚上,我把手机调成了静音。
第十四章 老杨的咖啡
老杨是公司的老销售,五十多岁,头发花白,说话带点南方口音。公司里年轻人叫他“杨叔”,我跟着叫了三年。新合约签完的第二周,他端着两杯咖啡来找我。
“美式,没加糖。”他把一杯放在我桌上,自己在对面坐下来,翘起二郎腿。咖啡杯很小,他捏在手里像捏着个玩具。“听说你当总监了。”
“嗯。”
“我早知道会有这一天。”他喝了口咖啡,皱了皱眉,大概嫌苦。“三年前你刚来的时候,我就跟老周说过,这小伙子跟别人不一样。”
“哪里不一样?”
“你干活儿的时候不看表。”他说,“别人干活儿,干一会儿看一眼时间,心里算着加班费。你不看。你盯着屏幕,一盯就是几个小时,中间连水都不喝。那时候我就知道,你不是在给别人干。”
我没说话。咖啡确实苦,但香气很浓。
“老周走了,你知道吗?”
“听说了。身体不好,申请病退了。”
“他走之前跟我吃了顿饭。”老杨把咖啡杯放下,杯底磕在桌面上,轻轻一声响。“他喝多了,说了一句实话。他说他这辈子最大的错误,就是把你当成了成本项。”
我端起咖啡,喝了一口。苦味从舌尖漫到喉咙,然后有一种很淡的回甘涌上来。
“他让我跟你说声抱歉。”老杨站起来,拍了拍我的肩膀,“我说你自己跟他说去。他不肯。我说那行,我替你带句话。李总,我话带到了。”
他走了。我坐在工位上,手里那杯美式从烫喝到凉。屏幕右下角跳出一封新邮件,是陈总发来的,抄送了全体股东。邮件标题是“关于技术部独立预算的提案”,正文只有两行字:技术部实行独立预算制,由李总监全权负责。项目分红方案即日生效。
我看了两遍,然后点了回复,写了一行字:收到,我会用好每一分钱。
发送。
那天晚上回家,我顺路去了一趟以前常去的那个路边摊。卖炒面的老刘还在,铁锅翻得火星四溅。“好久没见你了!”他喊。“最近忙。”“老样子?”“老样子。”
炒面端上来的时候,上面卧着一个煎蛋,旁边搁了一勺辣椒酱。我拿起筷子,吃了一口。味道没变,还是咸得发齁。但吃着吃着,我忽然想起一件事——三年前入职第一天,我在这里吃炒面,老刘问我新工作怎么样,我说“挺好的”。那时候口袋里只有三百块钱,房租下周到期。
我笑了笑,把炒面吃完了。扫码付钱的时候,多扫了五块。老刘在后面喊:“给多了!”我摆摆手,没回头。
第十五章 那顿没说话的饭之后
签完新合约的第四十五天,我收到了一封邮件。
是之前那个连锁餐饮集团的董事长发来的。他们内部孵化了一个数字化子公司,想找技术合伙人。邮件里附了一份商业计划书和一份意向协议,条件开得很优厚——股权、薪资、决策权,比现在高出不止一个量级。邮件末尾写了一句:“李工,上次汇报之后我就一直在关注你。你做的方案,每一个细节都经得起推敲。这样的人,不该只拿一份死工资。”
我盯着屏幕,光标停在回复框里,闪了五分钟。
然后我关掉邮件,打开终端,继续处理手头的项目。那天下午有个新系统上线,我带着团队做最后的压力测试。服务器机房的灯亮着,风扇转着,绿色的指示灯一排排亮起来,像一条安静流淌的河。
晚上回家,我跟老婆提了这件事。她正在帮儿子默写生字,听完之后笔顿了一下。“你想去吗?”
“暂时不想。”
“为什么?”
“这边的事还没做完。团队刚搭起来,知识库还在完善,明年还有两个大项目要上。”我靠在厨房门框上,“而且,我想看看陈总当初说的项目分红到底能有多少。”
她抬头看我,笑了一下。那笑容很轻,但眼睛里有光。“行,你定。”
那天晚上儿子睡着之后,我坐在客厅里,打开了那个牛皮纸笔记本的最后一页。三年前的第一笔记录是入职第一天,三年后的最后一笔记录是今天。我在中间画了一条竖线,左边写“以前”,右边写“现在”。
左边:一个人。所有事。随时待命。四千二。
右边:一个团队。有流程。有值班表。自己定价。
写完,我把笔记本合上,放在书架最上层。旁边的格子里,摆着儿子用彩纸折的一只青蛙,还有老婆考教师资格证的成绩单——她第三次考过了,笔试面试一次通过。成绩单上印着她的名字和“合格”两个字。
窗外的梧桐树抽了新芽,嫩绿色的,在夜风里轻轻晃动。我关了灯,卧室里传来儿子含含糊糊的梦话:“爸爸……糖瓜……”
我笑了。躺下来的时候,手机屏幕亮了一下。是小赵发来的消息:李哥,那个餐饮集团的客户问我们能不能做二期项目,我把你推过去了。报价你定,我不插手。
后面跟了一条:兄弟,你值这个价。
我没有回复。只是把手机调成静音,翻了个身。这一次,我知道明天早上醒来的时候,不用再摸黑找手机了。
第十六章 春天来的时候
儿子最近学会了一个新词:骄傲。他在学校拿了小红花,回来举着给我看:“爸爸,老师说我很骄傲。”我蹲下来,看着他的眼睛:“骄傲是好的,但别让它挡住你看别人的路。”他似懂非懂地点点头,然后跑去给妈妈看小红花。
老婆的教师资格证下来了,她在一家小学找了份代课的工作,教二年级数学。第一天上班回来,她说:“今天有个孩子把加法当减法做,我气笑了。”我说:“慢慢来。”她白了我一眼:“你当年教儿子6+7,教了十遍。”我举手投降。
周末的时候,我们一家三口去公园放风筝。风筝是儿子挑的,一只大蝴蝶,翅膀上印着彩色的花纹。风不大,风筝飞得不高,在树梢上面晃晃悠悠。儿子拽着线跑,老婆在后面追,我坐在草坪上看。
手机响了一下,是小赵发来的消息:李哥,新项目签约了,客户指定要你牵头。后面跟了一个握手的表情。
我回了个“好”,然后把手机收进口袋。阳光落在肩膀上,暖融融的。风筝还在天上,儿子的笑声从远处传过来,混着老婆喊“慢点跑”的声音。
我躺下来,后脑勺枕着胳膊,看着天空。春天的云很薄,像被风吹散的棉絮。我想起去年冬天那些个凌晨,想起机房里的嗡鸣声,想起四千二和四十二万的数字,想起老周保温杯里晃动的茶汤,想起陈总电话里呼啸的风声。那些画面一帧帧从脑子里过,像一部看了很久的电影终于放到了结尾。
结尾是什么?
不是升职,不是加薪,不是那些数字。
结尾是这个春天的下午,我躺在草坪上,听见儿子在笑,看见风筝在飞,知道自己明天早上醒来的时候,不用再摸黑找手机。结尾是那个牛皮纸笔记本还在用,但里面的内容从“故障处理”变成了“项目规划”。结尾是团队里的那个女孩现在能独立处理核心系统故障了,我在旁边看着,手不用碰键盘。结尾是小赵发来的那条消息,和四年前他朋友圈里那张截图,仿佛隔了一整个时代。
我坐起来,拍了拍身上的草屑。儿子跑过来,一头汗,把风筝线塞到我手里:“爸爸你放一会儿。”我接过线,蝴蝶在头顶晃了晃,稳稳地停在空中。风从远处吹过来,带着青草和泥土的味道。我拽了拽线,风筝往上窜了一截。
老婆走过来,递给我一瓶水。她站在旁边,看着风筝,头发被风吹起来几缕。“晚上吃什么?”她问。
“红烧排骨。”儿子抢答。
“行。”她笑了。
我把风筝线在手指上绕了一圈,慢慢收线。蝴蝶一点一点落下来,落在儿子伸出的双手里。他把风筝抱在怀里,像抱着一件宝贝。我们一家三口收拾东西往回走,儿子跑在前面,老婆走在旁边,我的手插在裤兜里,指尖碰到了那个牛皮纸笔记本的边角。
我没有拿出来。
只是走着。
春天来了。风是暖的,路边的花开得正好。
第十七章 那台老服务器的最后一夜
新合约签完的第二个月,那台2013年的IBM服务器终于退役了。
新机器已经上架,亮着蓝色的指示灯,安静得像一片湖水。我把老机器的电源一根一根拔掉,风扇声一点点慢下来,最后停住。机柜里忽然安静得不习惯。我蹲在地上,手放在老机器的外壳上。金属还是温热的,像刚退烧的额头。这三年里,这台机器宕过机、报过错、丢过数据,也扛过千万级的交易流量。它不完美,但它一直在转。
“辛苦了。”我说。
然后站起来,拍了拍膝盖上的灰,把退役标签贴在机柜门上。走出机房的时候,新来的女孩正在走廊里跟供应商打电话,声音明亮:“对,我们李总说了,这个配置再翻一倍,三年内不用换。”她看见我,比了个大拇指。我点点头,往会议室走。
新合约的第一个项目会,我坐在以前陈总坐的位置。桌子尽头是白板,上面贴着项目进度表。小赵坐在旁边,把客户需求一条条讲出来,我边听边在白板上画架构草图。会开完的时候,白板上画满了箭头和方框,密密麻麻,像一张地图。
“李总,这个架构图比上次那个复杂多了。”小赵说。
“因为我们要做的不只是一个项目。”我把马克笔盖上,“是一个能复用的平台。做一次,后面所有项目都省力。”
他想了想,点点头:“行,你画图,我卖嘴。咱俩分工。”
我笑了一下。以前他说“咱俩”的时候,我总觉得别扭。现在不觉得了。
那天晚上,我最后一个离开公司。锁门的时候,回头看了一眼走廊尽头那间机房。灯已经灭了,门关着,里面只有新机器的蓝色指示灯在黑暗中安静地亮着。像一片新的星空,等着新的守夜人。
第十八章 原来每个人都在算自己的账
当上总监之后,我开始参加公司的经营会。会议室里坐的都是各部门负责人,老周的位置换成了我,小赵坐在销售总监旁边。桌上摆着报表和投影遥控器,窗户外面是城市的天际线。
第一次开会的时候,财务部汇报年度预算。听到技术部的预算数字,我愣了一下——比我预计的多了将近一倍。陈总在线上参会,声音从音箱里传出来:“李总监,你自己说,这些钱够不够?”
我说:“够。但我要加一条——技术部的项目分红单独列支,不占部门预算。”
几个股东在下面交头接耳。陈总在线上笑了一声:“行,你写个方案,下次会议表决。”
散会之后,小赵跟我一起下楼。电梯里只有我们两个人,他忽然说:“李哥,你知道我为什么帮你说话吗?”
“你说过,心里有数。”
“对,但还有一条。”他盯着电梯楼层数字,“去年勒索病毒那次,你恢复数据的时候,我坐在旁边看了一整夜。你敲键盘的速度,比我打销售电话快多了。那时候我就想,这人要是走了,我那些客户得跑一半。所以我得帮你。帮你就等于帮我。”
电梯到了一楼,门开了。他先走出去,回头冲我笑了一下:“很功利对吧?但我不瞒你。”
“不功利。”我说,“你算得对。”
他愣了一下,然后哈哈大笑。写字楼大堂里人来人往,他的笑声混在皮鞋跟敲击地面的声音里,很快就散了。但我知道,那句话是真的。他算的是他的账,我算的是我的账。两本账对上的一天,就是合作开始的一天。
三月的时候,公司团建去郊区民宿。晚上烧烤,炭火烧得很旺,肉串上的油滴下去,滋滋响。大家围坐成一圈,有人唱歌,有人打牌,小赵喝多了,搂着产品经理老孙的肩膀说胡话:“老孙你那个需求文档写得真好……比我给客户写的方案好多了……你该拿四十二万……”
老孙笑,眼镜歪在一边:“我拿一万八。但我不亏。”
“怎么不亏?”
“我写的每个需求,都有人用。用户点一下按钮,跳出来的页面是我设计的。那种感觉,比钱实在。”他喝了口啤酒,“而且我头发还没掉光。”
众人哄笑。我坐在圈外,手里拿着一串烤焦的玉米。火光映在每个人的脸上,明明暗暗。我忽然发现,这些平时在格子间里沉默的人,每个人都有自己的账本。有人记钱,有人记成就感,有人记成长,有人记人情。这些账本平时不打开,但喝多了酒、点着了火,就会一页页翻开。
那天晚上我提前走了。走之前去了一趟洗手间,出来的时候碰到老孙在走廊里醒酒。他靠在墙上,眼镜摘下来拿在手里,眯着眼看我。
“李总。”
“别叫李总。”
“行,李哥。”他擦了擦镜片,“我问你个问题。”
“说。”
“你当总监之后,开心吗?”
我想了想:“还行。”
“以前呢?”
“以前……也说不上不开心。”
“那区别在哪儿?”
走廊尽头传来烧烤的烟味和笑声。我看着老孙那张被酒精熏红的脸,忽然觉得这个问题比四十二万还难答。
“区别在于,”我说,“以前我做事,心里总有一个声音在问‘值不值’。现在那个声音不问了。”
老孙把眼镜戴上,看着我,点了点头。“懂了。”他拍拍我的胳膊,往烧烤摊走回去,背影晃悠悠的,踩着自己的影子。
我站在原地,听了一会儿远处的笑闹声,然后转身走了。
第十九章 老周的最后一次来访
四月中旬,公司开了年度股东大会。我作为技术总监列席,坐在长桌末尾。投影仪上滚动着去年的经营数据,营收增长百分之二十三,利润增长百分之十七。陈总在线上主持,声音比上次打电话时清亮不少。
最后一个议题是技术部预算提案。我站起来,走到白板前,把方案一页页翻过去。独立预算、项目分红、人才培养、技术栈升级。讲完之后,股东们投票,全票通过。
散会之后,陈总单独给我打了电话。“小李,你那个笔记本,还在用吗?”
“在。”
“我听说你记了三年。”
“四年了。”
电话那头沉默了一会儿。“继续记。”他说,“明年这个时候,我要看你的新账本。”
我挂了电话,从公文包里拿出那个牛皮纸笔记本。封面已经磨破了,边角用透明胶粘过,里面的纸页有些泛黄。我翻到最新的一页,写下:2024年4月18日,技术部独立预算通过。团队十七人。项目分红方案生效。
写完,我把笔记本合上,放进包里。窗外是四月的好天气,梧桐树长满了新叶,阳光从缝隙里漏下来,碎碎地铺在人行道上。我走出公司大门,没有回头。
那天下午,我在楼下咖啡厅碰见了老周。他瘦了很多,头发全白了,但精神还好。保温杯换成了纸杯,大概是因为病退之后不用再整天喝茶了。他看见我,愣了一下,然后笑了笑,招手让我过去坐。
“小李,不,李总。”他改了称呼,语气里没有讽刺,反而带着一点释然。
“周总,您别这么叫。”
“该叫。”他喝了口纸杯里的水,“我听说了,技术部独立预算,项目分红。陈总果然没看错人。”
我没说话。咖啡厅里放着轻音乐,窗外的阳光落在他面前的桌上,照出杯底那一圈水渍。
“小李,我跟你说句掏心窝子的。”他又用上了那句口头禅,但这次听起来和以前不一样,“我当初拦着你,是怕你上来之后压不住人。技术好的人往往管不好人,我见过太多了。但后来我发现你不一样——你带团队,不是靠管,是靠做。你把东西都写出来,教给别人,让别人也能干。这比管人高明。”
“周总,您没错。”我说,“那时候我确实只会干活。”
他摆了摆手:“别给我找台阶。错了就是错了。”他站起来,纸杯捏扁了扔进垃圾桶,“我走了。以后有空来家里坐,我泡茶。真正的茶,不是保温杯里那种。”
我点点头。他走出咖啡厅,背影比从前小了一圈,皮鞋声也不再那么响了。窗外的阳光照在他身上,把他花白的头发照得有点发亮。
我坐了一会儿,喝完杯里的咖啡。然后起身,回公司,继续画我的架构图。
第二十章 春天之后
儿子最近学会了一个新词:骄傲。他在学校拿了小红花,回来举着给我看:“爸爸,老师说我很骄傲。”我蹲下来,看着他的眼睛:“骄傲是好的,但别让它挡住你看别人的路。”他似懂非懂地点点头,然后跑去给妈妈看小红花。
老婆的教师资格证下来了,她在一家小学找了份代课的工作,教二年级数学。第一天上班回来,她说:“今天有个孩子把加法当减法做,我气笑了。”我说:“慢慢来。”她白了我一眼:“你当年教儿子6+7,教了十遍。”我举手投降。
周末的时候,我们一家三口去公园放风筝。风筝是儿子挑的,一只大蝴蝶,翅膀上印着彩色的花纹。风不大,风筝飞得不高,在树梢上面晃晃悠悠。儿子拽着线跑,老婆在后面追,我坐在草坪上看。
手机响了一下,是小赵发来的消息:李哥,新项目签约了,客户指定要你牵头。后面跟了一个握手的表情。
我回了个“好”,然后把手机收进口袋。阳光落在肩膀上,暖融融的。风筝还在天上,儿子的笑声从远处传过来,混着老婆喊“慢点跑”的声音。
我躺下来,后脑勺枕着胳膊,看着天空。春天的云很薄,像被风吹散的棉絮。我想起去年冬天那些个凌晨,想起机房里的嗡鸣声,想起四千二和四十二万的数字,想起老周保温杯里晃动的茶汤,想起陈总电话里呼啸的风声。那些画面一帧帧从脑子里过,像一部看了很久的电影终于放到了结尾。
结尾是什么?
不是升职,不是加薪,不是那些数字。
结尾是这个春天的下午,我躺在草坪上,听见儿子在笑,看见风筝在飞,知道自己明天早上醒来的时候,不用再摸黑找手机。结尾是那个牛皮纸笔记本还在用,但里面的内容从“故障处理”变成了“项目规划”。结尾是团队里的那个女孩现在能独立处理核心系统故障了,我在旁边看着,手不用碰键盘。结尾是小赵发来的那条消息,和四年前他朋友圈里那张截图,仿佛隔了一整个时代。
我坐起来,拍了拍身上的草屑。儿子跑过来,一头汗,把风筝线塞到我手里:“爸爸你放一会儿。”我接过线,蝴蝶在头顶晃了晃,稳稳地停在空中。风从远处吹过来,带着青草和泥土的味道。我拽了拽线,风筝往上窜了一截。
老婆走过来,递给我一瓶水。她站在旁边,看着风筝,头发被风吹起来几缕。“晚上吃什么?”她问。
“红烧排骨。”儿子抢答。
“行。”她笑了。
我把风筝线在手指上绕了一圈,慢慢收线。蝴蝶一点一点落下来,落在儿子伸出的双手里。他把风筝抱在怀里,像抱着一件宝贝。我们一家三口收拾东西往回走,儿子跑在前面,老婆走在旁边,我的手插在裤兜里,指尖碰到了那个牛皮纸笔记本的边角。
我没有拿出来。
只是走着。
春天来了。风是暖的,路边的花开得正好。
人心都是相互的,相处贵在真诚与体谅!
创作声明:本篇文章由 AI 辅助创作,经人工整理润色完成,情节虚构,仅供交流参考,请勿对号入座
特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。
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.