当前位置:首页 > 探索

工程师工作

凌晨两点,工程机房冷气开得足,师工我穿着冲锋衣还是工程觉得骨头缝里渗凉。面前的师工服务器阵列闪着密密麻麻的绿灯,像一片沉默的工程电子森林。故障日志刷了满屏,师工全是工程同一个错误码——磁盘写入超时。这不是师工第一次了,我知道,工程也不会是师工最后一次。

工程师的工程工作,说白了就是师工跟这种“不听话”较劲。别人眼里我们是工程修电脑的、写代码的师工,其实我们更像是工程在跟机器讲道理,一遍不行讲两遍,软的不行来硬的。上个月给一家物流公司做系统优化,他们的分拣线一到下午三点就卡顿,像人午睡醒不来。我蹲在机柜旁边测了整整两天I/O,最后发现是某个老掉牙的中间件在特定时间点触发垃圾回收,把CPU全吃光了。改了三行配置,问题消失。对方技术主管瞪着眼睛问我:“就这么简单?”我说:“你看见的是三行,没看见的是我翻了两万行日志。”

这行当有个残酷的真相:你解决掉的问题,永远不会有人记得;你还没解决的那个,会被无限放大。去年双十一前夕,某电商平台的支付接口突然报错,我和同事连夜赶过去,现场一片混乱,运营总监的领带都歪了,嘴里念叨着“要出事要出事”。我们没理他,直接在测试环境复现,发现是并发量一高,某个缓存键就过期,导致数据库连接池被打爆。当时有个刚来的小伙子急得想重启所有服务,被我按住了——那等于自杀,流量全冲进来,系统直接瘫痪。我们花了四十分钟写了个降级方案,把非核心业务先掐掉,保支付主链路。凌晨三点,订单量恢复正常,那个总监瘫在椅子上,领带还是歪的,但眼神活过来了。

说实话,干这行久了,人会变得有点“职业病”。我走在街上看见红绿灯,会下意识想它的控制逻辑;点外卖时盯着配送时间,会琢磨调度算法怎么优化。这不算什么浪漫的事,甚至有点无聊。但有一种时刻,你会觉得值——比如你写的代码在某个偏远山区的医院里跑起来了,挂号窗口排队的队伍缩短了;或者你优化的算法让某个小工厂的能耗降低了百分之十五,老板多招了两个人。

当然也有崩溃的时候。有一次上线新功能,我自信满满地提交了代码,结果半夜被电话吵醒,用户数据全乱了。我穿着睡衣爬起来,对着屏幕查了六个小时,最后发现是自己在某个边界条件里少写了一个等号。那种感觉就像你精心搭了一座桥,结果自己把桥墩锯了。第二天顶着黑眼圈去公司,同事没嘲笑我,只是递了杯咖啡,说“正常,谁没干过这种事”。我想了想,确实,这行没有圣人,只有不断收拾烂摊子的人。

工程师的工作,大概就是永远在“我以为搞定了”和“怎么又出问题了”之间摇摆。你没法追求完美,只能追求下一个版本更稳一点。这听起来不酷,但每次系统平稳运行过午夜十二点,我关掉监控页面,伸个懒腰,心里会有种很实在的踏实感——今天,机器们挺听话的。明天呢?明天再说吧。

分享到: