我他妈受够了。今天早会开到一半,我脑子里就一个念头:我宁愿去重构一千行屎山代码,也不想再坐在这里听这些毫无信息量的流水账了。扁平化管理?狗屁。现在就是一群人在互相表演“我很忙”,然后合力把问题像皮球一样踢来踢去。
那个新来的前端,我让他把用户注册流程的验证逻辑从后端挪到前端先做一层拦截,减轻服务器压力。我自认为讲得够清楚了,流程图都画了。你猜他今天早会汇报什么?“Flovico哥,那个验证我做了,但用户提交后还是报错。”我让他把代码给我看。一看血压直接冲到180。他写了个前端函数,校验手机号格式,然后——没了。校验通过后数据直接发到后端,校验失败就弹个alert。我问他:“和后端的接口联调了吗?错误状态码处理了吗?网络超时重试机制呢?”他一脸茫然地看着我,说:“啊?还要处理这些?我以为前端校验完就行了。”那一瞬间,我感觉我花二十分钟口述的需求,经过他的理解漏斗,漏得就剩下一个孤零零的if-else语句。沟通成本高到令人发指。跟他解释清楚“完整的客户端校验”和“与后端协同的健壮性设计”之间的区别,比我亲手用JavaScript把整个流程撸出来,还要多花三倍时间,并且充满了他下次继续犯错的随机性。
这根本不是个例。另一个后端,让他给某个查询接口加个缓存,Redis键名规则、过期策略、缓存穿透的应对方案,我文档里都写了。早会上他说:“加了缓存,但感觉效果不明显。”我让他演示。一压测,QPS(每秒查询率)确实没上去。查日志,发现他根本没判断缓存是否存在,每次都是直接先删缓存,再查数据库,再设缓存。我问他为什么这么写,他支支吾吾说“怕脏数据”。这就是布鲁克斯定律的现场教学版:给一个已经延期的项目增加人手,只会让它延期得更厉害。我现在不是增加了人手,我是增加了一堆需要我花费巨大精力去同步、纠正、甚至擦屁股的“不确定性因子”。管理产生的摩擦力,正在疯狂吞噬我本来用于推进实际业务进展的精力。
早会已经彻底沦为形式主义。每个人用一分钟念一遍自己昨天干了啥,计划今天干啥,像小学生交作业。颗粒度要么粗得像“优化了代码”,要么陷入某个技术细节的泥潭开始辩论。真正卡住项目的风险点,在这种你好我好的氛围里,被轻轻带过。知行鸿沟在这里被无限放大:我知道该怎么做,他们(理论上)也知道该怎么做,但“知道”和“产出符合预期的、可交付的代码”之间,隔着一道马里亚纳海沟。
我宣布,从明天开始,早会取消。不是取消同步,是用工具杀死低效的口水。所有人,强制使用Jira。需求、任务、Bug,全部拆成原子卡片扔进去。状态只有“待办”、“进行中”、“代码审查中”、“测试中”、“完成”。每天下班前更新进度,有阻塞就@我,附上截图或日志。我要看到的是代码提交记录、是Merge Request的链接、是自动化测试的通过率,而不是你们用嘴编织的“工作叙事”。
代码不会跟我装傻。API调用失败就返回错误码,内存泄漏了跑久了就会崩,逻辑有漏洞测试用例就会挂。这一切都是确定性的,可调试的。而人,会遗忘,会误解,会摸鱼,会为了让自己显得忙碌而制造出更多无意义的工作。既然人性天然趋向懒散和模糊,那我就用最冰冷、最极客的看板流程来对抗。所有沟通,尽可能异步,尽可能留下文字记录。如果这样还有人跟不上,那或许问题不在于流程,而在于人。
我组建团队是为了放大我的能力,而不是为了给自己找一堆需要手把手教的“巨婴”。如果管理意味着我要把70%的时间花在把一件事解释十遍上,那这管理本身,就是最大的bug。我得先把自己从这个沟通黑洞里救出来。














