跳到正文

更多文章

影响力日常操作系统:21天习惯养成计划 从技能雇佣者到价值创造者 互惠账户的运营 影响力的三层架构 组织的注意力经济学
技术重构怎么争取资源

你已经忍了很久了。

代码库里满是技术债务:重复的逻辑、混乱的命名、过时的依赖、没人敢动的”祖传代码”。每次做新功能,你都要在一堆坑里小心翼翼地走。本来一天能做完的需求,因为要绕过各种历史问题,变成了三天。

你很清楚,这个系统需要重构。不是小修小补,是彻底重构。

你向老板提出这个想法。

老板问:重构要多久?

你说:大概三个月。

老板问:这三个月业务需求怎么办?

你说:可能要暂停一些……

老板沉默了一下:Q4有三个大项目要上线,现在不是重构的时候。要不等Q4过了再说?

你心里知道,Q4过了会有Q1,Q1过了会有Q2。永远都不会有”好时候”。

但你没有办法,只能说好的。

然后继续忍受着每天的痛苦。


核心洞察:重构的收益是隐性的,风险是显性的。

这就是重构难获支持的结构性原因。业务需求上线了,GMV涨了,数字清清楚楚。重构做完了,代码更干净了——然后呢?决策者看不到”干净的代码”带来了多少钱。但重构引入了新bug、导致系统不稳定——这个决策者看得见,而且要承担责任。收益隐性、风险显性,这个不对称让决策者天然倾向于不批准重构。要破局,你不能只讲技术价值,你必须学会讲商业价值。


这是技术人员最常见的困境之一:想重构,但争取不到资源。

技术债务的痛苦只有工程师自己知道。业务方看不见,老板也看不见。在他们眼里系统能用就行。为什么要花三个月做一件”看不见产出”的事情?

你可能觉得这是短视,是不尊重技术。

但抱怨改变不了任何事情。

你需要的是用一种方式说服决策者,让他们愿意投入资源做重构。这不是妥协,这是专业。因为工程师的职责不只是发现技术问题,还包括推动解决技术问题。


为什么重构难获支持

在讨论怎么争取资源之前,先要理解重构为什么这么难获得支持。

重构的收益是隐性的,风险是显性的。

业务需求的收益是显性的:上一个功能,用户数涨了,GMV涨了,数字很清楚。重构的收益是隐性的:代码更清晰了,维护成本降低了,开发效率提高了——但这些很难量化成一个具体数字。

而重构的风险却很显性:可能引入新bug、可能导致系统不稳定、可能影响正在进行的业务需求、可能超时超预算。这些风险决策者看得很清楚。

这造成了一个不对称:重构成功,隐性收益,决策者功劳不明显;重构失败,显性风险,决策者要承担责任。这个不对称让决策者天然倾向于不批准重构。

业务需求有deadline,技术债务没有。

业务需求有明确的deadline:Q4要上线、双十一要支撑、月底要交付。技术债务没有deadline。系统再烂,也能凑合用。今天不解决,明天也不会出大事。

当有deadline的事情和没有deadline的事情竞争资源时,有deadline的事情总是赢。所以技术债务就一直被推后、推后、再推后。直到某一天系统真的撑不住了,大家才开始恐慌。

还有一点需要自我反思:很多时候重构得不到支持,是因为工程师自己没有说清楚价值。

你可能会说”代码太乱了""技术栈太老了""维护成本太高了”。但这些对决策者来说是噪音。他们想知道的是:乱到什么程度?有多大影响?老到什么程度?会造成什么问题?维护成本高到多少?换算成钱是多少?

如果你说不清楚,他们就无法判断这件事值不值得做。


技术债ROI计算模板

技术债ROI计算模板:量化技术债务成本、重构投入与收益 — 打开笔记本或文档,按照上面的模板逐项填写。不需要完美,写下来就是进步。


分阶段推进策略图

推动方案的两种提法对比:黑箱 vs 三阶段

决策者心理:“先试一个月,成了再给更多”

阶段目标交付物退出/衡量条件
验证期(1个月)重构最核心的3个模块,验证方案可行3个模块重构完成、单测覆盖率≥80%、性能对比数据如果验证失败可以回滚,损失仅1人月
扩展期(2个月)扩展到全部核心模块,团队熟悉新架构核心系统全部迁移、性能基准测试报告、团队培训完成如果业务有紧急需求,可以暂停不会”骑虎难下”
日常化(持续)融入日常迭代,持续偿还技术债每个sprint 20%用于技术改进开发效率趋势、故障率趋势

MAX 会员专属

本文为 MAX 会员专属内容,升级到 MAX 即可阅读全文。

MAX ¥498/年 · 全部专属文章 + 2300+ 知识文档 + 1v1 咨询

Elazer (石头)
Elazer (石头)

11 年数据老兵,从分析师到架构专家。用真实经历帮数据人少走弯路。

加入免费社群

和数据从业者一起交流成长

了解详情 →

成为会员

解锁全部内容 + 知识库

查看权益 →
← 上一篇 建了数据平台没人用怎么办 下一篇 → 工程师的晋升答辩怎么讲