广告位

阿里云10元服务器公司团建漏掉我,我照常打卡修bug,第二天全公司系统瘫痪

频道: 日期: 浏览:13

小鸟云免费服务器

周五下午四点。

空气里开始弥漫着一种骚动,一种属于非工作的、混合着香水和零食碎屑的骚动。

键盘的敲击声变得稀疏而敷衍,像夏末的雨,落几滴,就没了下文。

我旁边的张伟,已经把他那个机械键盘敲出了进行曲的节奏,一边敲,一边用脚打着拍子,嘴里哼着不成调的歌。

他椅子转过来,对着我,哎,林宇,你那个防风外套带了没?山上晚上凉。

我正盯着屏幕上的一段二十年前的祖传代码,脑子像一团被猫玩过的毛线。

什么山上?

我头也没抬。

张伟啧了一声,好像我问了个多余的问题。

团建啊,哥们儿。两天一夜,温泉山庄,烧烤啤酒看星星。你不知道?

我的手指停在半空中。

世界安静了。

只有机箱风扇那永恒的、催眠般的嗡嗡声。

我缓缓转过头,看着张伟那张理所当然的脸。

团建?

对啊,他把手机屏幕亮给我看,一个叫激情燃烧·巅峰团队的微信群聊正刷着屏,全是各种兴奋的表情包和晚上不醉不归的豪言壮语,李娜姐没拉你进群?

李娜,我们公司行政兼HR,一个永远画着精致妆容,说话滴水不漏,但办事永远漏水的女人。

我摇摇头。

张伟的表情瞬间变得有些尴尬,像是不小心踩了邻居家的猫。

他挠了挠头,呃……那啥,可能是忘了。我跟李娜姐说一声……

别了。我打断他。

我的声音很平静。

我自己都佩服这种平静。

我这儿有个bug,挺急的。你们去玩吧。

我说完,转回了我的显示器。

屏幕上,那些密密麻麻的、幽灵般的代码,此刻看起来竟然有几分亲切。

张伟在我身后站了一会儿,大概是想再说点什么安慰的话,但最终只是拍了拍我的肩膀,力道很轻,像是在拂去灰尘。

行……那你……辛苦了。

然后,我听到他椅子被推开的声音,他收拾东西的窸窣声,以及他和其他同事们逐渐远去的、越来越响亮的笑声。

五点整,打卡机滴的一声,像是为这场盛大的办公室撤离仪式奏响了终曲。

整个世界,就剩下我和我面前这坨屎山。

我没动。

我甚至没打开手机看一眼。

我知道,公司大群里此刻一定在直播他们出发的盛况。旅游大巴,挥舞的小旗,以及李娜那张永远在镜头前笑得最灿烂的脸。

没什么好看的。

被遗忘这种事,一次是意外,两次是偶然。

到了我这里,已经成了一种常态。

我是林宇,公司里负责维护核心交易系统底层代码的程序员。

这套系统,是公司的基石,也是公司的耻辱。

它诞生于公司草创之初,用着现在已经没人用的编程语言,由几个早已离职的元老级人物搭建。

它稳定,但也脆弱。像一个八十岁的老爷车,你不知道哪个零件下一次颠簸就会散架。

而我,就是那个唯一还懂怎么修理这台老爷车的技工。

公司里那些新来的、开着跑车的架构师、算法工程师,他们负责造火箭,造飞船,负责在PPT上画出星辰大海。

我负责保证他们脚下的地球,别塌了。

他们看不起我,觉得我干的是没有技术含量的体力活。

王总,我们的老板,每次开会提到我,都会带着一种既庆幸又嫌弃的口吻说:林宇啊,我们公司的定海神针,老黄牛。

定海神针,意味着你不能动。

老黄牛,意味着你得一直干活,还不用吃什么好草。

所以,团建漏掉我,逻辑上是说得通的。

万一,他们在山上烤着串,唱着歌,系统崩了怎么办?

总得有个人在北京西二旗这个数字世界的矿井里,守着那盏忽明忽uo的灯。

我,就是那个守灯人。

我长长地呼出一口气,白色的雾气喷在冰冷的显示器上,瞬间消失。

去他妈的定海神针。

去他妈的老黄牛。

我打开内部系统,找到那个被标记为P0级别,但已经挂了三个月的bug。

P0,意味着最高优先级,意味着一旦触发,整个系统都可能瘫痪。

但它又是个概率性问题,像个幽灵,你不知道它什么时候会出现。

之前的几次尝试,所有人都无功而返。

最后,这个问题就成了一个默契的禁区。没人再提,大家绕着走,祈祷它永远不要爆发。

王总的指示是:在找到完美解决方案前,维持现状。

翻译过来就是:别动,动了出了事,就是你的锅。

但今天,现在,这个空无一人的办公室里。

我闻到了自由的空气。

没有产品经理在你耳边嗡嗡,没有测试在你背后指指点点,没有老板用他那套闭环、赋能、抓手的互联网黑话给你洗脑。

只有我和代码。

这是程序员最纯粹的浪漫。

我决定,干掉它。

就这个周末。

我站起身,走到茶水间。

咖啡机里的咖啡豆,是那种最廉价的商业豆,喝起来一股烟熏火燎的苦味。

但我还是给自己满满地冲了一大杯。

今晚,需要它。

回到座位,我戴上那副用了五年的降噪耳机。

音乐响起,是德彪西的《月光》。

与屏幕上那些狰狞的代码,形成一种诡异的和谐。

我敲下了第一个命令。

`git checkout -b feature/fix-the-ghost-bug`

来吧,小宝贝。

让我们俩,单独约个会。

周五的夜晚,是属于代码的。

我像一个侦探,在浩如烟海的代码文件中寻找着蛛丝马迹。

这个bug的症状很诡异。

在每天凌晨交易结算的某个随机时间点,一小部分用户的账户余额会产生万分之一的误差。

钱,不会凭空消失,也不会凭空产生。

它只是被错误地挪动了。

像一个记账先生,喝醉了酒,把张三账上的一块钱,记到了李四的名下。

数额很小,小到几乎可以忽略不计。

但对于一个金融系统来说,这是最致命的癌症。

这意味着,底层的记账逻辑,有漏洞。

我调出了所有的历史日志。

几十个G的文本文件,在屏幕上像瀑布一样滚过。

我盯着那些滚动的字符,眼睛开始干涩。

咖啡一杯接一杯地灌下去,胃里烧得慌。

我找到了第一次出现问题的记录。

三月十五号,凌晨两点十七分三十四秒。

那天发生了什么?

我翻看公司的项目发布记录。

哦,那天,新星计划的第一期功能上线了。

新星计划,是王总今年最引以为傲的项目,由公司最顶尖的几个工程师负责。

他们用最新的技术,最酷的框架,重构了用户端的APP界面,增加了社交分享、积分商城等等一系列花里胡哨的功能。

上线那天,王总亲自在公司大群里发了八千块的红包。

所有人都说,这是公司迈向新时代的里程碑。

而我,当时正在处理一个因为用户在用户名里输入了emoji表情,导致数据库写入失败的低级错误。

我眯起眼睛。

直觉告诉我,问题,就出在这里。

新系统,和老系统,在某个看不见的深处,打架了。

我开始一行一行地审计新星计划团队提交的代码。

他们的代码风格,怎么说呢?

华丽,复杂,充满了各种设计模式和高深的算法。

就像一个穿着晚礼服的贵妇,优雅,但臃肿。

而我们这套老系统,像个穿着工装裤的管道工,浑身油污,但每一颗螺丝都拧在它该在的地方。

我花了整整三个小时,才大致理清了他们的数据交互逻辑。

当用户在他们那个漂亮的新商城里,用积分兑换一个优惠券时,新系统会向老系统的核心账户模块,发起一个积分扣减的请求。

同时,为了记录用户行为,它还会异步地,向另一个日志系统,发送一条埋点信息。

问题,就出在这个异步上。

老系统的账户操作,是事务性的。

也就是说,扣钱,记账,必须在一个牢不可破的封闭环境里完成。要么一起成功,要么一起失败。

绝不允许中间出现任何意外。

这是金融系统的铁律。

而新系统的那个异步日志,它为了追求所谓的高性能,竟然在事务还没完全提交的时候,就提前去读取账户的临时状态。

在绝大多数情况下,这没问题。

因为计算机的速度很快,快到你感觉不到那个微小的时间差。

但,如果,在那个结算的节骨眼上。

整个系统的负载都达到了顶峰。

老系统像一头气喘吁吁的牛,处理着成千上万笔交易。

这时候,新系统的那个异步读取,就像一根该死的稻草,压了上来。

它有极小的概率,会读到一个脏数据。

一个尚未被确认的、中间状态的账户余额。

然后,它就把这个错误的数据,当成用户行为,记录了下来。

而更要命的是,为了所谓的数据闭环,新系统还有一个愚蠢的数据校准机制。

它会根据自己记录的用户行为,在第二天,反向去校准核心账户系统。

于是,那个万分之一的误差,就这么诞生了。

我找到了。

我找到了那个藏在华丽晚礼服下的虱子。

我甚至能想象到,新星计划的负责人Leo,那个天天把高并发、分布式挂在嘴边的技术大牛,在设计这个功能时,脸上那副自信满满的表情。

他一定觉得,这是个绝妙的设计。

既保证了性能,又保证了数据一致性。

他根本没去理解,也没屑于去理解,我们这套古老的系统,是用怎样一种笨拙而可靠的方式,在守护着每一分钱的安全。

我感觉不到愤怒。

只有一种深深的疲惫。

就像你精心维护了几十年的堤坝,结果被一群开着游艇来狂欢的游客,随手钻了个洞。

他们甚至还觉得,你这堤坝,太土了。

周六的凌晨三点,我提交了我的代码。

我的修复方案很简单。

我没有去改动新系统的任何逻辑。

我只是在老系统的核心模块上,加了一把锁。

一把最简单,最原始,甚至有些不优雅的锁。

当账户在进行核心操作时,这把锁会锁死。

任何外部的读取请求,都必须在外面排队等着。

就像银行柜台的那个一米线。

很笨,对吧?

可能会让新系统那边的响应速度,慢上那么零点几秒。

但它,安全。

在提交说明里,我写得很详细。

我画了数据流转图,指出了问题的根源,解释了我的修复逻辑。

我甚至贴心地标注了:此修改可能会对新星计划的日志模块产生轻微性能影响,建议相关负责人进行压力测试。

我尽到了我所有的职责。

做完这一切,我站起身,活动了一下僵硬的脖子。

窗外,天边已经泛起了一丝鱼肚白。

北京的清晨,有一种灰蒙蒙的、宿醉般的美感。

我拿出手机,微信里依然没有任何关于我的消息。

激情燃烧·巅峰团队群里,最后一条消息是凌晨两点半发的。

是王总,他在发一个红包,配文是:兄弟们辛苦了!明天继续嗨!

我点开那个红包。

手慢了,红包派完了。

我笑了笑,关掉手机。

泡了一碗红烧牛肉面。

热气腾腾的香气,混合着机房里服务器散热的独特味道,构成了我这个周末,最盛大的一场狂欢。

吃完面,我没有回家。

我把几张办公椅拼在一起,躺了下来。

盖着我那件格子衬衫外套。

耳机里,德彪西的月光还在循环。

我睡得很沉。

周六和周日,我就在公司度过了。

除了修复那个幽灵bug,我还顺手把积压了半年的另外十几个小问题,也一并清理了。

代码库里,我留下的提交记录,密密麻麻。

每一条,都清晰地记录着我的工作。

这是一种很奇妙的感觉。

整个世界都去狂欢了,而你,在他们看不见的地方,默默地,把他们脚下那艘快要沉没的船,又加固了一遍。

没有人会感谢你。

他们甚至不知道船漏了。

但你知道。

这就够了。

周日下午,他们回来了。

公司大群里开始疯狂地刷照片。

温泉、烧烤、鬼脸、勾肩搭背。

每个人都笑得那么开心,仿佛经历了一场灵魂的洗涤。

李娜发了一段精心剪辑过的视频,配上了激昂的音乐和字幕。

感恩公司,感恩王总,我们是相亲相爱的一家人!

我看着那一张张晒得微红的、幸福的脸。

面无表情地,给自己点的外卖,点了个确认收货。

周一早上,我照常八点半到了公司。

办公室里,还残留着一股宿醉和烧烤混合的奇怪味道。

同事们三三两两地聚在一起,兴奋地讨论着周末的趣事。

谁喝多了出了洋相,谁在真心话大冒险里爆了猛料。

我从他们身边走过,他们就像没看见我一样。

偶尔有人眼神和我对上,也只是匆匆点个头,然后迅速转回去,继续他们热烈的话题。

我像一个幽灵,穿行在属于他们的热闹里。

我坐到自己的工位上,打开电脑,开始检查昨晚系统自动执行的结算任务。

日志显示,一切正常。

我修复的那个bug,没有再出现。

账户数据,分毫不差。

我心里,一块石头落了地。

九点半,王总踩着点,春风满面地走进了办公室。

他拍了拍手,把所有人的注意力都吸引了过去。

兄弟姐妹们!上个周末玩得怎么样啊?

一片欢呼。

好!玩好了,就要收心了!王总提高了声调,这个礼拜,我们‘新星计划’二期,就要正式启动了!这是我们今年最重要的战役,只许成功,不许失败!大家有没有信心?

又是一片震耳欲聋的有!。

我低着头,看着自己的屏幕,感觉这一切都与我无关。

就在这时,我的内网通讯软件,突然弹出了一个红色的警报。

紧接着,第二个,第三个……

运维部的群里,瞬间炸了锅。

核心系统挂了!所有用户无法登陆!

交易接口全部503!!

数据库连接池满了!服务器雪崩了!!!

整个办公室,瞬间从刚才的激情昂扬,跌入了一片死寂。

所有人都愣住了。

几秒钟后,是Leo,那个新星计划的负责人,第一个反应过来。

他操了一声,猛地从椅子上弹起来,冲向自己的电脑。

他的几个手下,也慌忙地跟了过去。

王总的脸,瞬间就黑了。

他快步走到技术区的中央,声音因为愤怒而有些发抖。

怎么回事?!谁能告诉我,这到底是怎么回事?!

没有人回答他。

只有键盘被疯狂敲击的噼啪声,和运维人员在电话里焦急的吼叫声。

我坐在自己的角落里,静静地看着这一切。

我的心,跳得很快。

但我知道,这事,和我没关系。

我修复的,是数据层面的bug。

而现在发生的,是服务层面的雪崩。

这是两个完全不同的概念。

但,我知道,锅,很快就会找到我头上。

因为,在过去这七十二小时里,整个代码库,只有我一个人,提交了修改。

果然,不到五分钟。

Leo抬起他那张布满血丝的脸,目光像利剑一样,穿过人群,射向我。

林宇!

他吼道。

你周末动核心代码了?!

整个办公室的目光,齐刷刷地,聚焦到了我身上。

有惊讶,有怀疑,有幸灾乐祸。

我没有立刻回答。

我慢慢地,摘下耳机。

然后站起身,迎着所有人的目光,平静地说:

是。

空气仿佛凝固了。

王总三步并作两步,冲到我的面前。

他的唾沫星子,几乎要喷到我的脸上。

谁让你动的?!谁授权你动核心代码的?!

我看着他,一字一句地说:

我修复了一个挂了三个月的P0级数据泄露风险。所有的修改,都有记录,有说明。符合公司的一切流程规范。

流程?!王-总气得笑了起来,现在整个公司都瘫痪了!你跟我谈流程?!

我说了,我重复道,我修复的,是数据bug。和服务瘫痪,没有关系。

没关系?Leo也冲了过来,他指着自己的屏幕,对我咆哮,所有的服务请求,全部卡死在了你的那个‘锁’上!就是你加的那个愚蠢的锁,把整个系统给锁死了!你还敢说没关系?!

我皱了皱眉。

不可能。

我加的锁,只会在极短的时间内,在执行数据库事务时生效。

范围非常小,影响也微乎其微。

绝不可能导致整个系统瘫痪。

云服务器控制台

除非……

除非有某个外部应用,在极短的时间内,发起了海啸般的、疯狂的、不计后果的读取请求。

我的目光,投向了Leo。

Leo被我看得有些发毛。

你看我干什么?是你写的代码出了问题!

我没理他。

我走到我的电脑前,坐下。

在几十双眼睛的注视下,我打开了服务器的实时监控面板。

密密麻麻的曲线图,出现在屏幕上。

CPU,内存,网络IO……几乎所有的指标,都冲到了100%的红色警戒线。

而在请求来源分析那一栏里。

一个熟悉的名字,占了99.9%的流量。

new-star-user-behavior-logger

新星计划-用户行为-日志记录器。

就是那个,我周末发现的,在事务中间进行异步读取的模块。

我明白了。

一切都明白了。

我指着屏幕上的那个名字,回头看着Leo,声音不大,但足以让周围所有人都听清楚。

周一早上九点半,你们是不是上线了什么新功能?或者,开启了什么新的营销活动?

Leo的脸色,刷地一下,白了。

他身后的一个小弟,下意识地开口:我们……我们开启了周末团建照片墙的点赞活动……

照片墙。

点赞。

我懂了。

为了让用户能看到实时的点赞数。

他们那个聪明的日志模块,每当有用户点一次赞,就会去核心账户系统里,读取一次用户的最新信息。

而今天早上,王总一声令下,全公司上千人,加上他们邀请的那些外部渠道的合作伙伴。

所有人都涌进了那个照片墙页面。

疯狂地,给自己,给领导,给同事,点赞。

一秒钟,可能有几千上万次点击。

也就意味着,有几千上万次数据库读取请求,洪水一般地,涌向了我加了锁的那个地方。

我那把小锁,就像一个尽职尽责的保安。

面对着冲过来的成千上万个想要插队的人。

他只能一个一个地放行。

于是,所有人都被堵在了门口。

队伍,越排越长。

直到,把整个商场,都堵死了。

这不是我的锁,太笨。

是他们的请求,太蠢。

我把这个逻辑,用最简单直白的语言,讲了一遍。

讲完,整个技术区,鸦雀无声。

针落可闻。

所有程序员,都听懂了。

他们看着Leo的眼神,充满了同情和……鄙视。

这是一个教科书级别的、因为滥用资源而导致的系统雪崩。

是一个任何一个合格的架构师,都应该在设计阶段,就预料到并规避掉的低级错误。

Leo的嘴唇在哆嗦。

他想反驳,但一个字也说不出来。

因为,监控数据,就摆在那里。

代码逻辑,就摆在那里。

事实,胜于雄辩。

王总的脸色,从黑色,变成了酱紫色。

他看看Leo,又看看我。

他不是程序员,他听不懂那些技术细节。

但他看懂了在场所有人的表情。

他知道,他骂错人了。

他知道,他引以为傲的新星团队,闯下了弥天大祸。

而那个被他遗忘在角落里的老黄牛,才是唯一看清真相的人。

办公室里的空气,尴尬得能拧出水来。

最终,还是王总,打破了沉默。

他深吸一口气,像是做出了一个艰难的决定。

他走到我身边,放缓了语气,甚至,带上了一丝……恳求?

林宇……那,现在怎么办?你……有办法解决吗?

我看着他。

他的眼神里,没有了之前的盛气凌人。

只剩下焦虑和依赖。

我心里,忽然涌起一阵说不出的滋味。

是快意吗?

有一点。

但更多的是荒谬。

你们把我当成一个可有可无的零件,随意丢弃。

现在,机器坏了,你们又指望我这个零件,能自己变成一个修理工。

凭什么?

我完全可以说,这是你们新系统的设计缺陷,与我无关,我解决不了。

然后,安安静静地,看他们手忙脚乱,看公司股票下跌,看王总被董事会问责。

这很公平。

但,我看着屏幕上那些鲜红的报警。

我知道,背后是成千上万个无法登陆,无法交易的真实用户。

我知道,这套系统里,有我十年青春里,写下的每一行代码。

它就像我的孩子。

一个长得不好看,甚至有点笨拙的孩子。

但我不能眼睁睁地看着他,就这么死了。

我转回头,看着电脑屏幕。

有。

我说。

但需要所有人的配合。

第一,Leo,我点了他的名字,立刻,把你们那个点赞活动的功能,给我停掉。是从代码层面,注释掉,重新发布。不是从后台关个开关。

Leo像是抓住了救命稻草,连连点头,好,好,马上!

第二,运维,我转向运维主管,把核心交易服务器集群,先摘掉一半的流量。用负载均衡,导向一个静态的‘系统维护中’的页面。我们需要给服务器喘息的时间。

运维主管也立刻行动起来。

第三,我的目光,落在了王总身上,我要最高权限。所有服务器的root权限,所有数据库的owner权限,所有代码库的admin权限。现在,立刻。

王总没有丝毫犹豫。

给!李娜!你亲自去办!五分钟内,林宇需要的所有权限,全部开通!

那个刚才还恨不得找个地缝钻进去的HR经理,此刻像被注入了强心针,一路小跑地冲向了IT部门。

我重新戴上耳机。

世界,再次安静下来。

这一次,我放的不是德彪西。

云服务器夜里

是AC/DC的《Thunderstruck》。

激烈的鼓点,狂野的吉他solo,像战鼓,在我耳边擂响。

我的手指,开始在键盘上飞舞。

我没有时间去写一个优雅的、完美的、可以载入教科书的解决方案。

我需要的是,快。

用最快的速度,恢复系统的正常运转。

我采取了最简单粗暴,也最有效的方式。

限流。

熔断。

降级。

这些是系统过载保护的常规手段。

我在核心系统的入口处,加了一个请求队列。

所有来自新星计划的非核心业务请求,都必须在这个队列里排队。

我给这个队列,设置了一个极低的优先级,和一个极小的容量。

一旦队列满了,后续的请求,直接丢弃,返回服务器繁忙的错误。

简单来说,我修了一道水坝。

把他们那边的洪水,拦住了。

确保我这边的核心农田,不受影响。

同时,我写了一个临时的脚本,去数据库里,把那些因为雪崩而被锁死的僵尸连接,一个个地,手动杀掉。

这个过程,就像在拆除一颗已经开始倒计时的炸弹。

每一步,都必须小心翼翼。

一个命令敲错,整个数据库,都可能崩溃。

我的额头上,渗出了细密的汗珠。

整个办公室,没有人敢大声喘气。

所有人都站在我身后,看着我屏幕上滚动的代码和命令。

他们看不懂。

但他们能感受到那种令人窒息的紧张。

时间,一分一秒地过去。

半个小时后。

我敲下了最后一个回车。

`service restart`

我按下了重启服务的命令。

所有人都屏住了呼吸。

服务器的监控面板上,那一条条刺眼的红色曲线,开始缓缓地,回落。

从100%,到80%,到50%……

最终,稳定在了30%的绿色安全区域。

运维主管的电话响了。

他接起来,听了几秒钟,脸上露出了狂喜的表情。

他对着电话大吼:恢复了?!用户可以登陆了?!交易正常了?!

他放下电话,转向王总,声音因为激动而颤抖。

王总!恢复了!全部恢复了!

办公室里,先是短暂的寂静。

然后,爆发出了一阵雷鸣般的掌声。

我不知道是谁第一个开始鼓掌的。

但我看到,每一个人,都在用力地鼓掌。

那些之前对我视而不见的同事。

那些在背后议论我技术老旧的新人。

甚至,那个脸色煞白的Leo。

他们的眼神里,不再有轻视和怀疑。

取而代DEZHI的,是一种混合着敬畏、感激和愧疚的复杂情绪。

我慢慢地,摘下耳机。

AC/DC的嘶吼,戛然而止。

世界,又恢复了嘈杂。

我靠在椅背上,感觉全身的力气,都被抽空了。

王总走到我面前,他伸出手,紧紧地握住了我的手。

他的手心,全是汗。

林宇……谢谢,谢谢你。今天,你救了整个公司。

我抽回我的手,没有说话。

我不需要他的感谢。

尤其是,这种迟来的感谢。

我只是看着他,平静地问:

王总,我的加班费,怎么算?

王总愣住了。

他大概没想到,在这个力挽狂狂澜的英雄时刻,我会提出这么一个……现实的问题。

他旁边的李娜,赶紧凑过来说:林宇,你看,这事儿……公司肯定不会亏待你的,特殊贡献奖,年终奖金,都会有的……

我打断她。

我就问,这个周末,我加了四十八小时的班。按照劳动法,周末双倍工资,法定节假日三倍。我不知道公司团建算不算法定节假日,但我觉得,至少应该按三倍算。

我的声音不大,但办公室里很安静。

所有人都听见了。

李娜的脸,涨成了猪肝色。

王总的嘴角,抽动了一下。

他看着我,眼神里闪过一丝不快。

但他最终,还是点了点头。

算!按三倍算!李娜,你记一下,这个月,给林宇单独发一笔奖金,就按他说的标准,不,按五倍算!

我没再说话。

我关掉电脑,收拾我的东西。

一个双肩包,一个水杯,一件格子衬衫。

这就是我在这家公司,全部的家当。

我背上包,准备离开。

林宇!王总叫住我,你去哪儿?

回家。我说,补个觉。

那个……晚上的庆功宴……?

不去了。我摇摇头,我不太习惯热闹。

我说完,没有再看任何人的表情。

径直,走出了办公室。

在我身后,是长久的沉默。

回家的地铁上,我靠着窗户,看着外面飞速倒退的城市。

手机震动了一下。

是银行发来的短信。

一笔五万元的转账,到账了。

备注是:特殊贡献奖金。

王总的效率,倒是挺高。

我关掉短信,打开了招聘软件。

开始更新我的简历。

在项目经历那一栏,我加上了最新的一条:

独立修复因架构设计缺陷导致的P0级数据安全漏洞,并在一小时内,成功解决由高并发请求引发的系统全线雪崩事故。

写完,我点击了刷新。

一分钟内,几十个猎头的消息,涌了进来。

我没有立刻回复。

我只是看着窗外,夕阳正把天空染成一片温暖的金色。

我忽然觉得,那个被漏掉的团建,那个在空无一人的办公室里度过的周末。

或许,是我在这家公司里,过得最开心,也最像我自己的一个周末。

代码不会说谎。

它不会因为你的职位高,就对你笑脸相迎。

也不会因为你被边缘化,就拒绝为你工作。

你尊重它,它就给你回报。

你轻视它,它就给你一个响亮的耳光。

这比办公室里那些虚伪的笑脸和廉价的家文化,要真实一万倍。

第二天,我提交了辞职信。

王总找我谈了三次话。

许诺给我加薪,升职,让我做技术总监,带新星计划的团队。

Leo,也被他当着我的面,狗血淋头地骂了一顿,然后调去看管机房了。

那个曾经不可一世的技术大牛,现在每天的工作,就是检查服务器的硬盘和网线。

这一切,都很有诚意。

但我还是拒绝了。

有些东西,碎了,就是碎了。

信任,就像一张纸。

揉过了,再怎么抚平,也回不到原来的样子。

我离开的那天,很多人来送我。

张伟,那个告诉我团建消息的同事,给了我一个用力的拥抱。

宇哥,保重。你是我们所有码农的偶像。

我笑了笑。

我不是什么偶像。

我只是一个,想安安静静写代码的普通人。

那个叫小萌的实习生,红着眼睛,塞给我一个小礼物。

是一个键盘形状的钥匙扣。

宇哥,谢谢你之前教我那么多东西。

我摸了摸她的头,加油。

我没有看到Leo,也没有看到李娜。

王总站在他办公室的落地窗前,远远地看着我,没有过来。

我走出公司大门的时候,阳光正好。

我回头,看了一眼那栋我待了十年的写字楼。

然后,转身,走进人海。

没有丝毫留恋。

后来我听说,我走后,那套老系统,再也没人能完全搞明白了。

公司花了大价钱,从外面请了专家团队,想重构它。

结果,搞了半年,搞出了一堆新bug,最后不了了之。

新星计划,也因为失去了底层系统的稳定支持,变得步履维艰。

再后来,听说那家公司,被一个更大的巨头收购了。

王总,也提前退休了。

这些,都与我无关了。

我现在,在一家新的公司。

不大,但很务实。

没有那么多花里胡哨的PPT,也没有那么多喊得震天响的口号。

我们做的,是为那些传统企业,提供稳定可靠的技术解决方案。

我的职位,是首席架构师。

我的工作,依然是和那些老旧的、但至关重要的系统打交道。

我喜欢这种感觉。

像一个老医生,为那些被时代抛弃,但依然在努力跳动的心脏,做着最精密的手术。

偶尔,我也会参加公司的团建。

我们不去什么温泉山庄。

就是找个周末,大家一起,去爬爬山,或者在郊区的农家乐,吃一顿地道的柴火饭。

每一次,行政都会提前一个月,在日历上,圈出时间。

然后,一个一个地,当面确认。

没有人会被漏掉。

没有人,是理所应当的守灯人。

因为大家都明白一个最简单的道理。

真正支撑一家公司走下去的,不是那些激情燃烧的口号,也不是那些觥筹交错的团建。

而是每一个,在自己的岗位上,默默拧好每一颗螺丝的人。

是每一个,像我一样,也像你一样。

努力工作,认真生活的,普通人。

香港云服务器那家便宜

关键词: