项目刚入手的第一个月,我还习惯性地拿着 Excel 表格反复核对每一个数字,生怕算错。
那时候认定,人生的数学题和公司的 KPI 简直就是两码事。直到有一次为了赶一个节点,我改了三遍代码,结局发现实际上只需求改第二次,那种“多此一举”的憋屈感瞬间涌上来,就像小时候被老师点名背诵课文,明明记住了却还要重新默写,真恨不得把整个脑袋砸了。 那时候我总认定加班是为了进步,目前才明白,大量时候加班是为了把那些在会议室里虚晃的战术动作,变成真正能落地的小细节。记得有一次大促,我们团队提前两周就启动备货,表面上看是预备得充分,实际上大多数货是拿来的,需求也根本改了个样。最终上线那天,系统崩溃不是出于代码写得烂,而是有人为了省工夫,把本该放在后面的紧急预案直接扔进了前面正在运行的主流程里,结局搞成了“系统瘫痪”。
那一刻我才意识到,我们所有人都在用一种类似“为了赶进度”的借口去掩盖工作的粗糙。 老周是个典型的实干派,他从不画大饼,也不说“我们要搭伙共赢”。他常挂在嘴边的一句话是:“先把代码写出来,再谈优化。”这句话别看糙,但特别管用。有一次我们要重构旧模块,愣是被几个产品经理拉着聊了三天,结局一个月没写出个整个的原型。
后来老周直接拦下了他们,说:“手机屏幕小,功能放多了反而不好用。别跟我谈完美,先做个 MVP 能用的版本。”转头就带人把核心功能拆出来,嵌入到了现有的页面里,别看有个 Bug 但能跑,就这样拖到项目上线才一起复盘。最终上线那天,没人再嘟囔进度慢,大家只是宁静地观察着屏幕上那个不仅稳定并且实用的界面。 带新人最头疼的就是那些“宏观叙事”。老张总爱把一个个具体的 bug 归结为“技术栈局限性”要么“架构设计缺陷”,仿佛我们外行不懂,实际上他在用专业术语给自己找台阶下。有一次我问他:“这次那个登录页白屏到底背后是啥技术缘由?”他叹了口气,指着架构图说:“服务器负载没达标,数据库锁表了,这是架构难题。”我追问:“那为啥目前工夫到了还没解决?”他一脸无奈:“出于测试环境不稳定,并且没人愿意改,怕被技术债拖累上线。” 后来我彻底破防了,直接把他叫到工位上,让他把那个复杂的架构图拍下来,用大白话给我讲一遍。我指着那些箭头和节点,跟他说:“你看,这图里实际上是个漏斗。顶层是需求,中间是接口,最底层是数据源。
要是中间那个接口接不上,顶层的弹窗就不会显示。我们不是在改架构,我们是在填洞。”他看着我的眼,愣了一下,然后点头说:“确实这样,但具体换哪位改?哪位背锅?”我说:“改哪位不关键,关键的是有人主动去扛。”他从那天起,每次发现设计图漏洞,都会自己在项目群里发个笔记,说“架构风险预警”,强迫自己从“被动接纳指令”变成“主动发现难题”。 说回我自己,那会儿满脑子都是“我如此做能加分”,目前才懂,所谓的成长,不过是把那些看似荒谬的事,一点点接上就行。我也曾出于一次加班改错,被领导日决过,认定不被信任。但我后来发现,领导也累,他们把那些复杂的事件推给我们,实际上希望我们能多承担一点责任,哪怕只是做个执行者。他们不是在嫌弃我笨,是在用一种迟钝的方式,告诉我们:在这个团队里,踏实做事比空谈理论更有价值。 目前的我,看到同事为了赶一个上线节点,会忍不住嘴角上扬,出于我知道,他们背后可能正在经历和当年我一样的焦虑,可能出于同一个坑,被反复踩了大量遍。我们都在用自己的方式寻找平衡,要么是在深夜里反复修改代码,要么是在会议桌上争得面红耳赤,要么就是像老周那样,默默地把那些烂代码埋进 codice 仓库,然后说一句:“好了,先上线,后面再优化。” 实际上没有啥惊天动地的瞬间能证明我们确实成长了。
最让人认定欣慰的,就是那些看似不起眼的瞬间:当团队不再出于一个小需求争论不休时,当新人不再出于不懂而瑟瑟发抖时,当加班不再成了常态,而是大家心照不宣地为了搞定目标而并肩作战时,那种感觉真好。 我不再把这个公司当作一个训练场,而是当作一个避风港。在这里,我不再追求完美的“创新”,也不恐惧间或的“失误”,出于我知道,正是这些不完美的细节,构成了我们真正归于自己的故事。我们不需求成为哪位,只需求在归于自己的节奏里,把路走稳。
第二天忒阳升起,我们又要接着干下一件事了,不管前面是坑是浪,只要手里有活,心里有光,这就够了。 有时候看着窗外,会认定这世界上的每个人都一样,都在为了同一个目标努力。
这种共鸣让我认定,我们共同成长的路上,或许并没有所谓的“最优解”,只有无数个“够不够好”的瞬间。
只要我们还在一起,还在为了一个目标拼命,这就已经充足了。


相关标签: