团建颁最差奖给我,离职带走代码三天后全瘫了

团建颁最差奖给我,离职带走代码三天后全瘫了
团建颁最差奖给我,离职带走代码三天后全瘫了

<br>团建颁最差奖给我,离职带走代码三天后全瘫了<br>作者:磐昆<br>简介:<br>团建颁最差奖给我,离职带走代码三天后全瘫了

第1章<br>“最没用的人,请上台领奖。”<br>全场安静了一秒。然后爆发出哄笑。<br>大屏幕上,我的名字在正中间,后面跟着一个数字87。<br>全公司87个人,87票。<br>满票。<br>总监赵哥笑着招手:“林栀,上来上来,别害羞。”<br>我站起来,走上台。<br>接过那个塑料奖杯,上面刻着四个字“摸鱼之王”。<br>我对着台下笑了笑。<br>他们不知道的是,我口袋里装着一封辞职信。<br>已经签好了字。<br>1.<br>那个奖杯是金色的,塑料材质,底座上贴了一张打印纸,写着“年度摸鱼王林栀”。<br>我把它捧在手里,台下闪光灯一片。<br>不是媒体,是同事们在拍照。<br>“发朋友圈发朋友圈!”<br>“哈哈哈哈栀子你别板着脸啊,笑一个!”<br>我笑了。<br>赵哥递过话筒:“来,获奖感言?”<br>我接过来。<br>“谢谢大家。”<br>四个字说完,我把话筒还给他,走下台。<br>身后是更大的笑声。<br>“哈哈哈她是不是生气了?”<br>“别介啊,闹着玩的。”<br>“林栀就是这样,一点幽默感都没有。”<br>我回到座位上,把奖杯放在桌上。王琳凑过来,拍拍我肩膀。<br>“别往心里去啊,就是个游戏。”<br>“嗯。”<br>“你看我还得了最佳人气奖呢,也没当真。”<br>我看了她一眼。<br>最佳人气奖旁边,还有最佳创意奖,最佳业绩奖,最佳新人奖。那些奖杯是不锈钢的,底座是实木的。<br>只有我这个,是塑料的。<br>因为这个奖,是临时加的。<br>赵哥在策划团建的时候说:“搞个反向奖,活跃气氛。”<br>投票是匿名的,在公司群里发了个小程序。<br>我87票。满票。<br>也就是说,全公司每一个人,包括前台、保洁阿姨、实习生,都投了我。<br>我没有问为什么。<br>因为我知道答案。<br>在这个公司里,没有人知道我在做什么。<br>赵哥不知道,王琳不知道,HR不知道,CEO不知道。<br>甚至财务在算我工资的时候,可能都在想:这人每个月领一万二,到底干了啥?<br>我是后端开发。<br>听起来是个正常岗位。<br>但我负责的那部分,不在任何人的视野里。<br>我维护的是公司核心交易系统的底层架构。<br>这个系统每天处理3000万条数据,支撑着公司80%的营收业务。<br>没有它,前端页面就是一张白纸。<br>没有它,客户端每一次点击都是404。<br>没有它,公司账上每天到账的六百多万,一分钱都进不来。<br>但这个系统三年没出过事。<br>所以,三年来没有人知道它的存在。<br>就像你家里的自来水管。没坏的时候,没人记得它在。<br>团建继续。<br>赵哥在台上给最佳业绩奖获得者陈军发红包,三千块。<br>全场鼓掌。<br>王琳得了最佳创意奖,两千。<br>台下有人喊:“女神!”<br>我坐在角落里,吃了一块西瓜。<br>手机震了。<br>系统报警。<br>我低头一看服务器内存占用超过阈值,需要手动清理缓存。<br>我打开笔记本电脑,SSH连上服务器,敲了几行命令。<br>三分钟,解决了。<br>抬起头,团建还在继续。<br>没有人注意到我刚才在干什么。<br>也没有人注意到,如果我晚三十分钟处理,明天早上所有客户的订单数据都会出错。<br>我合上电脑。<br>旁边的实习生小周看了我一眼:“栀姐,你带电脑来团建?”<br>“习惯了。”<br>“也是,反正你也没啥事。”他笑了笑,去抢红包了。<br>晚上十点,团建结束。<br>大巴车上,大部分人都在发朋友圈。<br>我刷到了王琳的<br>“今日份快乐!最佳创意奖get!感谢团队!”<br>配图是她举着奖杯的照片。<br>底下赵哥点了赞,评论:“实至名归。”<br>我又刷到了陈军的<br>“最佳业绩!继续努力!”<br>赵哥又点了赞。<br>我没有发朋友圈。<br>我在看辞职信。<br>已经写好三天了。<br>今晚,可以交了。<br>2.<br>三天前写辞职信的时候,我其实犹豫过。<br>毕竟在这个公司三年了。<br>三年不长,但也不短。<br>2021年入职的时候,公司还在创业期,技术部一共五个人。我是第三个。<br>当时什么都缺,前端缺、后端缺、运维缺、测试缺。<br>我一个人顶了后端和运维两个岗位。<br>核心交易系统是我从零搭的。<br>数据库架构是我设计的。<br>服务器监控脚本是我写的。<br>自动备份系统是我建的。<br>第一版代码上线的那天晚上,我在公司待到凌晨四点。<br>赵哥当时还不是总监,是技术组长。<br>他拍了拍我的肩膀说:“林栀,好好干,公司不会亏待你的。”<br>我信了。<br>第一年,公司业务起来了。交易量从每天一万条涨到一百万条。<br>系统扛住了。<br>因为我提前做了扩容方案,提前买了新的服务器,提前写了负载均衡。<br>赵哥在月度会上说:“技术稳定,后台没出过一次事故。”<br>CEO点了点头:“嗯。”<br>然后开始讨论前端改版方案,讨论了四十分钟。<br>没有人问“后台为什么没出事故”。<br>第二年,公司搬了新办公室。赵哥升了总监。<br>技术部扩招到15个人。<br>前端来了5个,后端来了3个,产品来了2个。<br>后端新来的三个人,一个做业务接口,一个做数据报表,一个做第三方对接。<br>底层架构还是我一个人。<br>因为别人看不懂。<br>我写的代码不是那种花哨的,没有酷炫的框架,没有时髦的架构图。<br>就是稳。<br>稳到三年没出过一次事。<br>稳到所有人都忘了它的存在。<br>年底考核,赵哥找我谈话。<br>“林栀,今年你的KPI……我实话跟你说,有点不太好看。”<br>“哪里不好看?”<br>“你看,陈军今年做了38个业务接口,王琳做了12个前端页面改版,小张做了7个数据报表……你呢?”<br>我想了想:“我做了三次数据库优化,两次服务器迁移,一次安全漏洞修复,还重构了核心交易模块的异步处理逻辑。”<br>赵哥皱了皱眉:“这些……怎么量化?”<br>“数据库优化之后,查询速度提升了40%。服务器迁移保证了零宕机。安全漏洞如果没修,客户数据可能泄露。”<br>“可是这些,老板看不到啊。”<br>赵哥叹了口气。<br>“林栀,我说句不好听的。你做的事,别人看不见。年终考核,看的是产出。你的产出……说不清楚。”<br>我没说话。<br>“我建议你明年多做点可见的工作。写个技术博客、做个内部分享、搞个什么创新项目……让大家知道你在干嘛。”<br>“我在维护核心系统。”<br>“我知道我知道。但你得让别人也知道。”<br>那次谈话之后,我的年终绩效是B-。<br>全部门最低。<br>年终奖三千八。<br>王琳拿了两万六。<br>陈军拿了三万一。<br>我没问为什么。<br>第三年,也就是今年,我申请涨薪。<br>从一万二涨到一万五。<br>三千块的涨幅,三年来第一次提。<br>HR回复我的邮件只有一句话:<br>“经评估,您当前薪资与岗位匹配度较高,暂不调整。”<br>我去找赵哥。<br>他很忙,让我等了四十分钟。<br>然后跟我说了一句话,我这辈子都忘不了。<br>“林栀,说实话,你的工作可替代性比较强。一个应届生,培训两周就能上手。公司没理由给你涨。”<br>我点了点头。<br>回到工位上,打开一个新文档。<br>标题:辞职信。<br>3.<br>辞职信写了,但我没有马上交。<br>因为我想了一件事。<br>我走了,我的代码怎么办?<br>我翻了一下Git记录。<br>核心交易系统,从第一行代码到现在,一共14万行。<br>其中9万2千行,是我一个人写的。<br>剩下的4万8千行,有3万行也是我review之后改过的。<br>也就是说,这个系统的代码,95%经过了我的手。<br>更关键的是文档。<br>或者说,没有文档。<br>不是我不写。<br>是第一年创业的时候没空写,第二年赵哥说“先做业务,文档以后补”,第三年,我已经懒得提了。<br>这14万行代码的逻辑,全在我的脑子里。<br>数据库的36张表,哪张和哪张有关联,哪个字段不能为空,哪个触发器不能删没有写在任何地方。<br>服务器的配置,哪台是主机,哪台是备机,什么情况下要手动切换只有我知道。<br>监控脚本的报警规则,什么级别发邮件,什么级别发短信,什么级别需要人工介入也只有我知道。<br>我不是故意不交接。<br>是没有人接得住。<br>后端组的三个人,陈军做业务接口,他连数据库底层的分区逻辑都没看过。小张做数据报表,他以为系统是“自动运行”的。老刘做第三方对接,他入职一年了,连服务器在哪都不知道。<br>我曾经试过,在一次周会上说:“核心系统的架构文档,是不是该补一下了?”<br>赵哥说:“行,你排个计划。”<br>我排了。预估需要两周时间。<br>赵哥说:“现在业务忙,下个季度再说。”<br>下个季度。<br>下个季度又下个季度。<br>一下就是三年。<br>辞职信写好那天晚上,我做了一件事。<br>我把自己在公司写的所有代码做了一次梳理。<br>哪些是公司的业务代码留着。<br>哪些是我个人的工具脚本、自动化脚本、监控脚本我个人写的,用我自己的GitHub账号提交的,不属于公司代码库。<br>这些,我要带走。<br>不是偷。<br>劳动合同第七条第三款,我仔仔细细看过了。<br>员工在职期间使用个人账户创建的、与公司业务无直接关系的个人工具代码,版权归员工所有。<br>我的监控脚本,是用我个人GitHub写的。<br>我的自动化部署脚本,是我自己的开源项目改的。<br>我的数据库维护工具,是我入职前就开始做的个人项目。<br>这些东西不在公司的代码仓库里。但是,公司的系统在用。<br>用了三年。<br>没付过一分钱。<br>我整理好这些,心里一点愧疚感都没有。<br>团建那天晚上回到家,我把辞职信打印出来。<br>签上名字。<br>放进包里。<br>第二天早上九点,我准时到了公司。<br>走到赵哥办公室门口,敲了敲门。<br>“赵哥,有个事。”<br>“说。”<br>我把辞职信放在他桌上。<br>他愣了一下,拿起来看了看。<br>“你要辞职?”<br>“嗯。”<br>“怎么突然?”<br>“不突然。想了很久了。”<br>赵哥放下辞职信,靠在椅背上。<br>“是因为昨天那个奖?”<br>我笑了。<br>“赵哥,那个奖我不在意。”<br>“那是因为什么?”<br>“薪资。”<br>他点了点头,好像早有预料。<br>“你要多少?”<br>“不是涨多少的问题。我已经决定了。”<br>“林栀,别冲动。你在这三年了,老员工了。”<br>“对,三年了。月薪还是一万二。”<br>赵哥沉默了几秒。<br>“这个……我可以帮你再争取一下。”<br>“不用了。”<br>我看着他,说了今天最长的一句话。<br>“赵哥,全公司87个人,每一个人都觉得我是最没用的。这不是一个奖的问题,是我这三年做的所有事,在你们眼里一文不值。”<br>赵哥张了张嘴,没说出话来。<br>“辞职信在这。走正常流程就行。”<br>我转身出去了。<br>4.<br>赵哥没有挽留太久。<br>当天下午,HR找我谈了话。<br>“林栀,确定要走?”<br>“确定。”<br>“原因?”<br>“个人发展。”<br>HR点了点头,打开电脑。<br>“交接人是谁?”<br>“我建议让陈军接。他是后端组最资深的。”<br>HR在表格里填了名字。<br>“交接时间呢?劳动法规定是三十天。”<br>“可以。”<br>“好。你和陈军对接一下交接事项。”<br>当天下午,我找到陈军。<br>“军哥,我要走了,后续核心系统你来接。”<br>陈军在吃橘子。<br>“哦?你要走?”<br>“嗯。”<br>“行。核心系统……就是那个交易系统?”<br>“对。”<br>“那个系统,不是一直自己跑着吗?”<br>我看了他一秒。<br>“对。一直自己跑着。”<br>“那有什么要交接的?”<br>“代码逻辑、数据库结构、服务器配置、监控规则、应急预案”<br>“等等等等。”陈军放下橘子,“这些你发个文档给我就行了吧?”<br>“没有文档。”<br>“啊?”<br>“没有文档。口头跟你说。”<br>陈军愣了。<br>“14万行代码没有文档?”<br>“没有。”<br>“那……你平时怎么维护?”<br>“记在脑子里。”<br>陈军看我的眼神变了。<br>不是敬佩,是恐惧。<br>“你认真的?”<br>“认真的。”<br>接下来的两周,我每天找陈军交接两个小时。<br>从数据库的36张表开始讲,讲到服务器的部署架构,讲到代码的核心逻辑。<br>陈军听得很认真。<br>但我看得出来,他越听越慌。<br>第三天,他跟赵哥说:“这个系统比我想的复杂多了。”<br>赵哥说:“慢慢来,不急。”<br>第五天,陈军说:“有些逻辑我听不太懂。”<br>赵哥说:“让林栀多讲几遍。”<br>第八天,陈军私下跟我说:“栀姐,说实话,这个系统……我接不住。”<br>我说:“我知道。”<br>“那你跟赵哥说了吗?”<br>“说了。他说让你慢慢来。”<br>陈军苦笑。<br>第十天,我开始清理自己的东西。<br>个人工具脚本,从公司服务器上撤下来了。<br>自动化部署脚本,撤了。<br>数据库维护工具,撤了。<br>这些东西本来就是我的个人项目,不在公司代码库里,我删掉是理所当然的。<br>但公司的系统一直在调用它们。<br>三年来,一直在用。<br>我删掉之后,系统暂时不会出问题。<br>但是如果出了问题,没有这些工具,修起来的时间会从十分钟变成十个小时。<br>甚至修不了。<br>我没有告诉赵哥。<br>他没问。<br>最后一天,赵哥请我吃了个饭。<br>就在公司楼下,一碗牛肉面。<br>“林栀,这三年辛苦了。”<br>“嗯。”<br>“以后有什么打算?”<br>“休息一阵。”<br>“好。有什么需要帮忙的,说一声。”<br>我点了点头。<br>吃完面,我回到工位,把最后几个文件拷到U盘里。<br>电脑格式化。<br>工牌放在桌上。<br>下午五点半,我拎着一个纸箱,走出了公司大门。<br>箱子里就几样东西:一个水杯,一盆多肉,一个塑料奖杯。<br>对,我把那个奖杯带走了。<br>留个纪念。<br>门口保安跟我打了个招呼:“林姐,下班了?”<br>“嗯,下班了。”<br>我没说我不会再来了。<br>出门的时候,我回头看了一眼那栋楼。<br>十七层,灯火通明。<br>我在那里待了一千零九十五天。<br>加了两千多个小时的班。<br>处理了四百多次系统报警。<br>阻止了三次可能造成千万级损失的事故。<br>最后得到的评价是<br>全票,最没用。<br>我转过头,走了。<br>5.<br>离职的第一天,我睡了个懒觉。<br>九点半起来,阳光很好。<br>手机上有几条消息。<br>王琳:“栀子,走了也要保持联系啊。”<br>小周:“栀姐一路顺风。”<br>赵哥没发消息。<br>我回了王琳一个“好”,把手机𝖜𝖋𝖞扔到一边,去厨房煮了碗面。<br>吃面的时候,我在想一件事。<br>核心系统的自动备份,是每天凌晨两点跑一次。<br>备份脚本是我写的。<br>我走的时候,把脚本留在了公司服务器上。<br>但那个脚本有个前置条件需要调用我写的一个日志清理工具,先清掉过期日志,腾出磁盘空间,然后再执行备份。<br>日志清理工具,是我的个人工具。<br>我已经从服务器上撤了。<br>也就是说,从今天开始,每天凌晨两点,备份脚本会尝试调用一个不存在的工具。<br>它会报错。<br>然后跳过清理步骤,直接执行备份。<br>短期内没问题。<br>但日志会越积越多,磁盘空间会越来越小。<br>大概三到五天,磁盘就会被撑满。<br>到时候,不光备份跑不了,连系统本身都会因为磁盘不足而出问题。<br>我没有故意设计这个。<br>只是我走了之后,自然会发生的事。<br>就像一栋房子的地基师傅离开了,短期内看不出问题。<br>但下一次地震的时候,没人知道哪根柱子要先断。<br>我吃完面,洗了碗,坐在沙发上发了会呆。<br>下午,去超市买了点菜。<br>晚上,做了两个菜一碗汤,一个人吃。<br>很安静。<br>这是三年来,第一个不看手机、不等报警的晚上。<br>以前每天晚上,手机放在枕头边,声音调到最大。<br>因为系统报警随时可能来。<br>凌晨两点的、三点的、四点半的,都有。<br>每一次报警,我都必须在十分钟内处理。<br>超过十分钟,系统可能自动触发降级,客户端的支付功能会关闭。<br>三年来,我的手机从来没有静音过。<br>从来没有。<br>今天晚上,我把手机调成了静音。<br>然后睡了。<br>一觉到天亮。<br>6.<br>第二天早上八点,手机上有三个未接电话。<br>全是陈军的。<br>最早一个是凌晨两点十七分。<br>我看了一眼,没有回。<br>又过了十分钟,陈军发来微信。<br>“栀姐,备份脚本跑失败了。报了个错,说找不到什么log_cleaner工具。这是啥?”<br>我看着屏幕,想了想。<br>回了一条:“那个是日志清理工具,我的个人脚本。我离职的时候删了。”<br>陈军秒回:“删了?那备份怎么跑?”<br>“你自己写一个,或者手动清理日志之后再跑备份。”<br>“手动清理?那个日志文件有多大?”<br>“每天大概2G。”<br>陈军发了一个崩溃的表情。<br>“栀姐,这个工具你能不能发我一份?”<br>我放下手机。<br>那个日志清理工具,是我两年前业余时间写的。发布在我个人的GitHub上。开源协议是MIT,任何人都可以用。<br>但公司当时部署的时候,是直接clone了我的个人仓库。<br>我离职之后,把仓库设成了private。<br>不是故意的。<br>是因为那个仓库里还有其他项目的代码,有些涉及我新工作的东西,不方便公开。<br>我想了一分钟,给陈军回了一条消息。<br>“这个工具是我个人项目,不方便直接给公司用了。你可以自己写一个,逻辑不复杂。”<br>陈军没有立刻回。<br>过了半小时,他回了一条。<br>“逻辑不复杂是多不复杂?我看了一下备份脚本的调用链,有七八个依赖。”<br>“嗯,是有一些依赖。但核心逻辑就是定时清理超过7天的日志文件。”<br>“那些依赖呢?”<br>“有几个也是我的个人工具。”<br>这次陈军过了很久才回。<br>“栀姐,你的个人工具……在系统里用了多少?”<br>我看着这个问题,忽然觉得有点想笑。<br>三年了,第一次有人问这个问题。<br>我数了数。<br>“大概十二个。”<br>陈军发了一个很长的消息。<br>“十二个?你是说,公司的核心系统,依赖了你的十二个个人工具?这些工具全都不在公司的代码库里?你走了这些全都不能用了?”<br>“不是不能用。只是我把仓库私有化了。你们需要自己实现替代方案。”<br>“自己实现……我看了一下,这十二个工具加起来大概有多少行代码?”<br>我想了想。<br>“两万三左右。”<br>陈军那边沉默了很长时间。<br>然后他发了一句话。<br>“栀姐,你来之前怎么不跟赵哥说?”<br>我看着这句话。<br>笑了。<br>“我说过。每次月度会我都说,系统依赖个人脚本,需要重构。赵哥说下个季度排。”<br>陈军没再回。<br>下午三点,赵哥给我打了个电话。<br>我没接。<br>他又打了一个。<br>我还是没接。<br>他发来微信:“林栀,方便聊两句吗?”<br>我回:“赵哥,我已经离职了。有什么事可以走公司正式渠道。”<br>赵哥:“不是公事,就是想问个技术问题。”<br>我:“可以发邮件给我。”<br>赵哥没有再回。<br>晚上,我收到一封邮件。<br>发件人是公司的HR。<br>主题:“关于前员工技术资产的沟通。”<br>我打开看了看。<br>大意是:公司认为我在职期间使用的部分工具脚本属于公司资产,希望我配合提供相关代码。<br>我把邮件转发给了一个律师朋友。<br>律师朋友十分钟后回复我:“他们没戏。你的个人GitHub仓库,用你私人邮箱注册的,代码提交记录都在你入职之前。这是你的个人财产。”<br>我回了HR一封邮件:<br>“感谢关注。相关工具为本人入职前创建的个人项目,已咨询法律意见,不属于公司技术资产。如有异议,请贵司法务部门与本人律师联系。”<br>发完之后,我把手机扔到了沙发上。<br>去阳台浇了浇花。<br>7.<br>离职第三天。<br>早上六点,手机震了。<br>不是闹钟。是微信。<br>陈军发的,凌晨四点十二分。<br>“栀姐,系统崩了。”<br>四点二十分。<br>“交易系统全挂了。客户端打开全是白屏。”<br>四点三十五分。<br>“赵哥让我给你打电话你没接。”<br>四点五十分。<br>“我们重启了三次都没用。报错信息看不懂。”<br>五点零一分。<br>“磁盘满了。日志文件把磁盘撑爆了。”<br>五点十八分。<br>“我清了日志,但是系统起不来了。数据库连接池好像有问题。”<br>五点四十分。<br>“赵哥说让我问你数据库连接池的配置在哪。我翻了所有文件都找不到。”<br>六点零三分。<br>“栀姐,求你了,回个消息。”<br>我看完了所有消息。<br>时间线很清楚。<br>凌晨两点,备份脚本再次失败,日志没有清理。<br>凌晨三点左右,累积的日志文件撑满了磁盘。<br>系统开始报错,写不进新数据。<br>交易系统自动触发降级,关闭了支付功能。<br>然后整个客户端白屏。<br>这就是我之前说的三到五天。<br>今天是第三天。<br>陈军清了日志,但磁盘满了之后,数据库的连接池已经炸了。连接池的配置不在标准的配置文件里是我三年前写在一个自定义的启动脚本里的,路径非常规。<br>没有人知道那个路径。<br>因为我没来得及写文档。<br>因为赵哥说“下个季度”。<br>我看着手机,深吸了一口气。<br>然后打了一段话。<br>“连接池配置在/opt/scripts/custom_init.sh里。重启之前先执行这个脚本,再启动数据库,再启动应用服务。顺序不能反。”<br>发完了。<br>陈军秒回:“谢谢栀姐!!!”<br>二十分钟后。<br>陈军:“栀姐,/opt/scripts/目录下没有custom_init.sh这个文件。”<br>我愣了一下。<br>然后想起来了。<br>那个脚本,调用了我的另一个个人工具。<br>我把工具撤了之后,脚本因为依赖缺失,在某次系统自动清理的时候被当作异常文件删掉了。<br>我闭上眼睛。<br>“没有了。那个脚本依赖了我的个人工具,工具撤了之后脚本可能被自动清理掉了。”<br>陈军过了五分钟才回。<br>“那怎么办?”<br>“你需要手动配置连接池参数。最大连接数200,最小空闲20,超时时间30秒,验证查询SELECT 1。配在数据库的application.properties里。”<br>“好。”<br>又过了半小时。<br>陈军:“配了,但是启动的时候报了另一个错。说什么message queue的配置不对。”<br>“消息队列的配置也在那个脚本里。”<br>&quot;……&quot;<br>“端口5672,虚拟主机/production,预取数量100。”<br>“还有呢?”<br>“还有Redis的哨兵配置。三个哨兵节点的IP你知道吗?”<br>“不知道。”<br>“10.0.1.101、10.0.1.102、10.0.1.103。哨兵端口26379。”<br>“栀姐,你怎么全记得?”<br>我没回这个问题。<br>因为答案是这三年,这些数字就像刻在我脑子里一样。<br>每天都在用。<br>每天。<br>但从来没有人问过。<br>上午九点,陈军终于把系统勉强启动了。<br>但他说“跑起来了,但很不稳定,隔一会就有报错”。<br>因为我那十二个个人工具,有七个和系统的日常运行直接相关。<br>少了它们,系统就像一辆少了七个螺丝的车。<br>能跑,但随时可能散架。<br>上午十点,赵哥亲自给我打了电话。<br>这次我接了。<br>“林栀。”<br>“赵哥。”<br>“系统的事你都知道了?”<br>“陈军跟我说了。”<br>“你能不能……回来看一下?”<br>我沉默了两秒。<br>“赵哥,我已经离职了。”<br>“我知道。但现在系统不稳定,客户那边已经投诉了。CTO刚刚跟我发了火。”<br>“这些问题,我在职的时候每个月都在提。系统依赖个人脚本的风险,我在周会上说了不下十次。”<br>赵哥沉默了。<br>“每一次,你说下个季度。”<br>&quot;……&quot;<br>“赵哥,我不回去。不是因为赌气。”<br>我的声音很平静。<br>“是因为我在那里三年,87个人,每一个人都觉得我最没用。这不是误会,这是三年的结果。”<br>“林栀”<br>“我不需要你们看见我。我只需要你们,在我走之后,看见黑屏。”<br>我挂了电话。<br>8.<br>下午,事情比上午更严重了。<br>陈军在群里发了一条消息:“系统又挂了。”<br>这次不是磁盘问题。<br>是核心交易模块的异步处理逻辑出了bug。<br>这个模块是我三年前写的,后来做过两次大的重构。重构的时候引入了一个自定义的消息中间件也是我的个人工具之一。<br>这个中间件负责处理高并发场景下的订单排队。<br>每天下午两点到四点是交易高峰期。<br>没有这个中间件,订单会互相堵塞,系统会越来越慢,最后直接超时崩溃。<br>三年来,这个中间件一直默默跑着。<br>没有人知道它的存在。<br>下午两点十五分,第一波超时报错出现。<br>两点三十分,客户端开始卡顿。<br>两点四十五分,支付功能再次关闭。<br>三点整,陈军在技术群里说:“我搞不定。这个中间件的逻辑我完全看不懂。”<br>赵哥在群里说:“先手动重启。”<br>陈军说:“重启了三次了。每次撑不过十分钟。”<br>赵哥:“林栀的交接文档呢?”<br>陈军:“没有文档。”<br>赵哥:“怎么可能没有文档?”<br>陈军没有回话。<br>我知道他在想什么“因为你说下个季度”。<br>但他不敢说。<br>下午四点,公司的CTO亲自给我打了电话。<br>“林栀小姐?”<br>“是我。”<br>“我是公司CTO,周明。我们之前没直接接触过。”<br>“嗯。”<br>“直说了,系统的事很严重。我们需要你的帮助。”<br>“我已经离职了。”<br>“我知道。我们可以按外部顾问的标准付费。”<br>“多少?”<br>“一天三千。”<br>我笑了。<br>“周总,你们系统每天的交易额是多少?”<br>他没说话。<br>“六百万。每天。今天下午交易中断了两个小时,按照平均交易额算,损失大概五十万。”<br>&quot;……&quot;<br>“明天如果继续崩,后天如果继续崩,客户流失、品牌损伤、违约赔偿你觉得一天三千够吗?”<br>周明沉默了很久。<br>“你说个数。”<br>“我不说数。因为我不打算回去。”<br>“林栀”<br>“周总,我跟你说实话。你们的核心系统,依赖了我12个个人工具。这些工具不属于公司。你们需要的不是我回去当一天救火队员,是用至少三个月时间,找两到三个资深后端工程师,把整个底层架构重写一遍。”<br>电话那头安静了好几秒。<br>“三个月?”<br>“至少。如果你们能找到愿意读14万行没有文档的代码的人。”<br>“赵峰跟我说,这个系统的维护工作可替代性很强。一个应届生培训两周就能上手。”<br>我笑了。<br>“那就让应届生上吧。”<br>挂了电话。<br>晚上八点,公司全员群炸了。<br>我已经退了群,但王琳把截图发给了我。<br>“客户在骂了,系统到现在还没恢复。”<br>“今天一下午的订单全丢了。”<br>“技术部在干什么?”<br>“赵总监人呢?”<br>然后赵哥在群里发了一条消息:“技术部正在全力抢修,请大家耐心等待。”<br>下面有人回复:“等了一下午了。”<br>还有人说:“听说是林栀走了之后系统就崩了?”<br>“不是吧?她不是最没用的吗?”<br>“哈哈哈哈哈这谁说的?”<br>“你们忘了?团建的时候,87票,满票。”<br>群里安静了。<br>然后有人发了一张截图。<br>是团建那天的投票结果页面。<br>“年度最无贡献员工林栀87票”。<br>底下有人回复了一句话。<br>“那现在,谁来修系统?”<br>没有人回答。<br>9.<br>第四天。<br>系统还是没有完全恢复。<br>陈军在凌晨发了一条朋友圈:“第三个通宵。”<br>配图是公司工位上堆满的外卖盒和红牛罐子。<br>赵哥的朋友圈是一片空白。<br>上午十点,王琳给我打了个电话。<br>“栀子。”<br>“嗯。”<br>“公司现在很乱。CTO给赵哥发了火。说他不了解团队,不了解系统,管理严重失职。”<br>“哦。”<br>“赵哥好像被停职了。”<br>“跟我没关系了。”<br>“栀子,你不生气吗?”<br>“生什么气?”<br>“就……他们那样对你。”<br>我想了想。<br>“王琳,我问你个问题。”<br>“嗯?”<br>“团建投票的时候,你投了谁?”<br>电话那头安静了。<br>“……我投了你。”<br>“嗯。”<br>“不是……我不是故意的。我当时觉得就是个游戏……大家都在投你……我就跟着投了……”<br>“嗯,我知道。”<br>“对不起。”<br>“不用道歉。你只是诚实地表达了你的看法。你们都觉得我没用,那就是没用。我不会因为系统崩了就变得有用。”<br>“可是你明明”<br>“我走了,王琳。走了就不用再讨论有没有用了。”<br>挂了电话。<br>下午两点,系统又崩了。<br>第二次高峰期崩溃。<br>这次陈军连消息都没给我发。<br>可能是知道发了也没用。<br>下午五点,我的邮箱收到一封新邮件。<br>不是公司的。<br>是猎头的。<br>“林栀女士您好,我们的客户是国内某头部互联网公司,正在寻找资深后端架构师。年薪packag𝖜𝖋𝖞e 80万-100万。看到您的GitHub项目非常出色,不知是否有兴趣了解?”<br>80万到100万。<br>我现在的年薪算上年终奖是15万8。<br>差了五倍。<br>不对,年终奖三千八。15万七千八。<br>差了五倍多。<br>我回了邮件:“有兴趣。请发详细JD。”<br>晚上,猎头回了我。<br>职位是核心系统架构师,负责搭建和维护公司的底层交易系统。<br>和我过去三年做的事一模一样。<br>区别是有团队。有文档规范。有架构评审。有合理的薪资。<br>有被看见的机会。<br>我把简历更新了一下。<br>工作经历那栏,我只写了一句话:“独立搭建并维护日处理3000万条数据的核心交易系统,在岗三年零事故。”<br>没有写87票。<br>也没有写那个塑料奖杯。<br>10.<br>一周后,我接到了新公司的offer。<br>年薪88万。<br>base翻了五倍。<br>入职时间定在下个月。<br>同一天,我收到了一条微信。<br>陈军发的。<br>“栀姐,你的那12个个人工具,我们照着你给的参数重写了一部分。但有三个实在写不出来,太复杂了。赵哥说问你能不能有偿提供。”<br>我看了看消息。<br>“多少钱?”<br>“赵哥说可以出五万。”<br>三个工具。<br>我个人写了大半年,加起来八千多行代码。<br>五万。<br>我回了一条:“不卖。”<br>“为什么?”<br>“这三个工具我会用在新工作里。涉及商业机密。”<br>陈军过了很久才回。<br>“那我们怎么办?”<br>“招人重写。找两个资深后端,花三个月,从头来。”<br>“三个月系统不稳定,客户流失会很大。”<br>“这个问题,你应该问赵哥。”<br>我加了一句。<br>“你们投了87票,说我最没用。现在系统告诉你们,答案是什么。”<br>陈军没有回。<br>后来我听说,公司花了三个月才把系统勉强稳定下来。<br>请了两个外包团队,加上陈军带着三个人,四班倒了一个月。<br>那个月的外包费用是42万。<br>加上系统不稳定期间损失的客户和营收王琳偷偷告诉我,大概丢了三百多万。<br>三百多万。<br>而我在那里三年,月薪一万二,年终奖三千八。<br>三年一共拿了47万3千8。<br>不到他们一个月的损失。<br>赵哥后来被降了职。<br>从技术总监变成了技术经理。<br>据说CTO在管理层会议上说了一句话:“一个总监,连自己团队里最重要的人做了什么都不知道。这叫什么管理?”<br>赵哥没有反驳。<br>再后来,公司把“团建投票”这个环节取消了。<br>HR发了一封全员邮件:“为营造更加尊重、包容的团队文化,即日起取消团建评奖中涉及负面评价的环节。”<br>我看到王琳转发给我的时候,笑了笑。<br>晚了。<br>11.<br>新公司入职那天,我到得很早。<br>前台给我办工牌,照了一张照片。<br>我看着新工牌上自己的名字林栀,核心架构部,高级架构师。<br>工牌是金属的。<br>沉甸甸的。<br>不像以前那个,塑料的,名字打印在一张纸上,塞进透明卡套里。<br>入职第一天,部门负责人老吴带我见团队。<br>“这是林栀,新来的架构师。以后核心系统这块,她来负责。”<br>团队有八个人。<br>不是我一个人。<br>八个人。<br>老吴给我介绍完,私下跟我说了一句话。<br>“林栀,你之前一个人扛一整套核心系统,是吧?”<br>“嗯。”<br>“在我们这里,不需要一个人扛。有问题说出来,有活分出去。你只需要做好架构设计,其他的交给团队。”<br>我点了点头。<br>没说话。<br>因为鼻子有点酸。<br>入职第一周,我做了一件事。<br>把核心系统的架构文档写了出来。<br>每一张数据库表的说明、每一个服务的依赖关系、每一个配置参数的含义全部写清楚。<br>文档写了48页。<br>老吴看完,说了一句话:“写得很好。以后这是团队标准。”<br>不是“下个季度再说”。<br>是“以后这是团队标准”。<br>我在新公司的第一个月,没有加过一次班。<br>不是因为事少。<br>是因为系统有值班表,有应急预案,有自动化运维体系。<br>不需要一个人扛。<br>第一个月发工资那天,我看着银行卡上的数字。<br>税后五万八。<br>以前一万二。<br>差了将近五倍。<br>我用第一个月的工资,给自己买了一条裙子。<br>以前三年,我没给自己买过一件新衣服。<br>不是买不起。<br>是觉得不值得。<br>一个“最没用的人”,穿什么新裙子呢?<br>现在我觉得值得了。<br>不是因为薪水高了。<br>是因为有人告诉我“你做的事很重要”。<br>这句话,三年来,从来没有人对我说过。<br>新公司入职三个月后,有一天我在整理东西的时候,从抽屉里翻出了那个塑料奖杯。<br>“摸鱼之王林栀”。<br>我拿在手里看了一会。<br>然后把它放在了新办公桌的书架上。<br>同事路过看了一眼:“这啥?”<br>“以前公司发的。”<br>“什么奖?”<br>“最没用的人。”<br>同事愣了一下,然后笑了。<br>“开玩笑吧?”<br>“没有。87个人投票,满票。”<br>他看了我一眼,又看了看奖杯。<br>“那他们后来怎么样了?”<br>我笑了笑。<br>“系统崩了三天。”<br>他沉默了一秒。<br>然后说了一句话,很轻,但我听得很清楚。<br>“那他们真的很蠢。”<br>我没有接话。<br>把奖杯摆正了,放在那里。<br>不是为了提醒自己曾经受过的委屈。<br>是为了提醒自己<br>我的价值,不由87张选票决定。<br>从来不是。

— 完 —

💬 评论

加载中...