
上点众小说APP
体验流畅阅读
他以为我在写日记
我废弃的技术方案存在致命缺陷,同事曲远窃取后当成自己的拿去用,还因此升职加薪成了部门红人。
项目验收那天,客户技术总监方岩盯着那个我三个月前就标注过“高并发会死锁”的缓存节点,皱着眉签了字。
系统上线不到一个月,月底结算时并发量冲到8900,底层算法直接崩溃,客户损失280万。
曲远在会议室里腿都在抖,外包团队发来的聊天记录清清楚楚:“底层代码我们看不懂,是你给的,我们只能表面修补。”
客户方总经理看着解约函,冷冷地说:“480万赔偿,三天内到账,否则法庭见。”
1
曲远站在投影前,遥控笔在手里转得飞快。
“这套方案的核心是动态负载均衡,大家看这个架构图——”
我盯着那张PPT,笔尖在本子上顿住。那个三层调度模型,包括中间那个多余的缓存节点,跟我三个月前扔进碎纸机的初稿一模一样。连那个会导致高并发时数据倒灌的设计缺陷都原封不动。
“曲远这方案思路很新啊。”佟海靠在椅背上,手指敲着桌面。
“熬了三个通宵。”曲远按下翻页键,“底层算法我做了优化,比常规方案效率提升40%。”
我在笔记本上记下时间:11月19日10:47。
旁边的老张凑过来看了眼投影,小声说:“这个缓存层架构,好像在哪见过?”
曲远听见了,笑着接话:“可能是行业通用思路吧,但实现方式完全不同。”
佟海打断我们:“别讨论细节了,客户那边催得紧。”他看向曲远,“你有把握三个月交付?”
“没问题。”曲远把遥控笔往桌上一放,“技术框架已经跑通,就差开发实现。”
跑通。我差点笑出声。那个缓存节点在并发超过5000次时会触发死锁,我当初测了整整一周才定位到问题,最后选择推翻重来。
“那就这么定了。”佟海站起来,“曲远,这个项目你来负责,成了直接给你报晋升。”
会议室里响起零星的掌声。曲远冲大家点头致意,目光扫过我时停了半秒。
我合上笔记本,举手:“佟主管,我能说句话吗?”
“宁川你说。”
“我申请退出项目组。”
空气凝固了两秒。
佟海皱眉:“为什么?”
“个人原因,想调去后勤部门。”我把笔记本推到桌子中间,“技术岗不太适合我。”
曲远眼里闪过一丝意外,很快被笑意掩盖:“宁川,不至于吧?大家一起做项目——”
“我考虑清楚了。”我打断他,看向佟海,“人事调动需要您签字。”
佟海盯着我看了五秒,点头:“行,下午来我办公室办手续。”
散会后,曲远追到走廊里:“兄弟,真不是因为方案被采纳你不高兴吧?”
“不是。”我按下电梯键,“恭喜你。”
电梯门打开,他拦住我:“要不晚上一起吃饭?我请客。”
“不了,要整理工位。”
电梯门在他脸前合上。镜面反光里,我看见他站在原地,遥控笔还在手里转。
下午三点,佟海在调动单上签字。
“你确定?”他把笔帽盖回去,“后勤部就是打杂,以你的资历——”
“确定。”我接过文件,翻到第二页交接清单,“我负责的技术文档怎么处理?”
“按规定销毁。”佟海看了眼电脑屏幕,“保密条例你知道的。”
我拿起他桌上的笔,在清单备注栏写:“项目初稿相关文档及测试数据已按保密规定销毁,服务器已提交设备部报废。”然后把笔递给他:“麻烦您签字确认。”
佟海扫了一眼,刷刷签上名字。
“还有事吗?”
“没了。”我拿起文件,“谢谢佟主管这三年照顾。”
他摆摆手,我转身出门时,听见他在打电话:“对,曲远的项目定下来了,你准备一下晋升推荐表......”
晚上七点,曲远发了条朋友圈。
配图是佟海签字的晋升推荐表,文字只有四个字:“天道酬勤。”
点赞99+,评论区全是恭喜。
我给他点了个赞,然后放下手机,继续往纸箱里装东西。工位上的荣誉证书、马克杯、键盘,三十年的痕迹塞进一个破纸箱刚刚好。
“还没走?”曲远端着咖啡走过来,看了眼纸箱,“这些不要了?”
“后勤部有新工位。”我把最后一个相框放进去。
他把咖啡放在我桌上:“别多想,以后有机会还能调回来。”
“不用。”我拎起纸箱,“我挺适合后勤的。”
他拍了拍我肩膀:“那行,以后有事随时找我。”
我笑着点头,目送他走进项目组独立办公室。透过玻璃墙,能看见他把晋升推荐表贴在白板上,然后拍照。
纸箱有点重,我走到茶水间门口时停下来歇了歇。里面传来两个实习生的声音。
“曲工这方案真牛,佟主管当场就拍板了。”
“人家有实力啊,听说熬了三个通宵。”
“宁川那个老员工不是也在做方案吗?怎么突然调走了?”
“肯定是竞争不过呗,技术不行还死撑着。”
我推开门,两个人立刻闭嘴。
“借过。”我把纸箱放在地上,接了杯水,一口气喝完,然后重新拎起箱子走出去。
身后传来压低的笑声。
2
曲远的独立办公室在十楼,玻璃墙上贴着项目启动倒计时。
我现在的工位在负一层,设备库房旁边,没窗户,常年开着日光灯。桌上堆着各部门送来的设备采购申请表,最上面那张是曲远签的——项目组要新增五台服务器。
“宁川,这个批一下。”后勤部老刘把文件夹扔过来,“曲工那边急着用。”
我翻开采购清单,配置参数那栏写得很模糊:“用途呢?”
“项目启动会要用,具体问他去。”老刘打了个哈欠,“反正有佟主管签字,你走流程就行。”
我看了眼佟海的签名,盖上文件夹:“行。”
楼上会议室里,曲远正在做项目启动汇报。
我从监控室的屏幕上看见客户方技术总监方岩坐在第一排,对着PPT皱着眉。曲远讲到架构设计时,方岩抬起手。
“这个缓存层的调度逻辑能详细说说吗?”
曲远笑了笑:“方总是担心性能问题?我们做过压力测试,完全没问题。”
“测试报告能提供一份吗?”
“当然,会后发您邮箱。”
方岩点点头,没再说话,但眉头一直没松开。
监控画面切到佟海那边,他正在跟客户方运营总监碰杯:“方案绝对靠谱,三个月保证交付。”
我关掉监控,在采购单上签了字。
第二天上午,曲远下楼找我。
“宁川,那个缓存节点的参数配置,你还记得吗?”他把笔记本电脑放在我桌上,屏幕上是一串代码。
我扫了一眼,那正是当初我测试时触发死锁的那段逻辑:“不记得了,我已经不负责技术。”
“就简单问问。”他往旁边凑了凑,“你看这个超时阈值,设置多少合适?”
“这得看并发量。”我合上他的电脑,“但我现在真帮不了你,不在项目组,不方便干涉。”
他愣了一下:“至于吗?”
“规矩。”我指了指墙上的保密条例,“佟主管签的调令上写得很清楚。”
曲远盯着我看了三秒,拿起电脑:“行,那我自己研究。”
他走到门口又回头:“对了,你当初做方案时用的那批测试服务器还在吗?”
“报废了。”我翻出设备清单,“上个月刚处理完,都在这。”
他接过清单看了看,没说话,转身上楼。
下午四点,我收到项目组的设备申请。
曲远要组建新团队,申请了十个工位和配套设备。附件里是人员名单,我一个个看过去——八个应届生,两个实习生。
我敲了敲老刘桌子:“曲工这团队配置,佟主管知道吗?”
“知道啊,佟主管说让年轻人多锻炼。”老刘头也不抬,“怎么了?”
“没事。”我在申请单上签字,“就是好奇。”
老刘这才抬头:“你是不是还惦记着项目组?我跟你说,都调出来了就别多想,安心在后勤待着。”
我笑了笑,把文件放进待办箱。
晚上加班时,技术部的老张来库房找东西。
“你真待得住?”他翻着工具箱,“曲远那个团队,全是新人,连个能带队的都没有。”
“不关我事。”
“得了吧。”老张找到螺丝刀,直起腰,“上周他来找我帮忙,我说手头有项目走不开。其实就是不想趟这浑水。”
我抬头看他。
“你不觉得奇怪吗?”老张压低声音,“部门里有经验的,没一个愿意进他项目组。”
“可能是大家真的忙。”
“忙个屁。”老张啪地关上工具箱,“都不傻,那方案一看就有问题,谁愿意跟着背锅?”
他走到门口又补了句:“就曲远自己看不出来,还以为捡着宝了。”
库房重新安静下来。
我打开电脑,调出上个月的设备报废记录。那批服务器的硬盘已经做过消磁处理,测试数据彻底清空,但报废单上的时间戳很清楚——就在佟海签人事调动的那天下午。
我把报废单打印出来,放进文件夹,标签上写:“项目初稿相关,已销毁。”
3
周例会上,曲远把进度报告投在屏幕上。
我坐在最后一排,桌上放着刚签完的设备维保合同。会议室在十楼,我是上来送文件的,佟海让我旁听。
“底层算法实现遇到了点小问题。”曲远翻页,“但不影响整体进度。”
方岩放下笔:“什么问题?”
“就是......调度逻辑有些地方需要优化。”曲远的遥控笔转得更快了,“技术细节比较复杂,我们内部在攻克。”
“能具体说说吗?”方岩往前倾了倾身子,“我们技术团队可以配合排查。”
“不用。”曲远笑得有点僵,“下周例会我会提供完整测试数据。”
方岩盯着他看了三秒,在笔记本上写了什么。
佟海打圆场:“方总放心,曲远是我们部门最优秀的技术骨干,肯定没问题。”
散会后,佟海把我叫到茶水间。
“宁川,你跟曲远关系不错。”他往纸杯里倒咖啡,“他那边遇到点技术难题,你帮帮忙?”
“我现在不负责技术。”
“就指点指点,又不让你回项目组。”佟海把咖啡递给我,“大家都是老同事。”
我接过杯子,没喝:“佟主管,当初调岗申请是我自己写的,上面写得很清楚——技术能力不足。”
佟海的笑容顿了顿。
“既然能力不足,就不该误导项目组。”我把咖啡放在桌上,“这是对项目负责。”
他盯着我看了五秒,端起咖啡转身走了。
第二天,曲远的采购申请又来了。
这次是追加预算,要新买三台高配服务器。我看了眼金额,比常规采购贵了一倍。
“这配置有点高啊。”我拿着申请单去找老刘,“是客户要求的?”
“不知道,反正佟主管签字了。”老刘看了眼,“你觉得有问题?”
“倒也不是。”我把单子放下,“就是好奇为什么突然要追加。”
老刘凑过来,压低声音:“我听说曲远找了外包团队帮忙,这钱可能是付给他们的。”
“外包?”
“对啊,技术搞不定嘛。”老刘撇撇嘴,“不过这事别往外说,佟主管不想让客户知道。”
我点点头,在申请单上签了字。
下午,财务部的小王来找我对账。
“宁川,这个设备采购数量,你确认一下。”她把清单推过来,“曲工项目组报了十五台服务器,但我看库房入库记录只有十二台。”
我调出入库单,数字确实对不上:“可能是分批采购?”
“那也得有记录啊。”小王皱着眉,“要不你问问曲工?”
“行,我问问。”
我拿着清单上楼,曲远办公室的门关着,里面传来争吵声。
“这个逻辑根本跑不通!”一个陌生男声,“你给的原始代码就有问题。”
“那你们想办法改啊。”曲远的声音有点急,“我付钱不就是让你们解决问题的吗?”
“改不了,底层架构有缺陷,我们只能在表面修补。”
“那就修补!反正演示的时候能跑起来就行。”
我敲了敲门,里面瞬间安静。
曲远开门,看见是我,松了口气:“宁川,什么事?”
“设备数量对不上。”我把清单递给他,“财务让确认一下。”
他接过去扫了一眼:“哦,有三台我放在家里测试了,过两天拉回来。”
“那需要办个出库手续。”
“行行行,我明天补。”他把清单塞回给我,准备关门。
我往办公室里看了一眼,一个戴眼镜的男人坐在电脑前,屏幕上密密麻麻的代码,红色报错占了半个屏幕。
曲远顺着我的视线看过去,挡住我的视线:“那个,是我请的顾问。”
“哦。”我点点头,“那不打扰了。”
下楼时,手机响了。老张发来消息:“听说曲远找外包了?”
我回了个问号。
“技术部都传遍了,说他根本搞不定那套算法,花了两倍预算找人救场。”老张又发来一条,“我就说那方案有问题吧。”
我没回复,把手机揣进兜里。
晚上十点,我还在库房整理设备台账。电脑右下角弹出提醒——曲远项目组的服务器触发了三次硬件故障预警。
我调出监控日志,三台服务器在过去一周里反复重启,每次都是计算负载过高导致的过热保护。
但设备维修记录里,没有任何报修信息。
我把预警报告打印出来,放进文件夹,标签上写:“曲远项目,设备异常,未报修。”
然后关掉电脑,锁好库房门,上楼去参加曲远的庆功宴。
他请全部门吃饭,包了酒店最大的包厢。我到的时候,佟海正在敬酒。
“曲远这小子,是我带出来的。”佟海搂着曲远肩膀,“以后前途不可限量。”
曲远端着酒杯冲大家笑,目光扫到我时停了一下。
我举起杯子,他走过来碰了碰:“宁川,谢谢你那天退出项目组。”
“客气。”
“真的。”他喝了口酒,“要不是你让出位置,我也没这个机会。”
我笑了笑,把酒一饮而尽。
手机在兜里震动,是设备供应商发来的故障详细报告。我看了一眼,关掉屏幕,给曲远又敬了杯酒。
4
验收会那天,会议室坐满了人。
我在门口签完设备交接单,准备离开时,佟海叫住我:“宁川,进来旁听一下。”
客户方来了五个人,方岩坐在中间,面前摆着一台笔记本。
曲远站在投影前,西装熨得笔挺:“各位,今天演示用的是完全模拟真实业务场景的测试数据......”
“等一下。”方岩打断他,“能用我们提供的真实数据测试吗?”
曲远手一顿:“方总,真实数据涉及商业机密,按合同流程,需要先签保密协议。”
“保密协议我们带了。”方岩从包里拿出文件,“现在可以签。”
会议室安静了三秒。
佟海咳了一声:“方总,验收流程是先看演示,通过后再做深度测试......”
“我们想先看看真实数据跑起来什么效果。”方岩看着曲远,“可以吗?”
曲远的遥控笔在手里转了两圈:“当然可以,但真实数据接入需要配置环境,今天时间可能来不及——”
“那就改天。”方岩合上笔记本。
“别啊。”客户方运营总监打圆场,“曲工的演示我们先看看,技术细节后面慢慢调。”
方岩看了他一眼,没再说话。
曲远松了口气,按下遥控器。
大屏幕上,系统界面流畅运行,各项数据指标完美达标。他提前准备的演示数据跑得很漂亮,没有一个报错。
“响应时间控制在50毫秒以内。”曲远指着监控图表,“完全符合合同要求。”
运营总监点点头:“不错。”
方岩盯着屏幕,突然问:“这个并发量是多少?”
“3000。”
“如果是5000呢?”
曲远笑了笑:“系统设计上限是8000,5000完全没问题。”
“那能现场测一下吗?”
“这个......”曲远看了眼佟海,“需要调整测试参数,怕影响演示流程。”
“就简单跑一下。”方岩靠在椅背上,“我们想看看极限情况。”
佟海站起来:“方总,今天主要是功能验收,性能压测可以放在后期联调——”
“没关系,我们不着急。”运营总监摆摆手,“曲工,试试吧。”
曲远手指在键盘上顿了顿,输入参数,回车。
监控图表的曲线开始攀升,响应时间从50毫秒涨到120毫秒,然后是350毫秒。
方岩盯着屏幕没说话。
曲远额头开始冒汗:“可能是测试环境网络波动,实际部署不会有这个问题。”
话音刚落,屏幕右下角弹出一串报错信息。
会议室里的空气凝固了。
曲远飞快地关掉报错窗口:“这是测试数据的问题,我们用模拟数据重新跑一遍——”
“不用了。”方岩合上笔记本,“我们看到想看的了。”
佟海脸色变了:“方总,这只是小问题,不影响系统整体——”
“佟主管。”运营总监打断他,“功能演示我们很满意,就按流程验收吧。技术细节让他们后面对接。”
他看了眼方岩,方岩沉默了三秒,拿起笔在验收单上签了字。
但那支笔在纸上停顿了足足三秒。
散会后,我在走廊里碰到方岩。
他在打电话,声音压得很低:“记录下来,所有异常数据都留档......对,我知道运营部急着上线,但技术风险必须报备......”
我从他身边经过,他抬头看了我一眼,挂掉电话。
“你是后勤部的?”
“是。”
“这个项目你参与了吗?”
“没有,我只负责设备采购。”
方岩盯着我看了两秒,点点头,转身离开。
下午,公司发了通报——项目通过验收,曲远获得年度创新奖。
人事部的公示栏里,曲远的晋升公告贴在最上面:主管级,工资翻倍,独立团队,预算三百万。
我站在公示栏前看了一会儿,手机响了。
老刘发来消息:“你那边还有废旧服务器吗?曲远项目组又坏了两台,让我问问能不能临时调配。”
我回复:“库房没有现货,需要走采购流程。”
“那算了,他说不着急,等系统正式上线再说。”
我收起手机,又看了眼公示栏。
曲远的照片贴在那里,西装笔挺,笑得很灿烂。
照片下方,佟海的签名和公司公章并排盖着。
我转身下楼,经过十楼时,看见曲远办公室里灯还亮着。
他坐在电脑前,屏幕上是那串熟悉的代码,红色报错还在闪烁。
我没停留,直接回了库房。
桌上放着设备故障统计表,曲远项目组的服务器,一周内报错记录已经累积到47条。
但维修申请栏,依然是空白。
我把统计表放进文件夹,标签上写:“曲远项目,设备持续异常,未报修。”
然后锁好柜子,关灯下班。
电梯门合上前,我最后看了一眼十楼。
曲远办公室的灯还亮着。
5
表彰大会在公司礼堂举行,主席台上摆着水晶奖杯。
我坐在后排,手里的设备维保合同还没签完。佟海在台上讲话,声音通过音响传遍整个大厅。
“曲远同志用三个月时间,完成了行业内首创的动态负载系统。”他顿了顿,“这是我们部门未来的领军人物。”
掌声响起来,曲远从台下走上去。
奖杯递到他手里时,追光灯打在他脸上。他举起奖杯,镜头拉近,我看见奖杯底座上刻着字:“年度创新奖·曲远”。
人事部张经理接过话筒:“根据公司决议,曲远同志晋升为技术主管,即日生效。”
她念完任命书,大屏幕上出现曲远的简历。工资那栏,数字直接翻了一倍。
我旁边的老刘碰了碰我:“看见没?这才叫前途。”
“嗯。”
“你当初要是不退出,说不定现在站台上的就是你。”
我没接话,在合同最后一页签了字。
散会后,曲远在公司门口拦住所有人:“晚上君悦大酒店,我请客。”
包厢里,佟海坐在主位。曲远给他倒酒,杯子满得快溢出来。
“佟主管,没有您就没有我今天。”
“客气。”佟海端起杯子,“你有能力,我只是给了个机会。”
两人碰杯,一饮而尽。
曲远转向我这桌,坐到我旁边:“宁川,你怎么坐这么远?”
“习惯了。”
他给我倒酒:“说真的,当初你退出我还挺意外的。”
“是吗?”
“对啊。”他喝了口,“不过现在想想,有些人就是不适合做技术。你看你现在在后勤,不也挺好?”
旁边几个人笑起来。
我端起杯子,跟他碰了碰:“曲主管说得对。”
他拍了拍我肩膀,起身去敬别桌。
老张凑过来,压低声音:“你听出来没?这是在踩你。”
“听出来了。”
“你就这么忍了?”
我放下酒杯:“不然呢?”
老张摇摇头,没再说话。
第二天,总部来了通知。
韦松副总在述职会上听了佟海的汇报,当场拍板:“这个项目模式推广到其他客户,部门预算追加30%。”
佟海回来后连开三个会,每个会都提到曲远的名字。
“技术创新要成为常态。”他指着投影上的架构图,“曲远的方案就是标杆。”
下午,我收到设备部转来的报修单。
曲远项目组又有三台服务器出故障,这次是硬件过热导致主板烧毁。供应商在备注里写:“建议全面检测,疑似计算负载异常。”
我拿着报修单去找老刘:“这个需要曲主管确认。”
“他现在忙着呢。”老刘看都不看,“你先走流程,报废就报废,反正预算多。”
“可是供应商说——”
“供应商想多卖设备呗。”老刘打断我,“别想太多,签字就行。”
我盯着报修单看了三秒,在最下面签了名。
然后把单子复印一份,放进文件夹。标签上写:“曲远项目,第三批设备故障,主板烧毁。”
晚上加班时,手机震动。
曲远发了条朋友圈,配图是他和佟海的合影,两人手里拿着酒杯,背景是君悦酒店的logo。