我走后,公司倒闭了

开灯 护眼     字体:

全文阅读>>

01透明人陆川早上七点半,陆川准时挤进地铁。车厢里人贴人,空气混浊。

他护着背包,里面装着用了五年的笔记本电脑。电脑很旧了,边角磨得发白,

但运行速度依旧很快——是他自己改装过的。八点五十五分,

陆川刷卡走进“创科科技”所在的写字楼。这家公司做电商系统开发,

在本市IT圈小有名气。他在技术部做了四年后端工程师,工资从七千涨到一万二。

“早啊陆哥。”前台小姑娘头也不抬地刷着手机。陆川点点头,算是回应。

他本来就不善言辞,四年下来,全公司都知道技术部有个闷葫芦,除了写代码啥也不会。

技术部在十六楼。陆川走到自己的工位——最靠里的角落,背对着过道。桌子干净得过分,

只有一个显示器、一个键盘、一个水杯,连盆绿植都没有。“陆川,

昨天让你写的支付接口调通了吗?”主管王浩端着咖啡晃过来,三十出头,头发梳得油亮。

“通了。”陆川调出代码界面。“效率不错。”王浩扫了一眼,拍拍他肩膀,

“继续努力啊,公司不会亏待你的。”这话陆川听了四年。他刚来时,王浩还是普通程序员,

现在已经是主管了。升职靠的不是技术,是嘴皮子和抢功劳——陆川写的模块,

汇报时总能变成“在王浩的指导下完成”。九点半,晨会。“新来的陈总大家知道吧?

从大厂挖来的,要带我们冲击上市!”王浩唾沫横飞,“所以接下来三个月,

我们要攻坚‘智慧商城’项目,这是公司的战略重点!”陆川低头玩着笔。

这个项目他三个月前就听说了,底层架构设计还是他私下做的。

但今早他看到项目组成员名单,自己是“待定”。“核心成员是我、张伟、刘倩,

”王浩点名,“其他人全力配合。陆川,你负责日志模块和异常监控,这个简单,

你没问题吧?”“嗯。”陆川应了一声。散会后,张伟凑到刘倩工位:“听说这项目成了,

奖金至少十万。”“那也得看谁拿大头。”刘倩意有所指地瞟了陆川一眼。陆川没听见。

他已经戴上耳机,开始写代码。他的屏幕上是复杂的架构图,线条密密麻麻。

这不是日志模块,是整个系统的核心调度算法——王浩说找外包公司做,报价五十万。

陆川算了算,自己写,最多两周。但他没打算交。因为上周五,他路过会议室,

听见王浩和陈总谈话。“陆川?技术还行,但太闷,不会来事,带不动团队。”王浩说,

“而且四年没涨过几次薪,估计心里有怨气。关键模块还是得靠咱们自己人。

”陈总嗯了一声:“你是主管,你定。不过用人要谨慎,尤其是核心代码,

得掌握在自己人手里。”陆川当时端着水杯,在门外站了三秒,然后转身回了工位。

那天下午,他更新了简历。02年会羞辱十二月底,公司年会。

地点在五星级酒店宴会厅,摆了三十桌。技术部坐了四桌,

陆川坐在最角落那桌的最角落位置。台上,陈总在致辞,回顾公司辉煌,展望上市蓝图。

台下,王浩那桌笑声不断——他们部门刚拿下“年度优秀团队”,每人有五千奖金。

陆川安静地吃饭。同桌的都是实习生或新人,没人认识他。“下面颁发‘五年忠诚奖’!

”主持人宣布,“感谢陪伴公司成长的老员工!”聚光灯扫过。有三个员工上台,

都是部门经理以上。每人拿到一个红包和一块镀金奖牌。“其实我们还有一位同事,

也满五年了。”王浩突然拿过话筒,笑着说,“技术部的陆川!来来来,陆川,

上来让大家认识一下!”全场目光瞬间聚焦到角落。陆川怔了怔,放下筷子。

同桌的新人好奇地看着他:“陆哥,你五年啦?”他起身,走上台。聚光灯刺眼,

他眯了眯眼睛。“陆川可是我们技术部的‘定海神针’,”王浩把奖牌塞给他,

红包却捏在自己手里,“就是太低调了,好多同事都不认识他。来,陆川,说两句!

”台下有人笑。陆川握着冰凉的奖牌,看了看台下黑压压的人。张伟在捂嘴,刘倩在刷手机,

陈总在和人聊天。“谢谢。”他说了两个字,就要下台。“哎别急!”王浩拉住他,

从兜里掏出一个小盒子,“公司给你准备了特别礼物!”打开,是一支钢笔,

超市里三十块那种。“希望你再接再厉,为公司再奋斗五年!

”王浩把钢笔别在他衬衫口袋上,动作很用力,差点戳到他。台下掌声稀稀拉拉。

陆川下台时,听见前排有人说:“就是那个闷葫芦啊?”“技术据说还行,但不会交际。

”“五年了还是基层,肯定能力有问题。”回到座位,同桌的实习生小声说:“陆哥,

他们是不是有点过分?”陆川摇摇头,继续吃饭。他把奖牌放进包里,钢笔留在桌上。

那天晚上,他收到一条微信,来自猎头:“陆先生,您考虑的机会,年薪五十万,

技术总监职位,能聊聊吗?”陆川回复:“明天下午三点,可以。

”03无声离职一月中旬,陆川办完了所有离职手续。他提离职时,

王浩很惊讶:“干得好好的,怎么突然要走?”“个人发展。”陆川说。

“是不是对薪资不满意?可以谈嘛。”王浩假惺惺,“不过陆川啊,现在大环境不好,

出去未必能找到更好的。你在公司五年,出去就得从头开始。”“不用了,我已经决定了。

”王浩皱皱眉:“那行吧。不过按规矩,你得交接一个月。这样,

你把手上所有代码、文档都整理好,特别是‘智慧商城’那部分,详细写个说明。”“好。

”接下来四周,陆川每天按时上下班,认真写交接文档。他把所有代码都打包,

注释写得清清楚楚。日志模块、监控脚本、数据库配置……一丝不苟。

张伟来看过一次:“嚯,这么详细?陆哥你这是要出家啊?”刘倩也笑:“陆川,

下家找好了吗?别是去小公司吧?”陆川没回答。他在文档的某个不起眼的配置文件里,

加了一行注释:“#此处为负载均衡开关,默认开启。关闭后将导致单点压力过大。

”他没说谎。只是没告诉任何人,这个开关连着十七个核心服务。最后一星期,

陆川开始清理电脑。他删除了所有私人文件,但保留了一个加密文件夹,

统架构图、数据库设计、应急处理方案、还有……所有他私下修复却无人知晓的隐藏bug。

这些bug,王浩他们根本不知道存在。“陆川,今晚部门给你送行,烧烤,一定要来啊。

”王浩在最后一天说。“不了,有事。”陆川背起包,电脑已经格式化,工牌放在桌上。

“那……祝你前程似锦。”王浩和他握手,握得很敷衍。下午五点,陆川走出写字楼。

回头看了一眼十六楼的窗户,然后转身,汇入下班的人流。他手机振动,

新公司HR发来消息:“陆总监,欢迎加入。您的办公室准备好了,团队也在等您。

”陆川回了两个字:“谢谢。”他抬起头,冬日的夕阳是金色的。

04第一个漏洞陆川离职后第一周,风平浪静。王浩把“智慧商城”项目重新分配。

张伟负责核心调度,刘倩负责支付模块,自己挂名总架构师。“陆川那套日志监控还真好用,

”张伟在周会上说,“运行平稳。”“他也就这点价值了。”王浩不以为然,

“现在重点是尽快上线,陈总催得紧。张伟,调度算法怎么样了?

”“外包公司说下周一交货。”张伟有点心虚——其实他还没联系外包,

打算拿陆川留下的架构图改改用。“抓紧。”第二周周一,问题开始浮现。上午十点,

客服部打电话:“用户反映商品详情页加载特别慢,要十几秒。

”张伟查了半天:“服务器正常啊。”“是图片服务器负载太高,”刘倩看了一眼监控,

“流量都集中到一台了。”“怎么会?不是有负载均衡吗?

”“我看看……”张伟打开配置,翻到陆川的文档,“找到了,这里有个开关,

写着‘关闭后将导致单点压力过大’……咦,这开关怎么是关着的?”“你关的?

”“我没动啊!陆川交接时就这样吧?”王浩皱眉:“赶紧打开!”开关打开,

流量恢复正常。没人深究为什么开关是关着的——陆川文档里写了“默认开启”,

但交接时系统是从备份恢复的,备份里刚好是关闭状态。这只是开始。周三,数据库报警。

某个核心表锁死,导致订单无法支付。“这个表结构谁设计的?”王浩发火,

“索引都没建全!”张伟查代码注释:“陆川写的……他备注说‘此表需配合缓存使用,

否则高并发下会锁’。”“缓存呢?”“没……没部署。”刘倩小声说,

“陆川文档里写了要部署,但他说这是‘优化建议’,不是必须的……”“那现在部署啊!

”“得重新写配置,估计要一天……”这一天,公司损失了三百多个订单。

陈总发来邮件:“技术部怎么回事?”王浩回复:“小问题,已经解决。”周四,

更诡异的事情发生了。公司的内部管理系统,

突然所有员工的生日都变成了同一天——1月1日。HR傻眼了:“这怎么发生日福利?

”张伟查代码,发现生日计算模块调用了一个外部API,API地址写死在代码里。

而这个API服务商,三个月前就停服了。“陆川没更新?”王浩质问。

“文档里写了要替换,”张伟翻着厚厚的交接文档,“在第87页,

用小字标注的……”“你不会自己检查吗?”张伟不说话了。他压根没看完文档,

两百多页,谁看得完?周五下午,王浩被叫到陈总办公室。“王浩,陆川离职,

是不是交接有问题?”陈总脸色不好看,“这周技术故障比上月总和还多。”“陈总放心,

都是小问题,陆川留下的代码有些瑕疵,我们正在优化。”“抓紧。

‘智慧商城’不能耽误。”“一定!”走出办公室,王浩狠狠踹了一脚垃圾桶。

“妈的陆川,临走还摆我一道。”05灾难前夜二月,春节假期结束。

公司气氛紧张——“智慧商城”项目延迟两周了,陈总每天都在催。

张伟终于拿到外包公司的调度算法,但运行起来总是崩溃。“这代码写得跟屎一样,

”他骂骂咧咧,“还不如陆川留下的那版。”“那就用陆川的改改?”刘倩说。

“你傻啊?用他的代码,功劳算谁的?”王浩瞪眼,“必须用新代码,这是我定的架构!

”于是技术部开始没日没夜地改bug。连续加班两周,每个人眼里都是血丝。

二月十四日,情人节,也是“智慧商城”预定上线的日子。上午八点,全员到岗。

王浩站在技术部中央,意气风发:“今天是个里程碑!项目上线,每人奖金五千!

”张伟顶着黑眼圈:“王哥,压力测试还没做完,要不要再等等?”“等什么等?

陈总已经通知客户了,今天必须上!”王浩挥手,“九点准时发布!”九点整,新系统上线。

前十分钟,风平浪静。王浩拍了张监控大屏的照片,发朋友圈:“又一个项目成功上线,

感谢团队!”九点十五分,第一个用户投诉:购物车里的商品全消失了。九点二十分,

支付页面卡死。九点二十五分,服务器CPU飙升至95%。“怎么回事?

”王浩冲进机房。“调度算法崩了,”张伟声音发抖,“流量全部涌向一台服务器,

那台已经宕机了!”“切回旧系统啊!”“切……切换脚本失效了……”刘倩快哭了,

“陆川的文档里说,切换需要同时重启三台服务器,

但我们只重启了两台……”“为什么不看文档?!”“文档……文档在第156页,

我们没翻到那么后……”九点四十分,主数据库连接池耗尽,整个商城无法访问。

客服电话被打爆。陈总冲进技术部:“王浩!你给我解释!”王浩满头大汗:“陈总,

是……是陆川留下的系统有问题……”“他人呢?

”“离职了……”“那你就解决不了?!”陈总怒吼,“我告诉你,今天要是恢复不了,

你也别干了!”十点整,更恐怖的灾难发生了。因为调度算法持续崩溃,

系统开始无限重试。每一次重试都生成新的错误日志,

日志文件以每秒100MB的速度膨胀。十点零五分,服务器磁盘被日志写满。

十点零六分,数据库服务因为无法写日志而停止。十点零七分,整个系统彻底瘫痪。

王浩瘫坐在椅子上,脸色惨白。他想起陆川离职前,

曾委婉提醒过:“日志系统最好单独部署,不然可能影响主业务。”当时他是怎么回的?

好像说:“你做好自己的事就行。”现在,他连自己的事都做不好了。

06全面崩溃情人节当天下午三点,“创科科技”登上本地科技新闻头条。

标题很惊悚:《知名电商服务商系统瘫痪八小时,数千商家损失惨重》。

陈总在办公室砸了杯子。市场部电话被打爆,合作商家要求赔偿。技术部灯火通明,

但无人知道如何修复。“必须恢复系统!”陈总下了死命令,“天亮之前,必须搞定!

”王浩带着张伟、刘倩,还有所有技术人员,开始抢救。

但他们很快发现一个致命问题:没人完全了解整个系统架构。陆川在时,

他就像人肉文档库。哪个服务调哪个接口,哪个配置影响哪个功能,他都一清二楚。

现在他不在了,大家才发现,这四年,整个公司的技术债务,都是陆川一个人在扛。

“用户服务用的是哪个数据库?”张伟问。