侧边栏壁纸
博主头像
ZDREAM

一万年太久,只争朝夕

  • 累计撰写 35 篇文章
  • 累计创建 2 个标签
  • 累计收到 1 条评论

目 录CONTENT

文章目录

当预算不再增长:一名G端项目经理在存量时代的生存思考

Thassarian
2025-11-19 / 0 评论 / 0 点赞 / 94 阅读 / 0 字

一、在存量的寒冬里,守住那条“基线”

1. 2025年末的现场:当“过日子”取代了“搞建设”

时间走到2025年底,作为一个在政务信息化一线摸爬滚打多年的项目经理,最直观的感受是:那个“大兴土木”的时代结束了,现在进入了精打细算的“过日子”阶段。

市里的财政收紧,口风变成了“非必要不立项”。我们负责的公共数据平台,虽然因为支撑着全市的数据流转而位置稳固,但日子也过得紧巴。以前那种做个大改造、立马追加一笔预算的好事没有了,取而代之的是每年固定的、仅占建设费零头的运维经费。但经费减少,并不代表责任减轻。相反,随着业务的深入,各委办局对数据质量的要求、对接口响应的速度、对上级考核的配合度,要求都在逐年加码。

这种“有限的资源”与“无限的责任”之间的张力,是我每天睁眼就要面对的现实。我没有三头六臂,也不是什么管理大师,我能做的,只是带着这几个兄弟,在各种缝隙里把活干好,尽量让这个庞大的系统别出乱子。

2. 护城河的B面:当“技术债”成为最后的防线

外界看我们团队,往往觉得我们坐拥核心数据,壁垒高筑。竞对公司甚至会在私下里抱怨,说我们垄断了市级平台的数据底座。但身处风暴眼中心,我心里最清楚:这个所谓的“壁垒”,既不是高不可攀的尖端技术,也不是铁板一块的行政命令,而是一层层由历史遗留问题堆砌起来的“业务复杂性”。

说得更直白一点,我们的护城河,其实是靠“负重前行”换来的。

(1) 无法重构的“活化石”

这个平台运行至今,完整见证了本地政务信息化从“大干快上”到“精细化治理”的全过程。早年间为了赶工期、应付紧急考核,很多代码逻辑遵循的是“怎么快怎么来”的原则。

随着前任核心架构师的离职,以及省、市、县三级业务条线的频繁变更,系统内部积累了大量的“补丁逻辑”。比如,一个看似简单的数据清洗接口,里面可能嵌套了三个不同年份的政策判断逻辑:

  • 2021年以前的数据要按A规则清洗;

  • 2022年配合省厅回流的数据要走B通道;

  • 而涉及到某几个特定委办局的敏感字段,又必须硬编码一套特殊的脱敏规则。

作为对技术有些了解的项目经理,我曾无数次动过“重构”的念头,想把这些逻辑梳理得清清爽爽。但现实是残酷的——业主没有预算为“看不见的代码优化”买单,他们只愿意为“看得见的新功能”掏钱。

于是,我们只能在飞机高速飞行的过程中修引擎。这种无奈的堆叠,最终让系统变成了一个只有我们能读懂的庞然大物。

错综复杂的数据关系让人望而却步

(2) 竞对的误判:看不见的隐性成本

最近,有外部竞争对手试图通过“低价策略”切入这个项目。他们声称可以用一半的运维费用,重写我们的核心模块,并承诺提供更现代化的架构。

对此,我表现得很淡定。因为我知道,他们严重低估了这里的“隐性成本”
他们看到的只是文档里定义的标准接口,但他们看不到那些“没有写在文档里、只存在于代码特定分支里”的特殊处理。

  • 为什么这个字段为空时不能报错,而必须返回一个特定的默认值?因为下游某个老旧的县级系统如果不这样处理就会崩溃。

  • 为什么凌晨三点的定时任务必须延迟5分钟执行?因为要避开和省厅数据同步作业的IO冲突。

这些细枝末节的“潜规则”,是支撑全市数据业务连续性的关键。外部厂商若想进场,要么花巨大的代价去踩每一个坑,要么就等着引发全市范围内的业务停摆。在“安全压倒一切”的存量时代,业主不敢冒这个险。

(3) 总集的“退堂鼓”:复杂性带来的安全感

不仅是外部竞对,就连拥有最高话语权的“总集成商”,也在这种复杂性面前碰了壁。

去年,为了扩大营收边界,总集曾试图将我们负责的“统一门户”“数据大屏”这两个模块收回去,由他们自己的团队接管。在他们看来,这两个模块属于前端展示层,技术门槛低,且是“面子工程”,最容易出成绩。

在向公司反馈情况后,我们没有强行阻拦,而是配合地开放了代码权限,开出了咨询服务的费用报价。我心里清楚,这两个看似独立的模块,早已与底层的“数据资源目录”发生了深到变态的耦合。

果不其然,总集的团队深入进去后才发现这块骨头有多难啃:

  • 大屏数据跳动的背后:驾驶舱里一个简单的实有人口数字跳动,背后可能涉及跨越公安、卫健、流管三个部门、数十张表的血缘追溯和去重逻辑。

  • 门户权限的泥潭:门户里一个简单的单点登录跳转,依赖的是深埋在目录系统里、历经多次调整的老旧鉴权逻辑。

要剥离门户,就等于要重构半个底层数据平台。这是一种“拔出萝卜带出泥”的系统性风险。面对这种盘根错节的依赖关系,总集在尝试了两个月后,最终选择了放弃,默默地把维护权又交还给了我们。

(4) 只有我们“还得起”这笔债

这件事让我彻底看清了我们在项目上的生存底牌。

在这个存量博弈的寒冬里,我们之所以没有被替代,不是因为我们的技术有多么不可超越,而是因为“替换成本”实在是太高了。

这种由历史积淀下来的高耦合度和业务复杂度,虽然每天都在折磨我们的神经,增加了日常维护的难度,但它客观上构成了一道坚硬的屏障。这笔沉重的技术债,现在只有我们还得起,也只有我们愿意还。这种“只有我们懂、能兜底”的确定性,是一个安全感的无奈来源。

3. 团队管理:没有套路,只有坦诚

在内部节流优先的大环境下,我没法给团队画大饼,也不想搞那些虚头巴脑的团建。大家出来工作都是为了养家糊口,驻点在外本来就不容易。我对团队的态度很简单:有话直说,一起扛事

今年业主塞进来很多合同外的杂活——为了应付省级考核的数据整改、临时的统计任务。我知道这些活儿大概率结算不了多少钱,甚至属于“白干”。但我会坦诚地跟兄弟们交底:“现在的环境就是这样,咱们要保住这个项目,这些苦活就得干。咱们把口碑攒下了,明年的合同才稳。”

作为项目负责人,我从来不是只在旁边指挥。遇到复杂的逻辑梳理,或者紧急的交付任务,我会把自己当成实施运维+半个开发用。我多干一点,兄弟们就能少加一点班。在寒冬里,大家抱团取暖,把手头的活儿干漂亮,对得起这份工资,也对得起业主的信任,这就够了。

二、战术突围——用“笨办法”和“真诚”去解决问题

前面讲的是心态上的“守”,这一部分我想聊聊执行上的“攻”。当然,这里的“攻”不是攻击性的攻,而是如何主动出击,去化解那些层出不穷的难题。我没有什么高深的管理理论,在资源受限的现场,我依靠的更多是技术直觉和一种“不厌其烦”的沟通态度。

1. 拒绝“盲人摸象”:用高保真 Demo 代替无休止的扯皮

G端项目最让人头疼的往往不是开发本身,而是需求的反复横跳。业主业务繁忙,很难透过枯燥的文字文档想象出系统的最终样子。以前我们常吃亏在:根据文档开发完了,业主一看说“这不是我想要的”,然后陷入漫长的返工。
现在,面对其他厂商还在用PPT或静态线框图画饼的时候,我选择多走一步。

虽然我不是专职写代码的开发,但在 AI 辅助编程工具的加持下,我依然保持着一定的手感。对于那些主要用于汇报或沟通的新需求(比如一个新的驾驶舱,或者一套复杂的审批流),我会先用 Vue3 快速搭建一个“高保真 Demo”

image-aZkv.png

image-xoqe.png

直观的可交互界面永远比大段文字说明易接受

必须说明的是,这并非为了糊弄业主做“假功能”。

我会把页面交互逻辑做得很细致,点击跳转、弹窗反馈都尽量还原真实体验。

我会告诉业主:“这只是演示,数据是模拟的,后端还没动,咱们先确认长这样行不行。”

这样做的好处是立竿见影的。业主能直接在浏览器里点一点,甚至能拿着这个 Demo 去向他的领导汇报。一旦他们点头,需求的颗粒度就被“锁死”了。哪怕后期有变动,也是基于这个可视化的版本微调。

这看起来是我多花了半天时间在写前端代码,但实际上,它帮我和团队挡掉了后面几周可能出现的无意义返工。这在只有零星几个开发人员的当下,是性价比最高的投入。

2. 需求管理的“软着陆”:不是拒绝,是排序

为了配合各项考核和上级任务,业主每年都会塞进来了不少“合同外”的任务。说实话,大家心里都清楚,这些活儿大概率是拿不到额外费用的。
如果有公司想“亏本赚吆喝”来抢我们的份额,那我们也不能硬邦邦地把业主推开。但我也不能无底线地压榨团队,毕竟大家已经很累了。
我的处理方式是“坦诚的资源置换”

当老资格的中层科长找过来,急着要一个临时的数据筛选功能时,我不会搬出合同条款说“这不在范围内”,那样太伤感情。我会打开我们的任务看板,把目前正在处理的、为了保障平台稳定运行的任务指给他看:“X老师,这个核查咱们肯定支持,我明白这个功能的重要性,我马上安排人看。不过您也知道,小王现在手里正压着咱们季度报表的数,省厅催得也急。如果插这个单,报表可能得晚两天出,您看咱们怎么排个序合适?”

绝大多数时候,懂业务的业主是通情达理的。他们也知道我们的难处,更知道平台稳定的重要性。

通过这种商量着来的方式,我们将“接不接”的矛盾,转化为了“先做哪个”的技术讨论。既给了业主面子,帮他解决了燃眉之急,又实际上控制了团队的工作总量,没有让大家陷入无休止的加班泥潭。

3. 与“总集”的共生:做那个递锤子的人

随着存量时代的深入,项目现场的生态也在发生微妙的变化。最大的特征就是总集成商(总集)的话语权空前膨胀。新到任的业主领导为了规避管理风险,倾向于将需求统一下发给总集,我们这些垂直领域的厂商,确实面临着被“通道化”甚至边缘化的风险。

面对这种局面,我没有选择对抗,也没有陷入被动的焦虑。特别是在经历了去年那次“接管未遂”的风波后,我看清了双方的底牌,心态从最初的警惕,彻底转向了一种“务实的共生”

(1) 所谓“统筹”,往往悬浮于细节之上

我非常清楚总集的痛点:他们的优势在于商务关系和汇报层面的宏大叙事,但短板也同样明显——人员流动像走马灯一样频繁。

一个需要沉淀三年才能看懂的业务逻辑,总集的项目经理可能刚摸到门道就跳槽了。面对本地那些盘根错节的数据关系和积重难返的技术债,他们往往是“有心统筹,无力落地”。

这就是我的机会。既然你们搞不定细节,那我就来“补位”。于是,在日常工作中,我主动退后一步,选择做一个安静且专业的“填空者”。

所谓的‘兜底’,往往发生在汇报材料提交前的那个凌晨。

(2) 舞台给他们,逻辑握手里

我与总集之间建立了一种基于默契的分工:凡是涉及“面子”的事,我给足他们舞台;凡是涉及“里子”的坑,我带着团队去填。

  • 材料喂到嘴边:当总集需要向局领导汇报时,我会提前把整理好的数据指标、系统运行亮点梳理成图表,打包发给他们。我不争这个汇报的机会,我只确保他们汇报的内容里,数据的解释权在我手里。

  • 替人“挡子弹”:当业主在会上质疑“为什么跨部门数据对不上”时,总集往往因为不了解历史原因而哑口无言。这时候,我会主动站出来接话,从三年前的某次系统割接讲起,解释清楚这是历史遗留的脏数据,并现场给出临时的修正方案。

我这样做,不是为了当众显摆技术,也不是为了打总集的脸,而是为了帮他们“圆场”

(3) 不是威胁,是“让离不开成为习惯”

这种策略看似是我们干了所有的脏活累活,吃了哑巴亏,但实则是在构建最稳固的护城河。通过一次次的“递锤子”和“技术兜底”,我向总集传递了一个清晰的信号:我们是一条船上的。在这个复杂的项目里,我是那个唯一能帮他们把概念落地、把雷排掉的人。

久而久之,总集就会发现,虽然他们名义上统管一切,但一旦离开我们的专业支撑,项目立马就会转不动。比起把我们踢开所带来的巨大崩盘风险,“继续让我们干下去”成了他们成本最低、最安全的选择。

不通过硬碰硬的合同条款去博弈,而是通过“让对方离不开”来锁定位置。这就是我在这个不确定的乱局中,找到的确定性生存法则。

三、尽人事,存口碑

写到最后,其实哪有什么完美的策略。我们现在的状态,更像是在一场漫长的拉力赛中,咬牙坚持。外部环境我们改变不了,预算收紧我们也决定不了。作为项目经理,我能做的,就是别让团队做无用功,别让业主觉得我们推诿,别让系统出大乱子。

我也许不够圆滑,也不懂什么厚黑学,但我相信“尽力而为”的力量。哪怕最后这个项目没有赚到大钱,但至少希望在本地这片政务信息化的圈子里,提到我们团队,大家能说一句:“这帮人是干实事的,关键时刻靠得住。”

这就够了。这或许就是我们在寒冬里,最体面的生存方式。

0

评论区