周五中午,林昊请黄维国在公司楼下吃了碗面。
不是那种正式的商务饭局——就是兰州拉面,十八块一碗,加了一份牛肉。两个人坐在靠墙的小桌旁,面前各一碗面,热气腾腾。
"黄哥,"林昊把面搅了搅,"昨天你走了之后,小赵他们一晚上没走——把你说的三个隐患都验证了。第一个和第二个确认了,第三个他们正在补测试用例。"
黄维国吃了一口面,"嗯"了一声。
"我有个事想问你。"林昊放下筷子,看着他。
"问。"
"你是怎么知道这些的?不是问具体的技术原理——那些我查查也能查到。我是问——你怎么做到'听我描述几句话就知道问题在哪'的?"
黄维国想了想怎么回答。
他低头看着面碗里的汤,沉默了几秒。
"代码我忘得差不多了。"他说,"具体的API、框架版本、配置参数——这些我记不住了,年纪大了。你让我现在写一个Spring Boot的Controller,我可能还得查文档。"
林昊听着,没插话。
"但哪些坑容易踩——这些我记得清清楚楚。"
他抬起头,想了想怎么说。然后决定举个具体的例子。
"昨天你们给我看监控数据的时候——我是怎么发现Caffeine那个问题的?我跟你说一下我脑子里当时的过程。"
林昊放下筷子,认真听。
"你们的Dashboard上有几十条曲线。我不是每条都看——那太慢了。我先看'形状'。大部分曲线是平的、有规律的——这些我直接跳过。我在找'不对劲的形状'。"
"什么叫不对劲?"
"就是……毛刺。不该出现锯齿的地方出现了锯齿。你们Redis Cluster的metrics里有一条线——缓存命中率——整体99.2%,很好看。但我把时间轴拉到小时级别的时候,发现每天凌晨两点到三点之间,命中率会掉到97%左右,然后自己恢复。"
黄维国用筷子在桌面上虚画了一下。
"这个掉落幅度很小——正常人不会注意。而且它能自己恢复,所以监控不会告警。但我的大脑在那一瞬间——"他停了一下,"2019年那个银行的画面就冒出来了。不是我主动想起来的。是它自己跳出来的。因为那次也是这样——缓存命中率在特定时间段微微下掉,所有人都觉得正常,直到并发量翻倍的那天才炸。那次我在机房待了两周。"
"所以你看到那个微小的掉落,就——"
"就知道了。"黄维国吃了口面,"不是推理出来的。是身体记住的。那条曲线的形状跟五年前的一模一样——我的后背当时就紧了一下。然后我才去想'为什么会这样'——才去查Caffeine版本、MySQL版本、驱逐策略。但'出了问题'这个结论,在我查之前就已经有了。"
林昊若有所思地点了点头。
"你说的这个……能教吗?"
"不能。"黄维国说得很干脆。"你没在凌晨三点对着那条曲线骂过娘——你的身体就记不住它。这种事只能经历,不能传授。"
林昊没再问了。低头搅了搅碗里的面,沉默了一会儿。
黄维国把最后一口面吃完,用纸巾擦了擦嘴。
"AI能写出标准答案——标准环境下都是对的。但现实里哪有标准环境?标准答案在非标准环境里就是定时炸弹。"
林昊盯着他看了一会儿。
"这种东西,"他说,"你是不是可以卖钱?"
黄维国笑了一下。"谁买?"
"我买。"林昊语气认真,"而且不止我。你想想——像我这种创业公司有多少?技术团队年轻、AI工具用得顺手、但缺一个'见过足够多坑'的人把关。这种需求是存在的。"
黄维国没接话。他低头看着空碗,手指在桌面上轻轻敲了两下。
"你别急着说'谁买'。"林昊说,"你先告诉我——月付一万,你当我的技术顾问。不用来上班,不用写代码。有事我微信或者打电话问你,你说你的判断。我们自己决定采不采纳。"
一万。
黄维国心里算了一下:加上跑滴滴每个月六千多。一万六。房贷一万二。刘芳的工资覆盖日常。
算下来……刚好够。不是宽裕,但够了。
"我不是什么大老板,给不了太高的数。"林昊说,"但如果后面你帮我们省了大事故的钱——我会加。"
黄维国抬起头看了他一眼。年轻人的脸上没有客套——是认真的。
"行。"他说。
"成交?"
"成交。"
两个人又叫了两碗面——这次是庆祝。虽然庆祝的方式就是多加了一份牛肉。
吃完面出来,黄维国站在路边点了根烟。
林昊不抽烟,站在旁边看着手机。忽然他说:"黄哥,你的顾问从什么时候开始算?"
"从上次去机场那天开始。"黄维国吐了口烟,"那天算第一次。"
林昊笑了。"行。那我月底转账。"
黄维国把烟抽完,掐灭在垃圾桶上。"有事就找我。没事就别找我——我白天还要跑滴滴。"
"得嘞。"
两个人在路边分开。黄维国走向停车场的方向。
一边走一边想:一万块一个月。不写代码。不坐班。只输出判断。
这是什么工作?
他不知道。但他知道一件事——从现在开始,他脑子里那些东西,不再只是"回忆"了。它们是资产。
至少值一万块一个月。
夜雨聆风