10月28号,我们开了1.6项目的总结大会,包括Ting总在内,前端、后台、运维都来参加总结大会了。虽然目标基本达成,但同时也暴露出很多问题,我们希望各方能够坐下来总结一下自己或者各个相关团队的功过是非,以便能在未来做出更好的产品。1.6这个版本对于我们来说,是一个非常规的版本。在这个版本中,前端代码全部重构为MVP模式,后台也一样重构,除了资讯财务模块依然保留TCP以外,其他所有的网络接口,全部更改为http。名义上称之为重构,而实际上可以算是重做了。除了在技术上有非常大的更改外,这个版本的时间周期相对与要达成的目标来说确实太短了些,只有三个月。在三个月内,要完成前端包括Native和H5统一开户页,后台包括证劵交易系统的对接、交易行情服务的开发、全产品线统一用户中心的开发以及接入层的设计,对于任何一个团队来说,压力都是非常巨大。

  很多同事会有疑惑,为什么要这么赶呢?因为我们要做的不是传统的经纪业务,我们所面对的金融市场领域变化太快了,而能我们起飞的风口确又如此的稀少,所以只要感知出一个起飞点,我们都竭尽全力去跟上它。而经纪业务线就是我们的打头兵。很多同学可能觉得我们可以先慢慢做好,然后再上线。但是现在的环境下,不能这么做。因为对于一个市场行情来说,它来了,你在不在那比什么都重要。只要大体功能运行良好,有点缺陷,不够完美都可以接受。因为我们并不是就只发这一版,版本总是会迭代开发的,慢慢变好的。如果闷声开发出来个大家都认为好的,但是市场机会已经不在了,那我们可能连存在的意义都没有了,毕竟我们的竞争对手也并不是停滞不前的。

  在目标已确定,deadline已写死的情况下,连续三个月996模式,而通常都不止996……在这种人人高压的情况下,我们顶住了压力,虽然不是很完美的完成任务,但至少也算完成了。这期间有值得称赞的地方,也有很多值得改进的地方。所以,我想从“比较好的”和“不足的”两个大方面去总结一下这次项目的整体情况。

  首先,我想先来总结一下,我们这次值得称赞的地方。

  1、测试团队很给力。刚开始的时候,开发还是很排斥这种提完Bug穷追不舍的情况,但是越到后面越体现出测试不用心和负责任。因为后面问题越来越多,体测版本也是越来越多,开发同时又在关注着新功能的开发。所以,Bug的管理几乎全部交给测试。

  2、前端APP团队现在的代码结构已经比以前好很多了,不仅仅是代码逻辑上的清晰,包括整体架构也有比较好的分层解耦了,不会像以前一样牵一发的动全身的情况了,能更好的对不同业务需求进行支撑和拓展。

  3、 前期由于项目人员的变动,导致我们整个项目有一个月基本属于项目管理空白区,然后就造成了人人都是项目经理,都各自去推动相关模块的进度,已完成既定的目标,中途难免出现一些摩擦。但大家能抱着一颗把这件事做好的心态去处理某些资源的匮缺,这点是非常好的。

  4、虽然有一段时间项目管理有所欠缺,但是后期我们严格按照Jira流程进行开发和问题Tracing,同时还打通了代码仓库和Jira单的连击,实现了Jira单号和相应的代码修改都对接上了,并且形成了任何事情都要录入jira的好习惯,任何事情都有记录可追踪。这对于各个部门的工作都有着非常大的促进作用。

  但是这次也有比较多的不足点,非常值得大家深思的。

  1、我们团队的默契度非常的欠缺,这带来了很高的沟通成本。由于我们是香港、北京和深圳三地办公。经常会出现一些比如接口联调时出现问题,大家都非常急躁;有或者大家一有问题就直接找对应的开发人员,各个都说自己的优先级最高,开发自己又有自己的任务要做,不仅容易造成多方效率低下,而且也极易引发情绪上的冲突,从而带来更高的沟通成本。比如,有同事就不理解我们1.6跟1.5好像没什么差别啊,为什么你们还用三个月去做这件事情?这其实也是开发的痛点,怎么样像非开发人员解释自己的工作内容。这个版本对于用户来说,自然是没有多大改变,但是对于我们整个系统来说,那确是一个巨大的更新。这就像建一栋大楼一样,你希望没有地基直接往上建,直到它出问题的时候再推到重来,还是我们打好地基,然后可以扎实地去开发我们高楼大厦?整体来说,1.6其实是一个打地基的版本,就是为了我们以后能够更好地进行业务拓展。我们的产品不是就单单用户手里的APP,我们的后台、运维还是各种技术文档等所有这些背后的支撑都是我们的产品,没一个的更新,都是我们产品的更新。

  所以,有时候真的是隔行如隔山,如果大家对合作部门的工作没有一个大致了解,其实很容易在合作的过程中,引起一些不必要的矛盾和冲突。进行一定的部门间活动或者交叉培训还是挺有必要的,哪怕大家相互认识认识也会好些。同时也希望大家能够抱有一颗同理心,多换位思考思考,并且抱着一颗把事情做好的态度去看待整个问题。

  2、我们需求的变更时机不是很合理。这个版本的需求很多都没有形成文档沉淀下来,即便有也是如同战略方针一般,并不是很细致。导致最后在开发的过程中,经常是后台或者产品经理一句话,大家可能又要修改一下。如果在前期其实影响并不是那么大,但是这个版本的需求变更有很多经常是在开发后期更改,这个不仅对于开发来说是非常影响工作效率的,同时对于测试团队来说,也是非常不利的。不明确的需求和开发,测试完全无法进行质量的把关和问题的发现。另外在三地办公已经确定的工作场景下,我们也要形成一套我们自己的工作流程机制,来完善对工作的分配和部门之间的沟通。所以,严格按照Jira单来进行工作,尽量避免私下随意沟通进行代码的更改等而导致最后无迹可寻,这个理念非常需要大家认真地落实和执行。

  3、计划目标与实施目标不够一致。起初,我们定义的1.6是重构,完成技术架构的优化,产品形态上,做到用户无感知。但是在真正开发的过程中,我们其实做了很多新的需求,比如开户页面与其他业务线进行统一设计,用户中心状态因为新的开户需求而有所变更等等,而这些需求的变更又影响到三大TAB页的开发,再加上需求的不稳定,整体上来说就给我们的进度增加了很大的阻力。所以,也希望后期我们能不忘初心,已经确定的目标就不要轻易去变更,如果变更应该是各部门一起开会讨论怎么去施行,而不是像现在的样子,产品几乎要跟后台,前端分别同步需求。

  希望下一次我们的版本开发逐步规范化,流程化,更好地完成我们产品开发。

关于V1.6.0版本的项目总结的更多相关文章

  1. Volcano社区v1.6.0版本正式发布

    摘要:Volcano社区v1.6.0版本正式发布.此次版本增加了弹性作业管理.基于真实负载的动态调度. 基于真实负载的重调度.Volcano Job插件--MPI等多个新特性. 本文分享自华为云社区& ...

  2. Dapr v1.9.0 版本已发布

    Dapr是一套开源.可移植的事件驱动型运行时,允许开发人员轻松立足云端与边缘位置运行弹性.微服务.无状态以及有状态等应用程序类型.Dapr能够确保开发人员专注于编写业务逻辑,而不必分神于解决分布式系统 ...

  3. 二进制搭建Kubernetes集群(最新v1.16.0版本)

    目录 1.生产环境k8s平台架构 2.官方提供三种部署方式 3.服务器规划 4.系统初始化 5.Etcd集群部署 5.1.安装cfssl工具 5.2.生成etcd证书 5.2.1 创建用来生成 CA ...

  4. 记一次tomcat7.0版本启动项目失败问题

    测试项目在tomcat7中启动失败,报错如下: @794314bc3 Error during job execution (jobs.Bootstrap) Oops: VerifyError ~ p ...

  5. sa-token v1.9.0 版本已发布,带来激动人心新特性:同端互斥登录

    sa-token是什么? sa-token是一个JavaWeb轻量级权限认证框架, 官网首页:http://sa-token.dev33.cn/ 如果你经常使用腾讯QQ,就会发现它的登录有如下特点:它 ...

  6. 【开源】SpringBootNetty聊天室V1.2.0升级版本介绍

    前言 SpringBoot!微服务微架构的基础,Netty通信框架的元老级别框架,即之前的SpringBoot与Netty的实现聊天室的功能后已经过了不到一周的时间啦,今天我们更新了项目版本从V1.0 ...

  7. React多页面应用脚手架-v1.3.0

    react-multi-page-app是一个基于react和webpack的多页面应用架构,通过编译生成对应目录结构清晰的静态页面,实现多页面便捷开发维护.1.3.0 版本对项目整体做了一个全面的升 ...

  8. 智表ZCELL产品V1.4.0开发API接口文档 与 产品功能清单

    为了方便大家使用ZCELL,应网友要求,整理编写了相关文档,现与产品一起同步发布,供大家下载使用,使用过程中如有疑问,请与我QQ联系. 智表(ZCELL)V1.4.0版本  功能清单文档下载地址: 功 ...

  9. 阿里云 Serverless 应用引擎(SAE)发布 v1.2.0,支持一键启停、NAS 存储、小规格实例等实用特性

    近日,阿里云 Serverless 应用引擎(SAE)发布 v1.2.0版本,新版本实现了以下新功能/新特性: 一键启停开发测试环境:企业开发测试环境一般晚上不常用,长期保有应用实例,闲置浪费很高.使 ...

随机推荐

  1. 你想了解的轮询、长轮询和websocket都在这里了

    日常生活中,有很多需要数据的实时更新,比如群聊信息的实时更新,还有投票系统的实时刷新等 实现的方式有很多种,比如轮询.长轮询.websocket 轮询 轮询是通过设置页面的刷新频率(设置多长时间自动刷 ...

  2. 解决nginx+php二级页面显示空白的问题

    迁移官网商城的发现主页的二级界面显示空白页,此https商城网站 后修改nginx配置,显示正常 添加 location ~ [^/]\.php(/|$) { #fastcgi_pass remote ...

  3. The 18th Zhejiang University Programming Contest Sponsored by TuSimple -C Mergeable Stack

    题目链接 题意: 题意简单,就是一个简单的数据结构,对栈的模拟操作,可用链表实现,也可以用C++的模板类来实现,但是要注意不能用cin cout,卡时间!!! 代码: #include <std ...

  4. 一个纠结的Linux定时任务

    昨天写了一个Linux定时任务,搞了半天才是搞好,现在分享下我犯得错误 首先在Linux根目录下创建一个目录 mkdir cat_crazy 进去创建一个shell脚本test.sh,内容是: #!/ ...

  5. 【BFS】Tester Program

    [poj1024]Tester Program Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 2760   Accepted ...

  6. 【POJ】1088滑雪

    滑雪 Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 97335   Accepted: 36911 Description ...

  7. HDU 6041 I Curse Myself(二分+搜索)

    [题目链接] http://acm.hdu.edu.cn/showproblem.php?pid=6041 [题目大意] 给出一个仙人掌图,求第k小生成树 [题解] 首先找到仙人掌图上的环,现在的问题 ...

  8. BZOJ 3790 神奇项链(manacher+DP+树状数组)

    [题目链接] http://www.lydsy.com/JudgeOnline/problem.php?id=3790 [题目大意] 问最少用几个回文串可以构成给出串,重叠部分可以合并 [题解] 我们 ...

  9. 【计算几何】【凸包】【极角排序】【二分】Gym - 101128J - Saint John Festival

    平面上n个红点,m个黑点,问你多少个黑点至少在一个红三角形内. 对红点求凸包后,转化为询问有多少个黑点在凸包内. 点在凸多边形内部判定,选定一个凸包上的点作原点,对凸包三角剖分,将其他的点极角排序之后 ...

  10. poj 1654:Area 区域 ---- 叉积(求多边形面积)

    Area   Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 19398   Accepted: 5311 利用叉积求多边形面 ...