代码写了又删,我才摸透技术人该懂的长期价值导向
09年我23岁,在南京雨花台软件园那栋墙皮都掉的破写字楼里改需求。客户说下周就要上线新的用户标签系统,要给精准推送打基础。我熬了三个通宵,抱着赶完交差拿奖金的心态,写了一堆到处粘的硬编码,哪里需要就插一段,连个像样的注释都没写。上线那天客户拍我肩膀说小伙子能干,月底发了五千块奖金,我当时攥着银行卡去新街口吃了顿海底捞,美滋滋觉得搞定了就是赢。
三年后原公司接了这个项目的二期,找我回去帮忙改需求,打开代码库我呆了。变量名是a1a2,逻辑绕得像十车道早高峰的立交桥,我自己写的东西,看了一下午都没理顺。最后干脆全删了重写,前前后后花了整整一个月,那时候我坐在会议室里改bug,第一次模模糊糊想明白一个道理:有些事,快不等于赚。
为什么很多人听了长期价值导向,只觉得是老板画饼
没错,现在不管是互联网公司还是创业圈,张嘴就是长期价值,听多了确实反胃。很多打工人第一反应就是:这不就是老板忽悠我免费加班,不涨薪还让我多干活的话术吗?
说实话,我之前也这么想。直到见了太多团队死在眼前的速度上,才反应过来,技术领域说的长期价值导向,本质上根本不是给老板画饼,是选做一件事的时候,你把筹码压在三年后还能给你省力赚钱的方向,而不是选今天能交差明天就可以不管的方向。
互联网业务系统技术债务增长曲线图
我前几年待过一个做To B客户管理系统的小团队,一开始为了抢订单,每个客户的定制需求都直接改代码分支,客户要什么就加什么,交付速度快得吓人,半年签了七个客户,全公司开庆功会喝酒。不到两年,问题全出来了。一个通用的权限bug,要在七个不同分支分别改,测试要一个个回归,整整耗了两个开发半个月的时间。所有团队成员天天陷在改旧bug的泥潭里,根本腾不出手接新订单,原来抢来的速度,变成了捆住自己的绳子。
后来老板拍着桌子问当初为什么不做抽象层,为什么不做通用配置,没人说话。当初所有人都盯着尽快签单拿提成,谁愿意多花一两个月时间做底层呢?
技术领域的长期价值导向,核心是押注不变的东西
很多人对长期价值有个误解,觉得就是故意慢工出细活,就是不管需求非要重构,就是搞大而全的架构。不对,真的不对。长期价值导向的核心逻辑特别简单:把大部分时间和资源,投在未来十年都不会变的底层需求上,把可变的部分留出来,不用一开始就做死。
什么是不会变的?用户要系统快,要数据不丢,要出问题能快速定位修,这些什么时候都不会变。反过来,今年流行直播带货的标签,明年流行私域社群的玩法,这些都是可变的,不用一开始就把底层架构绑死在这些玩法上。
我现在所在的团队做内容推荐系统,五年前立项的时候,有两个方案吵了快一周。一派说直接接第三方成熟的推荐API,七天就能上线跑业务,多快。另一派是个干了二十年的老工程师,说我们自己搭底层的特征存储和召回框架,核心逻辑握在自己手里,虽然要多花一个月,但是以后换模型加新特征,不用把整个底层推翻。
最后老板拍板听老工程师的。现在五年过去了,我们从传统的协同过滤模型换到大语言模型做排序,只改了上层几行逻辑,底层框架还在用,连核心模块都没动。你说这一个月花的值不值?要是当初选了接第三方API,现在要换模型,整个推荐链路都得拆了重写,少说耗三个月。
推荐系统分层架构长期价值对比图
不过话说回来,长期价值导向也不是无边界的。你一个创业项目,明天就要给投资人看Demo,你非要花三个月搭工业级的底层架构,那不是长期价值,那是找死,是给自己找不痛快。长期价值是你在能选择的时候,多往前看一步,不是让你不管实际情况瞎折腾。
技术人自己的长期价值,才是真的稳
技术人自己的长期价值,才是真的稳
说了半天公司和项目,其实对我们普通技术人来说,长期价值导向用在自己身上,比用在项目上有用一万倍。
我见过太多工作三五年的开发,每天上班就是改需求粘代码,产品说什么就做什么,做完交差就下班,看起来每个项目都参与了,三年下来,问他会什么,他说我会改需求,会调接口。换工作的时候,拿不出拿得出手的积累,面试问你做过什么最有成就感的项目,说来说去都是业务需求,根本没碰过核心的底层东西,涨薪都没底气。
反过来,我认识一个年轻人,刚工作两年,每次改完需求,都花一两个小时,把遇到的同类问题整理成通用工具类,遇到坑就记下来总结解法,不到两年攒了快一百个自己的小工具,现在遇到同类需求,别人要做三天,他半天就能搞定,剩下的时间就去啃底层的东西,去年还自己做了个给同行用的开源工具,现在圈子里小有名气,挖他的offer已经排到三个月后了。
我刚工作那几年也犯过傻,那时候懂了长期价值的说法,就天天抱着Linux内核源码啃,觉得这就是攒长期价值,结果工作里连个常见的SQL优化都做不利索,领导找我谈话我还不服,觉得领导不懂长远发展,现在想起来,真挺好笑的。
长期价值不是让你脱离实际自我感动,不是你攒了一堆用不上的知识就叫有价值。你的积累得能解决你当下的问题,能帮你越来越省力气,那才是真的长期价值。不然就是你自己骗自己,看起来很努力,其实什么都没落下。
前几个月回南京,原来那栋破写字楼已经拆了,原地盖了新的科创园,玻璃墙亮得晃眼。我去那边见客户,路过原来我坐的工位的位置,想起当年那堆熬了三个通宵写出来的硬编码,要是那时候我多花三天时间,把逻辑理清楚,加个抽象层,后来也不用花一个月重写。不过也不亏,吃一次亏就懂一件事。
所有抄近道省下的功夫,早晚都会加倍找你要回来。所有愿意花在长期价值上的精力,从来都不会真的白费。它只是长得慢而已,就像你当年在院子里种的树,头三年没人看得出差别,等别人都在找地方乘凉的时候,你的树早就开花结果了。