创新性项目经验

24 年我做了一个创新性项目,从年初的第一行代码到现在,项目已成功打通,并在市场上得到了验证,也获得了盈利,明年就开始做增量和平台化。

我在四年多时间一共做了四个项目的探索,这是我近些年第一个做成的项目,昨天在复盘的时候我在想,如果当时做到哪些,可以让项目发展的更好,这篇文章是我的感悟。

人员结构

在整个周期中,最大的困难是既要写代码、想实现方案、技术选型,也要做决策,和运营反复分析、拉扯方向、目标、细节,这导致精力完全不够,两头都顾,但两头都做的不够好。

如果我能力够强,能够完美兼顾两边,那当然最好,可惜我没强到那个地步,真正做决策是很难,这要求不仅有技术实现方案,还有对业务有绝对深度的理解,要有产品思维、流量思维、商业逻辑,对业务有前瞻性,对行业有经验和理解。

否则就会陷入到运营说什么,研发做什么,然后运营一直改,研发同步改,搞到后面,研发崩溃,创新性项目和普通项目相比,需求更多更杂,不确定性更多,但需求这样天天改,没人受得了。

所以需要一个做决策的人,把控整体,为什么研发适合?因为研发懂技术实现,剩下的流量思维、产品思维、商业模式那都是可以短期学的,或者聊一下就懂个大概,但指望运营短时间理解技术,非常困难,他们只会问为什么不能上线,而不管怎么实现。

我的解决方案是加大研发资源,一个人负责把精力重点放在业务和技术实现方案,其他人负责细节实现。

研发负责人平衡需求准确性和业务迭代。

拆解目标

这是保证需求准确性的具体方法。使用目标五要素:做什么、为什么、做到什么程度、截止时间、资源。

运营有天说要做个活动,好,那就分析一下做活动的目的,比如拉新、复购、日活、冲 GMV 等。

分析了一通运营说,我全都要,那说明没分析到具体问题,继续分析,万一真有拉新、日活都要的情况,那就要以这两个目标接着拆分。

假设最后得出的结论是,要做拉新和日活。

那先来分析拉新,如果目标是拉新,有没有别的实现方案?比如直接买流量,或者做裂变,对比不同方案,找出最合适的。拆分日活目标也是同理。

现在对比了各种方案,发现活动是最合理的,要以做活动为目标。

那要做到什么程度?是给潜在用户发推广短信,还是要搞个双 11 规模的?确定具体事项、目标边界。

然后再看要达成这个目标,有多少资源,估算的上线时间,和运营期望的是否相符?

如果不符合,研发就解释下为什么要这么久,具体的实现方案,让运营理解研发的工作量。

要是项目有期望的 DDL,再看怎么配合协作,要么砍功能,要么加资源。

这里不能为了快速上线,过于牺牲代码质量,否则后续踩雷了,真心难受。

沟通汇报复盘

上面说的是具体拆解方法。在实际工作中,目标总会变的,尤其是创新性项目,变化之大超乎想象。

这时研发负责人要保证写代码的人不能被打扰,和运营重新拆解目标。

在重新确认目标后找项目总负责人过一下,一般是大老板,做好汇报。

运营汇报以数据为主,每个目标执行后,有没有达到预期的效果,为什么没有,下次怎么优化,方向对不对。

研发汇报以进度为主,可以重点说说达成了哪些里程碑,做到了什么阶段,现在目标是什么,攻克了什么困难。

毕竟研发和运营讨论出来的方向不一定和老板想的一样,所以要和项目负责人同步,如果有不同看法,那就拉着重新拆解目标。

这里重点要保护核心写代码的成员,不能被太多杂事打扰,分工协作,效率翻倍。

即使目标改变,研发负责人做好方向和架构,再重新交写代码的成员开发。

如果我早点能意识到这点,也许我没那么累,效率也更高。

代码重构

在需求不多的空闲期,一定要及时重构代码。

即使做到上面说的,也会有非常紧急的场景,突然来个明天要上线的需求,或是之前目标还是变了,代码写一半强行扭转。

我回顾自己写的代码,很多逻辑自己都不记得,改动一个地方会影响到哪些,也不清楚,这就是没有做好重构和梳理。

重构除了处理废弃代码,还要对业务核心逻辑,一遍又一遍梳理,直到记住每一个场景的流程,每一个操作的细节,做到这个程度,基本上不会有 bug。

这个很难,而且还在一直迭代,对记忆力要求也挺高的,算是道坎吧。

好了,以上就是我的感悟,加油,共勉。

相关推荐
cainiao0806053 分钟前
Java 大视界——Java 大数据在智慧交通智能停车诱导系统中的数据融合与实时更新
java·大数据·开发语言
sufu106510 分钟前
SpringAI更新:废弃tools方法、正式支持DeepSeek!
人工智能·后端
chxii10 分钟前
6.2字节流
java·开发语言
不务专业的程序员--阿飞19 分钟前
【SQL 如何解锁递归】
java·数据库·sql
嘵奇26 分钟前
Spring Boot拦截器详解:原理、实现与应用场景
java·spring boot·后端
八股文领域大手子27 分钟前
Java死锁排查:线上救火实战指南
java·开发语言·面试
jackson凌33 分钟前
【Java学习笔记】finalize方法
java·笔记·学习
fanTuanye36 分钟前
redis 缓存穿透,缓存击穿,缓存雪崩
java·redis·缓存
神秘的t1 小时前
Spring Web MVC————入门(2)
java·spring·mvc
开开心心就好1 小时前
高效全能PDF工具,支持OCR识别
java·前端·python·pdf·ocr·maven·jetty