汤玛斯这个人,我真得好好说道说道。
说到汤玛斯,可能很多人都没啥概念,觉得也就是个普通名字。但对我来说,这哥们儿真是我职业生涯里绕不过去的一个坎儿,更像是一座明亮的灯塔。不是说他做了什么惊天动地的大事儿,但他那些实实在在的活儿,那股子劲儿,对咱们这些敲代码的,影响可真不小。直到很多我处理问题、规划项目的方式,都还能看到他的影子。
我刚进公司那会儿,还是个愣头青,满脑子都是怎么把功能实现出来。当时咱们项目组里一堆老手,大家手里的活儿也都是零零碎碎。咱们那个核心业务系统,那是真的一言难尽,代码量大得吓人,逻辑盘根错节,每次想改动一点点功能,都跟拆炸弹似的,生怕一不小心就全盘崩了。我记得那时候,咱们组里光是处理线上各种奇葩问题的工单,就能把人淹没。每天上班第一件事,就是打开监控面板,盯着那一串串红色的报警信息,然后抓耳挠腮地去定位问题,那日子过得,真叫一个心力交瘁,感觉天天都在“灭火”,根本没有时间去想怎么把火源彻底清除。
汤玛斯就是那时候空降过来的,说是来带咱们组攻坚一个“遗留系统改造”的老大难项目。刚开始大家心里都嘀咕,又来个“空降兵”,能玩出什么花样?毕竟之前也来过不少号称要解决问题的“专家”,结果都是讲了一堆理论,啥也没改变。但他不一样,他不像其他领导那样一上来就开大会、讲战略、画大饼,而是默默地,一头扎进了咱们那堆没人愿意碰的代码里。他也没急着推翻重来,而是先花了好几天,跟着咱们几个核心开发,把那些最常出问题、最核心的模块,一个接一个地吃透。
他第一件事就是把咱们最常出问题、最臃肿的那几个模块抓出来,一个个地拆解。我那时候跟着他,看着他怎么把一个几千行代码、包含了N个业务逻辑的大函数,一点点地拆分成几十个几十行的小函数,每个小函数就干一件事儿,功能单一,边界清晰。当时我心里还想,这不就是瞎折腾吗?功能又没变,改这么多,出问题了还更难找了不是?因为咱们习惯了那种“一揽子”解决问题的方式。我还记得当时跟他争论过,觉得这样把代码弄得太碎,反倒不利于理解。他当时也没多说,只是让我继续跟着他看。
结果,没过多久,神奇的事情就发生了。以前一个线上问题,排查起来可能要一天半,因为你不知道这个大函数的哪一行出了问题,牵扯到哪个业务。几分钟就能定位到是哪个小函数出了毛病。改起来也快,因为影响范围一下子就缩小了,改完只用测试这个小函数的功能。那时候我才算是真正明白了什么叫“高内聚低耦合”,也才理解了他当时为什么非要这么“折腾”。他不是简单地把代码切开,他是在梳理咱们的业务逻辑,把那些纠缠不清的业务线,用最清晰的方式给理顺了。这是他对我影响最深的一点,他让我看到了,光会写代码不行,更要会思考代码背后的结构和逻辑,以及未来的可维护性。
他还有一个习惯,每次功能上线前,他都会拉着我们这些相关的同事,手把手地做代码评审。他不是那种高高在上地指点,而是真的会坐下来,一行一行地跟你过。我记得有一次,我写了一个看似很完善的支付模块,自认为考虑得滴水不漏,把所有正常流程都涵盖了。结果汤玛斯就问了我一个很平静但却直击灵魂的问题:“如果用户在支付过程中突然断网,或者支付渠道服务器响应超时,你这个流程怎么处理?还有,万一支付成功了,但回调通知没来,你又怎么保证用户资产和订单状态的一致性?”当时我就愣住了,因为我光顾着写正常流程了,根本没仔细想过这些异常情况和边界条件。他当时也没批评我,就是很平静地给我画了个详细的流程图,告诉我这些关键节点要怎么捕获异常,怎么设计幂等性,怎么设计重试机制,以及怎么保证数据最终的一致性。那一次,我算是彻彻底底地被他折服了,也头一次感受到了什么叫“面向复杂性编程”的魅力和必要性,他教会了我凡事要多想几步,把可能出现的意外都考虑进去,并且提前做好预案。
后来我老婆生孩子那段时间,我自己一个人在家带孩子,又赶上项目组里出了点急事儿,领导催得很急。当时我真的是焦头烂额,一边要哄娃,一边还要远程解决线上问题,晚上基本没法好好睡觉,感觉整个人都快垮了。我那时候好几次都想跟领导请假,但又不好意思开口,怕耽误了项目进度,也怕给同事添麻烦。汤玛斯看我那段时间状态不主动找我聊了聊。他没问项目的事儿,也没催进度,就问我家里是不是有啥困难。我当时也没藏着掖着,就把家里的情况一股脑儿地告诉了他。结果他听完,二话没说,直接跟领导说,让我先处理好家里的事儿,项目上的几个紧急活儿他顶着,并且还主动帮我把一些非紧急的工作分配给了其他同事。他说:“家是第一位,家安稳了,工作才能做得更人不是机器,也要有喘口气的时候。” 那句话,我记到他不是那种只会盯着指标、盯着进度、冷冰冰的管理人员,他更看重咱们这些做事情的人,他身上有人情味。这也让我明白了,一个好的管理者,不光要有技术硬实力,更要有人情味和担当,能体谅下属的难处。
就这么几年跟着他折腾下来,咱们组里的代码质量提了一大截,线上事故率也降了不知道多少。我自己的成长,更是肉眼可见。我开始学着从更高的视角看问题,学着去拆解复杂系统,也学着去考虑更多异常情况和边界处理。这些思考和习惯,都是汤玛斯一点点带给我的。他的贡献,不是写了多少牛逼、多少惊艳的代码,而是改变了我们整个团队的工作思维、习惯和解决问题的模式,把我们从“救火队员”变成了“防火工程师”。
现在回过头来看,汤玛斯的影响,不是那种轰轰烈烈的、一鸣惊人的,而是润物细无声。他不是那种爱出风头的人,但他身上那股子务实、解决实际问题、关注细节、体恤下属的劲儿,真的会潜移默化地影响到你。我后来自己带团队,也总会不自觉地想起他那些做法,学着他去和团队成员沟通,去理解他们的难处,去引导他们看到问题的本质。所以你要问我怎么评价汤玛斯?我只能说,这哥们儿,绝对是咱们这行里,值得你认真学习和尊重的“老兵”,他的那种务实精神和人文关怀,是咱们技术人最宝贵的财富。

还没有评论,来说两句吧...