01
荧光灯嗡嗡作响。
这是陈默入职“启明科技”的第一天。
他坐在角落,工位正对着安全出口的绿色指示牌。
人力资源部的柳女士领着他,声音甜美而公式化:“陈默,这就是你的位置。技术组的同事们都比较忙,你先熟悉一下环境。”
陈默点点头,扶了扶鼻梁上的黑框眼镜:“谢谢柳姐。”
“你的电脑权限已经开了,基础的。下午赵组长会过来给你布达任务,他要求比较高,你多担待。”
柳女士高跟鞋的声音远去。
陈默打开电脑。
开机画面缓慢跳动。
他盯着屏幕,思绪却飘得很远。
三个月前,他还是“普罗米修斯”实验室的首席架构师。
那是一个位于硅谷的传奇之地,汇聚了全球顶尖的头脑,致力于构建下一代人工智能底层框架。
在那里,一行代码可能决定数亿美元的融资,一次宕机可能导致全球数万台服务器连锁反应。
他曾连续工作九十六小时,只为优化千分之一秒的延迟。
直到那次。
一次微小的、几乎无法察变的内核溢出。
不是他的错,是底层硬件的偶发性故障。
但他是首席架构师。他必须承担责任。
那场史诗般的崩溃,让他彻底厌倦了。
他厌倦了高处不胜寒的压力,厌倦了时刻紧绷的神经,厌倦了用咖啡和神经衰弱堆砌的所谓“精英生活”。
所以,他回来了。
他清空了所有耀眼的履历,伪造了一份平平无奇的简历。
“精通增删改查”,精通增删改查”,“熟悉基础前端”,“了解网络协议”。
面试时,面试官问他:“看你年纪不小了,怎么还在做基础开发?”
陈默平静地回答:“我比较求稳,不喜欢太大的挑战。之前在小公司带过项目,但还是觉得一线写代码适合我。”
他表现得恰到好处。
一个技术热情消退、能力平庸、只求准点下班的中年程序员。
“启明科技”不大不小,做企业级服务的,技术要求不高,薪水也只是他过去的十分之一。
完美。
他要的,就是这种被人群淹没的、无人在意的“平庸”。
他只想每天修修补补,准点下班,回家养养那几盆快要枯死的吊兰。
电脑终于启动完毕。
他打开代码编辑器,界面简单,是几年前的旧版本。
他看了一眼分配给他的任务:修复一个老旧内部系统的界面显示错误。
一个简单的层叠样式表错位。
他花了五分钟分析。
他知道至少有三种最优解法。
然后,他故意用了一种最笨、最繁琐,但勉强能用的方法。
他花了整整一个小时,“艰难”地修改了那几行代码,然后提交。
下午三点。
一个高大健壮的男人走了过来,脚步很重。
他身上有浓烈的男士古龙水味,头发用发胶梳得一丝不苟。
“你就是陈默?”
陈默站起来:“赵组长好。”
赵康。
技术组组长。
赵康瞥了一眼陈默的屏幕:“柳姐说你基础还行,但速度有点慢啊。一个样式错位搞了一上午?”
陈默推了推眼镜,露出一个憨厚的笑:“刚来,对系统不太熟,有点慢了。”
赵康“嗯”了一声,带着施舍的口气:嗯”了一声,带着施舍的口气:“行吧。下班前,把这个接口的文档补一下。别用那些花里胡哨的工具,就用文字处理器,我们有固定格式。”
赵康转身要走,又停下。
“我们启明科技虽然不是什么大厂,但对代码质量要求很高。尤其是‘北极星’系统,那是我亲手带队重构的,核心中的核心。”
他拍了拍陈默的桌子,语气中充满了自负:“你刚来,先别碰核心代码。外围这些杂活儿,处理利索点,别给我添麻烦。”
“明白。”
赵康满意地走了。
陈默重新坐下。
他打开了赵康引以为傲的“北极星”系统代码库。
他只是想看看自己未来要维护的“杂活”。
他只浏览了五分钟。
陈默的眉头微微皱起。
这根本不是重构。
这是用最新的框架,把一堆陈旧的、混乱的逻辑又重新包裹了一遍。
金玉其外,败絮其中。
他甚至在核心交易模块看到了几个极其危险的写法。
一个典型的并发死锁陷阱。
一个未经严格校验的数据库长连接。
一个效率低下的嵌套循环查询。
在低并发下,这些问题或许不会暴露。
但只要用户量稍微提升,或者遇到一次突发流量……
陈默的指尖在桌上敲了敲。
算了。
不关我事。
他打开了文档,开始认真地“补”那些枯燥的接口说明。
他要的,只是六点钟准时下班。
02
第二天,陈默成了技术组的“边缘人”。
他被固定在了“杂活”区域。
“陈默,那个客户管理系统的下拉菜单在旧版浏览器上不兼容,你去看看。”
“陈默,把上个季度的技术日志整理归档。”
“陈默,运营部那边要个数据,你去数据库跑一下,别用太复杂的查询,小心锁表。”
陈默来者不拒。
他的速度不快不慢,总是在下班前“勉强”完成任务。
赵康对他的评价是:“态度还行,能力也就那样了。”
技术组的其他人,大多是刚毕业一两年的年轻人,对赵康言听计从,把他视为技术权威。
午餐时间。
食堂里,技术组的人聚在一桌。
“赵哥,’北极星’系统三期马上要上了吧?这次咱们的性能提升了多少?”一个叫小马的年轻程序员问。
赵康喝了口汤,慢悠悠地说:“不多,也就把平均响应时间压到了三百毫秒。我用的是最新的异步消息队列,把所有I/O全部分离了。”
“哇,三百毫T!太强了!”
“赵哥牛啊,这架构,放眼全行业也是顶尖的!”
陈默端着餐盘,安静地坐在角落。
三百毫秒。
在“普罗米修斯”,超过五十毫秒的响应,都算P0级别(最高优先级)的故障。
赵康瞥见了陈默,故意提高了声音:“小马,你们年轻人要多学。架构这东西,是艺术。不是像某些人,只会修修补补,写点基础代码。”
众人哄笑起来。
陈默仿佛没听见,低头吃饭。
赵康见他没反应,更来劲了:“陈默,你说是吧?你以前在小公司,见过这么复杂的系统吗?”
陈默抬头,憨厚一笑:“没见过。赵组长太厉害了。”
赵康得意地哼了一声。
下午。
公司最大的客户“华悦集团”的运营人员打来电话,投诉华悦集团”的运营人员打来电话,投诉“北极星”系统在下午两点高峰期,偶尔会出现订单提交缓慢的问题。
“有时候点一下,要转圈一分多钟!”
电话接到了技术组。
赵康正在开会,小马接了电话,脸色发白。
他跑去小会议室找赵康。
赵康很快出来了,脸上带着不耐烦。
“慌什么!高峰期卡顿不是很正常吗?”
“可,可是客户说转了一分多钟……”
“那也是他们网络不行!”赵康断言,那也是他们网络不行!”赵康断言,“’北极星’的架构不可能有问题。我去看看日志。”
赵康坐在自己工位上,调出日志。
陈默的工位离他不远,能听到他的键盘声。
“看,下午两点零三分,并发数才五百,毛毛雨。”赵康的声音很大,像是故意说给全办公室听的。
“这里有个超时报错……”小马小声说。
“这是数据库抖动,正常现象。”赵康不以为意,这是数据库抖动,正常现象。”赵康不以为意,“你回复客户,让他们检查自己的网络环境。顺便,清一下缓存。”
小马犹豫着:“赵哥,这……会不会是我们昨天上的那个新功能……”
“闭嘴!”赵康呵斥道,闭嘴!”赵康呵斥道,“你懂还是我懂?我说没问题就没问题!”
陈默低着头,假装在写文档。
他不用看日志。
他知道问题出在哪里。
就是他前天看到的那个“并发死索陷阱”。
昨天上的新功能,恰好增加了那个模块的调用几率。
现在只是“偶尔卡顿”。
这只是风暴前的宁静。
那个陷阱一旦被某个极端条件触发,导致锁死的连接没有被及时释放,堆积起来……
后果不堪设想。
陈默的手指停在键盘上。
要提醒他吗?
他想起了“普罗米修斯”实验室那间冰冷的会议室。
“陈,我们知道这不是你的错,但你是负责人。”
他闭上眼睛。
多一事不如少一事。
他继续敲打着键盘,写着那些无关痛痒的文档。
六点整。
陈默打卡下班。
他是办公室第一个走的。
赵康从屏幕后抬起头,看着他准时离去的背影,不屑地撇了撇嘴。
“废物。”
03
第三天。
陈默刚到工位,就感觉气氛不对。
技术组的空气是凝固的。
赵康的脸色很难看,眼球布满血丝,显然昨晚没睡好。
小马和其他几个程序员围在他身边,大气不敢出。
“赵哥,华悦那边又来电话了,说今天上午九点半,又卡了五分钟。而且这次不是一台电脑,是他们整个运营部都卡了。”
赵康猛地一拍桌子:“我说了!是他们网络问题!”
“可他们说……他们请了网络供应商去看了,内网全通……”
“那是供应商不行!”赵康烦躁地抓着头发,那是供应商不行!”赵康烦躁地抓着头发,“行了,我知道了!我再加几台服务器缓存!”
他转向陈默,后者正准备开始今天“修复旧版浏览器兼容性”的工作。
“陈默!”赵康的语气很冲,陈默!”赵康的语气很冲,“别搞你那些破玩意儿了!去,把‘北极星’所有模块的运行日志给我导出来,按时间排序!一个小时内给我!”陈默依旧是那副平静的样子。
他开始执行这个简单的体力活。
赵康则开始了他的“优化”。
陈默一边导出日志,一边看着赵康的操作。
他在增加缓存服务器。
陈默暗暗摇头。
火上浇油。
那个死锁陷阱的根源是数据库连接的竞争和异常状态下的资源不释放。
增加缓存服务器,只会让前端涌入更多请求,加大触发死锁的概率。
赵康在饮鸩止渴。
陈默默默地导出了日志,压缩,发给了赵康。
赵康看都没看,直接投入到了他那热火朝天的“扩容”工作中。
中午,公司创始人、技术出身的齐总(齐静)罕见地来到了技术部。
齐静是一位四十多岁、气质干练的女性,表情严肃。
“赵康,你跟我来一下。”
赵康跟着进了会议室。
整个技术部鸦雀无声。
陈默能隔着玻璃,看到齐总在里面说着什么,脸色越来越难看。
而赵康在不停地解释,手舞足蹈。
十分钟后。
赵康出来了,脸色铁青。
齐总也走了出来,对所有人说:“’北极星’系统是我们的命脉。华悦集团是我们最重要的客户。赵康,我不管你用什么办法,今天下班前,必须彻底解决卡顿问题。”
“如果再出问题,”齐总的目光扫过每一个人,如果再出问题,”齐总的目光扫过每一个人,“技术组,包括我,年终奖全部取消。”
齐总走了。
赵康把门一摔,对着组员们吼道:“都愣着干什么!干活!”
“小马,去查配置!”
“老王,去盯数据库!”
“陈默,”他想了想,似乎没什么能让陈默干的,陈默,”他想了想,似乎没什么能让陈默干的,“你……你继续去核对昨天的日志,看看有没有异常IP访问!”
一个下午。
技术组鸡飞狗跳。
赵康的“扩容”完成了。
下午三点,他重启了服务。
“好了。”赵康擦了擦汗,强装镇定,好了。”赵康擦了擦汗,强装镇定,“我加了三倍的缓存,就算再来十倍的访问量,也不可能卡了。”
小马凑过来看了看仪表盘:“赵哥,瞬时CPU占有率好像……有点高?”
“新服务启动,预热,正常!”赵康呵斥道。
陈默坐在角落。
他看着自己屏幕上的一个不起眼的监控小窗口。
那是他自己用几行脚本写的,直连“北极星”数据库连接池的探针。
他刚来时,为了方便“摸鱼”时了解系统状态而随手写的。
此刻。
那个小窗口里,代表“活跃连接数”的数字,正在以一个诡异的、缓慢但坚定的趋势,向上攀爬。
98…
101…
115…
而代表“空闲连接数”的数字,在急剧减少。
赵康的扩容,就像打开了泄洪的闸门。
洪水,正在涌向那个脆弱的堤坝。
陈默的呼吸停滞了一秒。
他知道,大崩溃要来了。
不是明天,不是一小时后。
就是现在。
他猛地站了起来。
“赵组长!”
赵康正在和齐总汇报,说问题已经解决,被陈默打断,很是不满:“干什么!大呼小叫的!”
“连接池,”陈默尽量让自己的声音听起来不那么刺耳,连接池,”陈默尽量让自己的声音听起来不那么刺耳,“连接池要爆了!”
“什么乱七八糟的!”赵康斥道,什么乱七八糟的!”赵康斥道,“你懂什么叫连接池吗?我设的五百个连接!怎么可能爆!”
就在他说话的瞬间。
小马的电脑发出尖锐的警报声。
“赵哥!赵哥!不行了!’北极星’挂了!所有服务全部503!前端页面全白了!”
赵康的脸,瞬间失去了所有血色。
他扑到电脑前,疯狂地敲打着键盘,试图重启服务。
“重启!重启啊!”
“没用啊赵哥!服务起不来!数据库……数据库连接不上了!”
齐总的电话响了。
是华悦集团的副总。
齐总接起电话,脸色瞬间变得和赵康一样惨白。
“齐总,你们的系统彻底瘫痪了!我们下午三点的全国结算……全停了!”
“北极星”系统,在入职第四天的陈默面前,轰然倒塌。
04
第四天。
凌晨三点。
启明科技十七层的灯光依旧通明。
烟味、汗味、还有外卖放久了的酸味混杂在一起,空气令人窒息。
齐总坐在会议室里,一根接一根地抽着女士香烟。
技术组的办公室,如同战场。
“不行!还是起不来!”
“数据库锁死了!我这边强制重启了数据库,但是服务一连上来,瞬间又满了!”
“赵哥,这……这到底是怎么回事啊?”
赵康状若疯狂。
他已经试了所有办法。
重启应用服务,重启数据库,甚至重启了负载均衡。
每一次,系统都像一个溺水的人,刚浮出水面,就被一只无形的大手再次拽入深渊。
“北极星”系统,彻底失控。
华悦集团的全国结算是下午三点。
现在是凌晨三点。
整整十二个小时。
每一分钟,启明科技都在流失金钱和信誉。
华悦集团已经发来了措辞严厉的函件,威胁要启动索赔程序,并终止所有合作。
这将是启明科技的灭顶之灾。
“赵康!”齐总冲出会议室,声音嘶哑,赵康!”齐总冲出会议室,声音嘶哑,“你不是说你的架构万无一失吗!”
赵康汗如雨下,嘴唇哆嗦着:“齐总……我怀疑……我怀疑是硬件故障!对!一定是硬盘I/O出了问题!”
“或者是……是黑客攻击!有人在DDoS我们!”
齐总失望地看着他。
到了这个时候,还在推卸责任。
她环顾四周。
小马在哭。老王在发呆。
一群残兵败将。
她的目光落在了角落。
那个入职才四天的中年男人,陈默。
他居然没有在操作电脑。
他站在一块白板前,手里拿着笔,已经站了很久。
他在发呆?
不。
他在复盘。
齐总走了过去。
陈默没有回头,他似乎在自言自语,又似乎在对这块白板说话。
“不是硬件,日志I/O正常。”
“不是黑客,防火墙没有异常流量。”
“问题在应用层。”
他转过身,看着齐总,又看了看狼狈不堪的赵康。
“赵组长,”陈默的声音很平静,赵组长,”陈默的声音很平静,“你昨天上的那个新功能,调用了‘订单审核’和‘库存锁定’两个模块,对吗?”
赵康一愣:“是……是又怎么样?那两个模块是核心,经常调用的!”
“你错了。”陈默摇头,你错了。”陈默摇头,“你调用的方式,错了。”
他走到赵康的电脑前,指着屏幕上的一段代码。
“这里,‘订单审核’模块,会锁定‘订单表’,然后去申请‘库存表’的锁。”
“而在另一个并发线程里,你昨天加的这个‘库存预警’功能,会先锁定‘库存表’,再去查询‘订单表’。”
陈默的声音不大,但在死寂的办公室里,字字千钧。
“赵组长,你懂什么叫‘交叉死锁’吗?”
赵康的瞳孔猛地收缩。
“在低并发时,这两个操作交错发生,概率很低。”
“但你昨天为了‘优化’,增加了三倍的缓存,导致请求量瞬间暴增。高并发下,这两个线程同时执行,A锁住了订单,等待库存;B锁住了库存,等待订单。”
“它们在互相等待对方释放自己需要的资源。”
“一个等一个,越等越多。所有的数据库连接,都被这两个死锁的线程吃光了。后续所有请求,全部堆积,全部超时。”
“所以,”陈默下了结论,所以,”陈默下了结论,“系统,被你亲手勒死了。”
整个办公室,鸦雀无声。
小马停止了哭泣,老王瞪大了眼睛。
赵康的脸,从惨白变成了猪肝色。
“你……你胡说!你一个刚来的,懂什么‘北极星’!你……”
“我胡说?”陈默打断了他。
他不再是那个憨厚的、唯唯诺诺的中年人。
他的眼神变得锐利,仿佛换了一个人。
“你设置的数据库连接池,最大连接五百。但你的线程池,却开了一千。”
“你用了最新的异步消息队列,却在消费端用了同步阻塞的数据库查询。”
“你引以为傲的‘重构’,就是在高速公路上,开了一辆拖拉机。”
陈默每说一句,赵康的脸色就白一分。
这些,全是“北极星”最核心的、他自以为得意的设计。
却被这个“只懂基础”的陈默,扒得体无完肤。
“你……你到底是谁?”赵康后退了一步。
陈默没有理他。
他看向齐总:“齐总,现在不是追责的时候。”
“要救活系统,必须做三件事。”
“第一,立刻停掉所有应用服务,强制断开所有数据库连接,释放死锁。”
“第二,修改代码。把‘订单审核’和‘库存锁定’的锁顺序改成一致。必须先锁库存,再锁订单。”
“第三,”陈默顿了顿,第三,”陈默顿了顿,“你现在的架构太脆弱,临时补丁撑不了多久。我需要服务器的最高权限,重写底层的数据库连接池管理模块。”
齐总看着他。
这个入职四天的男人,身上散发着一种令人信服的、近乎恐怖的权威感。
赵康尖叫起来:“不行!齐总!不能把权限给他!他会彻底毁了系统!”
齐总闭上眼睛,深吸一口气。
她已经没有选择了。
“赵康,你的权限,即刻解除。”
她转向陈默:“需要多久?”
“修改代码,十分钟。”
“重写模块,”陈默看了一眼时钟,重写模块,”陈默看了一眼时钟,“给我一个小时。”
05
时间,凌晨三点十五分。
启明科技的“心脏”——心脏”——“北极星”系统,被陈默接管了。
“小马,”陈默的声音冷静而清晰,小马,”陈默的声音冷静而清晰,“把‘北极星’订单模块的源码检出,发给我。”
“老王,你去物理机房,准备重启数据库宿主机。等我通知。”
“赵组长,”陈默看了眼瘫坐在椅子上的赵康,赵组长,”陈默看了眼瘫坐在椅子上的赵康,“请你离开操作区,不要碰任何设备。”
赵康想反驳,但迎上了齐总冰冷的目光,他只能不甘地退到墙角。
陈默坐在了主控台前。
熟悉又陌生的感觉。
他已经快忘记这种执掌全局、在悬崖边上拯救系统的感觉了。
他以为他已经厌倦了。
但当他的手指触碰到键盘时,一种久违的战栗感,从脊椎升起。
他,依旧是那个“普罗米修斯”的首席。
小马把代码发了过来。
陈默打开了那个混乱不堪的项目。
“十分钟。”他对齐总说。
接着,办公室里只剩下键盘的敲击声。
那不是赵康那种愤怒的、用力的敲打。
也不是小马那种犹豫的、断断续续的敲击。
陈默的敲击,是一种韵律。
快,准,而且富有节奏。
他甚至没有使用鼠标。
光标在他的操控下,在成千上万行代码中瞬移、跳跃、重构。
他没有去修改赵康的逻辑。
他直接废弃了赵康那两个写满问题的模块。
他用一种更底层、更高效的方式,重写了锁的获取和释放机制。
赵康在旁边看着,一开始是不屑,然后是震惊,最后是恐惧。
陈默用的语法,他很多都看不懂。
那不是这个级别公司会用的技术。
那是一种……近乎于“道”的编程。
七分钟后。
陈默停止了敲击。
“编译,打包,推送到预发布环境。”
“老王,重启数据库!”
“小马,刷新服务缓存!”
指令一条条发出。
凌晨三点二十五分。
“服务启动。”
陈默看着他那个简陋的探针小窗口。
连接池瞬间被填满。
然后,数字开始回落。
活跃连接数稳定在了两百左右。
空闲连接数恢复到了三百。
系统……活了!
“天啊……”小马发出了梦呓般的声音。
赵康的腿一软,差点跪下。
齐总紧握的拳头,终于松开了。
“齐总,”陈默站起身,把主控台让了出来,齐总,”陈默站起身,把主控台让了出来,“死锁解除了。华悦集团的数据可以继续结算了。”
齐总激动地几乎要拥抱他:“陈默!你……你简直是救了公司的命!”
陈默摇摇头:“还没完。”
“什么?”
“这只是止血。”陈默指着屏幕,这只是止血。”陈默指着屏幕,“赵组长的这个架构,隐患太多。刚才那个死锁,只是第一个爆发的。”
“他那个线程池和连接池的配置,就是个定时炸弹。我必须重写连接池的管理模块,否则下个星期,还会崩。”
齐总毫不犹豫:“给你权限!公司所有服务器,最高权限!”
陈默点点头,坐回了自己的工位。
他插上了自带的一个U盘。
“你要干什么!”赵康又叫了起来,你要干什么!”赵康又叫了起来,“私接外设,你……”
“闭嘴!”齐总呵斥道。
陈默没有理会。
那U盘里,是“普罗米修斯”实验室内部使用的一个微型内核工具。
是他亲手写的,专门用于监控和管理超高并发下的资源调度。
他本来以为,这辈子都不会再用它了。
他打开黑色的命令行窗口。
接下来的一个小时,在场的所有人,包括齐总,都见证了他们职业生涯中最不可思议的一幕。
陈默没有在“北极星”系统的代码上修改。
他在直接修改“北极星”系统所运行的服务器的……底层中间件。
他用代码,在赵康那个摇摇欲坠的“拖拉机”下面,强行构建了一个拖拉机”下面,强行构建了一个“高速铁路”的轨道。
他重写了I/O调度。
他优化了内存分配。
他甚至给数据库的驱动,打上了一个热补丁。
赵康已经看不懂了。
他只知道,这个男人,在用一种神乎其神的方式,在给他们的系统“脱胎换骨”。
凌晨四点三十分。
陈默敲下了最后一个回车。
他轻轻呼出一口气。
“好了。”
他调出系统监控仪表盘。
一条平稳、优美、充满了健康气息的曲线,出现在屏幕上。
平均响应时间:三十毫秒。
峰值并发处理能力:提升了二十倍。
CPU占用率:下降了百分之八十。
“这……这是‘北极星’?”小马不敢相信自己的眼睛。
这比赵康吹嘘的最强状态,还要强悍一百倍。
这不是修复。
这是新生。
陈默拔下U盘,放进口袋。
他重新戴上那副黑框眼镜,仿佛又变回了那个憨厚的中年人。
“齐总,隐患解除了。”
“天亮之前,华悦的数据能全部跑完。”
“我先……下班了。”
他太累了。
不是身体,是精神。
今晚,他等于又在“普罗米修斯”上了一次通宵。
他只想回家,给他的吊兰浇水。
陈默走向大门。
“站住!”
齐总叫住了他。
她的声音在颤抖,不是因为害怕,而是因为激动。
“陈默,”齐总快步走到他面前,深深地鞠了一躬,陈默,”齐总快步走到他面前,深深地鞠了一躬,“谢谢你。”
“不客气,齐总。本职工作。”陈默说。
“不。”齐总直起身,目光灼灼地看着他,不。”齐总直起身,目光灼灼地看着他,“这绝不是‘本职工作’。”
她转身,看向面如死灰的赵康。
“赵康,你,明天不用来了。”
赵康瘫倒在地。
齐总又看向陈默。
“陈默,我不管你以前是干什么的,也不管你为什么来启明。”
“从现在开始,你,是启明科技的技术总监。”
陈默一愣:“齐总,我……”
“这不是商量。”齐总打断了他,这不是商量。”齐总打断了他,“技术总监,兼任‘北极星’系统首席架构师。”
“你现在的级别是T3(初级程序员)。”
“我给你连升两级。”
“不,”齐总想了想,不,”齐总想了想,“你的能力,不止于此。”
“我给你升三级!T6!公司最高的技术级别!薪水,按T6最高档发!”
“我只有一个要求。”
齐总盯着他:“把启明科技这艘破船,给我拉上正轨。”
陈默看着齐总的眼睛。
那是一种对人才的极度渴望。
他想起了“普罗米修斯”的背叛,想起了那间冰冷的会议室。
而眼前这个女人,在公司生死存亡之际,选择无条件相信一个只入职了四天的人。
他沉默了。
他那颗本已死去的心,那颗属于顶尖程序员的、渴望挑战和创造的心,似乎又开始跳动了。
他苦笑了一下。
本想平凡度日。
奈何,实力不允许。
“齐总,”他推了推眼镜,齐总,”他推了推眼镜,“T6的薪水……需要交多少税?”
齐总一愣,随即笑了。
“你明天来我办公室,我们慢慢谈。”
06
天亮了。
第四天的清晨,变成了第五天的黎明。
华悦集团的数据,在凌晨五点全部结算完毕,有惊无险。
陈默最终没有回家。
齐总把他拉进了办公室,两人谈了整整一夜。
齐总没有问他为什么隐藏实力,也没有追问他“普罗米修斯”的过往。
她只问未来。
她把启明科技所有的技术家底,所有的暗病,所有的野心,都摊开在了陈默面前。
“……情况就是这样。启明,看上去还活着,但内里已经烂了。赵康不是第一个,也不是最后一个。”
“我需要一个能镇得住场子,更能撕开一条路的人。”
陈默喝着齐总泡的顶级大红袍。
“齐总,我之前的履历是伪造的。”他决定坦白。
“我知道。”齐总笑了,我知道。”齐总笑了,“我猜到了。我不在乎你过去是谁,我只在乎你未来能做什么。”
“T6级别,年薪三百万。外加公司百分之三的期权。”
齐总开出了一个无法拒绝的价格。
“你的任务,”齐总站起来,看着窗外的日出,你的任务,”齐总站起来,看着窗外的日出,“不是维护‘北极星’。”
“是废了它。”
“我要你,为启明,打造一个全新的心脏。”
陈默看着那片朝阳。
他知道,他那“养花种草”的退休生活,彻底结束了。
“我需要绝对的权限。”陈默说。
“技术部,归你管。人事,任你调。预算,你来定。”
“好。”陈默站起身,好。”陈默站起身,“我接了。”
“不过,齐总,我还是想先回去给我的吊兰浇个水。”
……
上午九点。
启明科技的员工们正常上班。
他们惊讶地发现,技术组的气氛诡异到了极点。
赵康的位置空了,东西被保洁收拾得干干净净。
小马和老王等人,顶着黑眼圈,看到陈默时,像老鼠见了猫。
他们围在陈默的工位旁,手足无措。
“陈……陈总监……”小马结结巴巴地开口。
“叫我陈默就行。”陈默正在调试他的新电脑,全公司最高配置的工作站。
“不不不,陈总监,”老王赶紧递上一杯咖啡,不不不,陈总监,”老王赶紧递上一杯咖啡,“您……您看今天我们……”
陈默看了他们一眼。
这几个人,技术虽然平庸,但昨晚也算尽力了。
“老王,你去梳理一下现有的服务器资源列表,我要详细的。”
“小马,你去把‘北极星’所有的需求文档和缺陷报告整理出来。”
“其他人,维持日常运维。”
“是!”
众人如蒙大赦,立刻散开去工作。
中午。
齐总发布了全公司通告。
一,宣布“北极星”系统重大故障已排除。
二,宣布原技术组长赵康,因“重大技术失误及管理不善”,予以开除。
三,宣布任命陈默为公司新任“技术总监(CTO)”,T6级别,全面负责公司的技术研发、架构升级和团队管理。
这封邮件,在公司内部炸开了锅。
“陈默?谁啊?”
“就是那个新来的中年人啊!听说才来了四天!”
“四天?从T3升到T6?连升三级?这坐火箭也没这么快啊!”
“听说昨晚系统崩溃,技术组搞不定,是他一个人救回来的!”
“真的假的?他不是只会修修补补吗?”
行政部、市场部、运营部……所有人都在议论这个“天降猛男”。
陈默对此毫不在意。
他正在白板上画全新的架构图。
一个基于云原生、微服务、具备弹性伸缩和自我修复能力的全新系统。
他将其命名为——“织女星”。
他画得很投入。
以至于柳女士(人力资源总监)走到他身后,他都没发现。
“陈总监。”柳女士的声音,比三天前带他入职时,多了几分敬畏和好奇。
“柳总。”陈默放下笔。
“这是您的新合同,齐总让我给您的。”
“另外,”柳女士看着陈默,另外,”柳女士看着陈默,“我很好奇。您面试的时候,那份技术评估……您是故意的吗?”
她想起了那份“勉强及格”的评估报告。
陈默笑了笑,那憨厚的表情又回到了脸上。
“柳总,我当时说的都是实话。”
“我确实,只懂点‘基础’代码。”
“只不过,”他转过身,看着白板上那张庞大而精密的架构图。
“我的‘基础’,可能和别人理解的,不太一样。”
07
一个月后。
启明科技十七层,灯火通明。
但这一次,空气中没有绝望和烟味,只有兴奋和咖啡的香气。
陈默的技术总监办公室,门永远开着。
白板从一块,变成了四块,上面写满了密密麻麻的公式和架构图。
“不行!’织女星’的网关模块性能还是达不到要求!”小马,现在是陈默的首席助理,大声喊道。
“瓶颈在日志聚合!同步写入拖慢了主线程!”老王,现在是运维组长,一针见血。
陈默端着杯子,走了过去:“日志异步刷盘,引入事件总线。另外,把你们的序列化协议从JSON换成ProtoBuf,能再压榨百分之三十。”
“明白!”
陈默入主技术部的一个月,这里发生了翻天覆地的变化。
他没有开除任何人。
但他带来了“普罗米修斯”的工作方法。
强制代码审查。
每日站会。
以及……末位淘汰。
所有人都被激发出了最大的潜能。
小马不再是唯唯诺诺的跟屁虫,他开始敢于挑战陈默的方案。
老王也开始自学最新的运维技术。
陈默从零开始,给他们培训什么叫“真正的”高并发,什么叫真正的”高并发,什么叫“健壮的”架构。
“织女星”项目,在他的主导下,以一种不可思议的速度在推进。
三个月后。
华悦集团的会议室。
齐总和陈默,坐在了华悦副总的对面。
“齐总,你们的诚意我看到了。昨晚的故障,损失巨大。但你们的赔偿方案……”副总的脸色并不好看。
“李总,”齐总笑了笑,李总,”齐总笑了笑,“我们今天来,不是只为了谈赔偿。”
“我们是来给你们送一份大礼。”
她看向陈默。
陈默打开笔记本电脑,接上投影仪。
“李总,这是我们为华悦集团定制的下一代系统,‘织女星’。”
“我们刚刚在你们的测试环境下,用你们过去一个月最高峰值十倍的流量,进行了压力测试。”
陈默按下了回车键。
屏幕上,出现了一组令人目眩的数据。
“平均响应时间,五毫秒。”
“系统零故障,零卡顿。”
“并且,”陈默说,并且,”陈默说,“这套系统,我们不额外收费。它将作为我们对上次故障的补偿,免费为华悦集团升级。”
李总的眼睛亮了。
他就是技术出身,他知道这组数据意味着什么。
这已经不是“企业级”了,这是企业级”了,这是“怪物级”的性能。
“陈总监,”李总的声音有些颤抖,陈总监,”李总的声音有些颤抖,“你们……是怎么做到的?”
陈默微微一笑。
“也没什么。”
“就是把一些‘基础’的东西,做得扎实了一点。”
……
半年后。
“织女星”系统全面上线,凭借其无与伦比的稳定性,震惊了整个行业。
启明科技不但挽回了声誉,还因此获得了数家巨头的订单。
公司估值,翻了十倍。
齐总在年会上,喝得微醺。
她走到陈默身边,递给他一杯酒。
“陈默,当初给你升三级,T6。现在看来,我还是给低了。”
陈默正低头刷着手机,看他那几盆吊兰的照片。
他现在请了专人上门养护,长势喜人。
“齐总,级别不重要。”
“重要的是,”他晃了晃酒杯,重要的是,”他晃了晃酒杯,“’织女*星’的二期开发,预算该批了。”
齐总哈哈大笑。
她知道,自己赌对了。
这个只“懂点基础代码”的男人,就是启明科技最大的宝藏。
而陈默,也终于找到了比“普罗米修斯”更让他舒心的地方。
他依旧是那个首席。
但这一次,他不再孤单。
他身后,站着一支由他亲手锻造的、全新的团队。
创作声明:本文为虚构创作,请勿与现实关联。本文所用素材源于互联网,部分图片非真实图像,仅用于叙事呈现,请知悉。