被开除三年,前总监找我修系统,我开价80万,他犹豫,我直接挂电话
三年前我被公司扫地出门,走的时候工位上只剩一个纸箱,连我自己买的绿萝都被前台小妹拿走了。
前总监站在电梯口,斜着眼睛说:“小周啊,技术这条路,你走不远。”
三年后,他的号码在深夜亮起。
“小周,我是你王哥,公司系统崩了,你能不能回来看看?”
“可以。”我顿了顿,“八十万。”
电话那头安静了三秒,随即传来一声压抑的抽气。
我等他犹豫。
五秒后,我挂断了电话。
窗外下着雨,我坐在新公司的工位上,对面墙上挂着一块白板,上面写着一个数字:三亿。
那是我走之后,他签下的第一笔融资。
用我的系统。
那晚挂断电话之后,我在椅子里坐了很久,窗外的雨声像是某种旧电影的背景音,一下一下敲在玻璃上,也敲在记忆那些不太愿意去触碰的角落里。
我其实记得很清楚,三年前离开公司那天,没有下雨。是那种上海夏天里最常见的闷热天气,空气里浮着看不见的灰尘,亮得晃眼。我抱着那个纸箱,里面装着一个机械键盘、两包没拆封的挂耳咖啡,还有一本已经被我翻得卷了边的《算法导论》。走到电梯口的时候,王建国从另一部电梯里走出来,身后跟着两个新来的技术实习生,腋下夹着笔记本电脑,神色匆匆。
他看见我,脚步顿了一下。
“小周啊。”他叫住我,声音不大,但电梯厅里空荡荡的,每个字都听得清楚,“技术这条路,你走不远。”
我看着他。他比我大十岁,发际线已经有些高了,穿一件藏青色的Polo衫,领口别着一副墨镜。他脸上的表情很复杂,但那其中没有一丁点遗憾或者愧疚,更像是一种居高临下的、早已预见的宣判。
我没说话。因为我确实没什么可说的。我被裁了,理由是“个人能力与岗位需求不匹配”,但所有人都知道,真正的原因是我不愿意在系统里留后门,不愿意把用户数据卖给那家对赌协议背后的资方。王建国是那个拍板要卖数据的人,也是那个拍板让我走的人。
电梯门开了,我走进去。就在门要合上的那个瞬间,我听见他补了一句:“你那个绿萝,前台小刘拿走了,说反正你也不要了。”
门合上了,他的脸变成一条窄窄的缝。
那盆绿萝是我入职第一天买的,养了三年,藤蔓都垂到地上了。
三年能改变很多事。比如我现在坐在虹桥这边一家科技公司的独立办公室里,窗外能看到高架上成串的车灯像红色的河流一样缓慢移动;比如我的手机里存着两个号码,一个是王建国的,备注只有三个字——“前总监”,另一个是猎头公司的,我把它设置成了免打扰;再比如,我已经很少想起那盆绿萝了,除非是在这样的雨夜里。
手机屏幕又亮了一下。我低头看,是一条短信,来自那个号码。
“小周,公司真的遇到大麻烦了,系统崩了三天了,老客户都在闹,再这样下去我们要赔死。你帮帮忙,算我求你。”
我没回。把手机翻了个面,屏幕朝下扣在桌上。
我知道他的公司现在叫“云链科技”,做的是供应链金融SaaS,去年还拿了新一轮融资,新闻通稿里写“五年磨一剑,厚积薄发”。新闻配图里,王建国站在一块曲面屏前面,西装革履,笑得像一尊镀了金的佛。那块曲面屏上展示的,就是我当年写的系统架构图,连字体都没换过。
可笑吗?挺可笑的。但更可恨的是,他们真的把那套系统用出了问题。供应链金融这东西,每一笔钱都要经过清算、对账、风控、放款,环环相扣,一个环节的数据出错,整条链路就会像多米诺骨牌一样塌下去。系统崩了三天,意味着什么?意味着至少有几十万笔交易停在中间状态,钱不知道在哪里,货不知道在哪里,客户在电话那头把客服的祖宗十八代都问候了个遍。
我都能想象得到王建国现在是什么样子。他一定在办公室里来回踱步,头发一定又掉了不少,手机一定被投资人、合伙人、客户轮番轰炸到发烫。而他那几个所谓“技术骨干”,三年前招进来的时候只会点头说“好的王总”,现在恐怕连我的代码注释都看不懂。
我写的系统,我比谁都清楚。它有一个非常隐蔽的脆弱点,在极端并发情况下,缓存层和消息队列之间会出现消息积压,积压到一定阈值,系统会触发自我保护机制,然后……全线崩溃。那个阈值,我当年设成过三百万笔。三年前,他们的日交易量连三十万都不到,根本碰不到那个天花板。但现在不一样了,他们做大了,日交易量峰值超过五百万笔,于是天花板就成了一颗埋了三年的雷。
我当年提过要优化这个架构,写了三次方案,都被否了。王建国说:“小周,别那么较真,先跑起来再说,等真出问题了再改也来得及。”
现在,问题来了。
我从椅子上站起来,走到窗边。雨已经小了,楼下便利店的灯箱还亮着,白光里有一层薄薄的水汽。我今年三十一岁,头发还很密,体形也没怎么变,但镜子里的人看起来和当年那个抱着纸箱走的年轻人不一样了。眼角有了点细纹,下巴的线条更硬了一些,眼睛里那种随时准备证明自己的东西没了,取而代之的是一种更安静但也更冷的东西。
我知道自己完全可以拒绝他。我有自己的工作,有不错的收入,还有一个在谈的创业项目,方向是新一代分布式账本技术,比他那套供应链金融系统要先进得多。我不缺这八十万,也不缺他那声迟来的道歉。但我还是报了价,因为我想看看,这个曾经把我像扔一块废料一样扔出去的人,在钱和尊严之间,会选什么。
手机又响了,这次是电话。
我看着屏幕上闪烁的那个名字,没有马上接。让它响了七八声,直到快要自动挂断的时候,我才拿起来。
“喂。”
“周工,我是王建国。”电话那头的声音和我记忆里有些不一样,沙哑了不少,背景音里能听到键盘敲击的声音和某个人压低嗓门喊“催一下支付通道那边”的声音。办公室里还有人在加班,凌晨十二点半的加班。
“我知道。”我语气平淡,“说。”
“八十万……我出。”他像是下定了某种决心,又像是被什么东西逼到了墙角,“但你今天就得来,我这边实在顶不住了。客户在电话里说,明天早上九点之前如果还恢复不了,他们就要走法律程序。”
“王总。”我叫了他一声,停顿了一秒,“钱的事是钱的事。但我要你写一封公开信,承认当年系统的事故隐患是你决策失误压下去的,要把原因、经过、影响都写清楚,发在公司公众号上,让所有员工和客户都看到。”
“什么?”他的声音陡然拔高,“你疯了?这样我的投资人会怎么想?客户会怎么想?公司还要不要上市了?”
“那你就另请高明吧。”我说完,手指移向挂断键。
“等等!”他急了,“周工,咱们能不能……坐下来谈?你要什么条件都可以聊,钱我可以加,那封公开信……能不能换个方式?比如内部邮件?或者我私下给你道个歉,请你吃顿饭,正式的,给你摆一桌——”
“王建国。”我打断他,语气里没有一点起伏,像在陈述一个无关紧要的事实,“我不是在跟你商量。”
电话那头沉默了很久。我听见他粗重的呼吸声,像一头困在笼子里的野兽,烦躁、愤怒,却又不敢发作。后来我才知道,他当时工位旁边的桌上就摆着一份律师函草稿,客户发来的,索赔金额是七千万。七千万和八十万,放在天平两端,他根本没有选择的余地。
“好。”他终于开口,声音像是从牙缝里挤出来的,“就按你说的办。但你今晚必须到,先把系统恢复,公开信……我明天发。”
“现在发。”我说,“不用很长的文章,把事情说清楚就行。配图可以放你们公司的Logo,我不介意。”
“……周慕,你别太过分。”
“我过分吗?”我笑了一下,自己都觉得那个笑很轻,“三年前你让我走的时候,可没想过什么叫过分。”
挂断电话之后,我在窗前又站了一会儿。雨彻底停了,云层裂开一道缝,露出一小片深蓝色的天。手机很快又震动了一下,是公众号推送——我关注了“云链科技”的官方账号,倒不是为了看王建国的公关稿,只是习惯性地留着,像一个伤口愈合之后留下的浅疤,偶尔会摸到。
推送的标题是《关于系统异常停机的技术说明与致歉》。我点进去,扫了几眼,措辞很谨慎,但该承认的确实都写了:架构存在缺陷、风险评估不足、决策流程存在疏漏、对技术团队管理不力。虽然没有直接提我的名字,但最后一段写了:“我们向曾经的架构师表示诚挚的感谢,他的专业能力和职业操守,值得我们重新审视与学习。”
我盯着那段话看了几秒,然后锁了屏。
拿起外套,准备出门。
我住的地方离云链科技不近,开车走中环,不堵的情况下也要半个小时。这个点车流已经很少了,高架两侧的路灯一盏盏往后退,灯光在湿漉漉的柏油路面上拉出长长的倒影。我打开车载音乐,随机播到一首老歌,是李宗盛的《山丘》。
“越过山丘,才发现无人等候。”
我跟着哼了两句,嗓子有些干。
三年前从公司离开那天,我坐在出租车里,也听的是这首歌。那时候司机师傅说:“小伙子,年轻人别垮着脸,这世上没有过不去的坎。”我当时没说话,心里只想着一件事:我写了四年代码,写了无数个日夜,最后连一句像样的告别都没得到。
到了云链科技的楼下,我停好车,仰头看了一眼。那栋写字楼在三年前刚投入使用时还只有零星的灯光,如今已经成了这一片园区里最亮的那一盏。这三年,他们确实做大了。也正因如此,那套系统的崩溃才会让他们如此恐惧。
前台已经下班了,大门是虚掩的,估计是王建国让人给我留了门。我走进去,按电梯,七楼。
电梯门开的时候,一个姑娘站在门口,手里拿着一瓶矿泉水,神色疲惫。她看见我,愣了一下,然后试探着叫了一声:“周……周工?”
我看了她一眼,认出这是当年那个把我绿萝拿走的前台小妹,姓刘,叫刘雨。三年过去,她已经不在前台做了,胸前挂的工牌上写的是“运维部·刘雨”。
“你好。”我点了点头。
“周工,真的是你……”她的表情很复杂,有惊喜,也有一种不知从何说起的尴尬,“王总跟我说你会来,我还不信。你……你这些年过得还好吗?”
“还行。”我没有多说,侧身从她身边走过,往里面走。
办公区灯火通明,几十号人挤在工位前,屏幕上的报错信息连成片,红彤彤的一片,像一场数字火灾。空气里弥漫着速溶咖啡和汗水混杂的气味。有人抬头看我,认出来了,又赶紧低下头,假装在敲键盘。
王建国站在会议室的玻璃门前,看见我,快步迎上来。他比三年前胖了一点,但眼神里的那股精明还在,只是此刻被焦躁压了下去,像被石头盖住的火,烧得急,却冒不出烟。
“周工,可算把你盼来了。”他伸出手想跟我握,我站在原地没动,他的手在空中停了两秒,讪讪地收了回去,“那个……技术部的同事把故障日志整理出来了,你要不要先看看?”
“不用。”我绕过他,径直走向最里面那台服务器所在的玻璃机房,“带我去核心节点。”
王建国跟在我身后,像一条影子。那几个所谓的技术骨干也围了上来,七嘴八舌地开始汇报:“周工,我们怀疑是消息队列的消费速度跟不上生产速度,导致offset堆积,然后触发了限流——”
“是‘积压保护’。”我打断他们,手已经放在了机房门禁的读卡器上,没刷,回头看了一眼王建国,“开门。”
他赶紧从裤兜里掏出一张卡,滴地刷开。
机房里很吵,风扇声嗡嗡嗡地响,像一群永远不知道疲倦的蜜蜂。我走到那台标着“核心业务节点”的服务器前,从兜里掏出一个U盘,插进去,然后开始敲命令。
其实我本可以远程操作。但有些事,非得站在那里,让所有人都看着,才有仪式感。
我修系统的过程,在他们眼里可能像个神棍。因为我不看日志,不打断点,不用诊断工具,只是在终端里敲了一串看起来毫无规律的字符。只有我自己知道,我输入的是当年留下的一个隐藏管理接口的密钥,那个密钥可以绕过积压保护机制,直接重启底层路由,把消息队列里的数据强制分流到备用节点,再用离线任务慢慢重新同步。
这是我给自己留的一扇后门。不是为了作恶,而是因为我太清楚王建国的性格,他迟早会把系统逼到崩溃。我不确定自己会不会被叫回来,但我知道,如果真的到了那一天,我不能眼睁睁看着那套我亲手搭建的东西死掉。
敲下回车,屏幕上的红色报警信息开始消失,一条接一条,像退潮一样,露出一片沉静下来的绿色。
“好了。”我直起身。
身后一片寂静。过了几秒,有人鼓起掌来,掌声稀稀拉拉,最后连成一片。我回头,看见王建国站在人群后面,嘴唇动了几下,像是想说什么,但最终一个字也没说出口。
我走到他面前,从口袋里掏出手机,打开一个收款码。
“八十万,现在转。”
他看着我,眼神里有一种被碾压过后的灰败。他拿出手机,操作了几下,我的手机响起一声清脆的提示音。我低头看了一眼,八十万已经到账。
“公开信发了吗?”我收起手机。
“发了。”他声音发虚。
“好。”我点了点头,转身往门口走。
“周慕!”他在身后喊住我,声音里带了一点不知道是愤怒还是别的什么东西,“你就这么走了?系统只是暂时恢复,后续的架构优化怎么办?那个底层设计的问题一天不解决,迟早还会再崩——”
“那是你们的问题了。”我停下脚步,没回头,“我跟你之间的账,清了。”
走出云链科技大楼的时候,天边已经泛起了很浅很浅的鱼肚白。我把车开上高架,车窗摇下一条缝,清晨的风灌进来,带着雨后泥土的腥气。
手机响了一声,是一条短信,来自王建国。
“周慕,我当年看错了你。但你今天做的事,我会记一辈子。”
我笑了笑,没回。顺手把那个备注为“前总监”的号码,删掉了。
回到家里,天已经大亮。我洗了个澡,换了身衣服,从冰箱里拿了一盒牛奶,在餐桌前坐下。手机屏幕亮起来,是我的合伙人发来的消息。
“哥,你昨晚干嘛去了?我敲了半宿代码,突然想通了一个大问题,咱们的共识层设计,可以在这个地方加一个非线性反馈机制……”
我看了两秒,放下牛奶,拿起手机回:“等我到公司细说。”
窗外的阳光很亮,照在对面的楼玻璃上,反射进客厅,像一片碎金。我忽然想起那盆绿萝。它被我养了三年,走的时候连个招呼都没打。
不知道它现在过得怎么样。
应该,挺好的吧。
我打开电脑,登录云链科技的官网,在“关于我们”那一页里,看到了他们团队的照片。有一张是团建合影,大家笑得很开心,背景是一片草地。照片角落的窗台上,摆着一盆绿萝,叶子绿得发亮,藤蔓垂下来,像在对着镜头笑。
我看了几秒,然后关掉了页面,新建了一个文档,打下一行字:
“创业项目正式启动。”
两个月之后,我听说云链科技完成了新一轮融资,金额正好是三亿。那篇新闻通稿里没有再提系统崩溃的事,王建国站在镜头前,笑得比以前更笃定。
而那八十万,我以个人名义捐给了一个山区小学的信息化建设项目。那张转账回执,我截了图,存在手机里一个叫“过去”的相册中,从此再也没有打开过。
特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。
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.