逆向微创新在小创团队中的意义

创业团队初期,规则小,对开发人员的能力需求其实很苛刻。然而,能够建立团队的人员无非来自两个方面,要么是新手或其它公司能力稍欠缺的,要么是大公司挖来的(还有一定低几率的野生大神)。

而无论是哪种人员构成,按他们的经验,在面对早期项目开发时,为了快速验证主流程,架构设计特别是组件的技术选型无疑都是采纳熟悉的、主流的、通用的框架。随着功能需求的丰富,就会发现这种通用越来越不能适应业务的变化了,项目的架构反而受到厚重组件的制约?:

1.组件的通用特性几乎用不到,试想对于早期产品来说,比如使用ORM是为了有事没事换数据库好玩吗?

2.组件的可替代性低,基本上一旦使用,调用代码的风格会和自有代码紧密结合。再想更换成本相当高。

3.组件的bug影响了项目的质量,?如果是开源的组件或许还能通过自身努力修复,当然有多少人使用第三方开源组件还乐意去研究源码还是一说,如果是?闭源乃至商业组件,那真的是尴尬,项目bug的修复还得等待一个不可知的因素。

因此,对于小型创业团队,真正要想达到技术稳健,灵活支持项目变化的程度,就必须勇于从开发团队的内部进行变革。其实不是非得采取什么惊天动地的手段,最容易想到也最可行的方式就是对严重依赖的第三方的组件逆向微创新(开源组件可二次开发,闭源则完全自行开发)逐步替换掉不可控的环节,为项目组件压力减负。这里有两个关键点:逆向和微创新。

逆向:体现在对组件设计做减法,在了解组件对于项目提供的作用后,去除掉不需要的部分 ,降低通用性以换取组件运行效率的提升和复杂度的降低。

微创新:体现在对组件中有利于业务的特性要强化和放大,适当地牺牲设计规范的要求,能提供控制的果断要暴露充分,能减少配置的地方多提供配套和便捷的接口。

实际上,我们团队在公司创业初期的研发工作中,根据这个思路在自主研发组件上贡献了数个内部共享代码库,从产品上积累了一些技术收益。我想,如果逆向微创新的意识提炼到方法论的高度,将成为创业团队特别是工程技术团队走向成熟的法定之一。

时间: 2024-10-22 04:46:01

逆向微创新在小创团队中的意义的相关文章

研发团队中引入变化的思路和模式

过程改进是研发管理的本质性工作,如果过程要改进通常意味着我们要引入变化,尤其对当前研发管理工作和流程尚不规范和完善的团队而言,引入变化是必须走的一步.但个人在实践过程中体会到引入变化有时候是一项非常有挑战的事情,如果把握不好可能反而会起到反作用.本文从研发团队如何有效的引入变化的角度出发,对思路和模式进行探讨. 关于团队引入变化,业界也有一些主流方法论,其中受Mary Lynn Manns和Linda Rising两位博士的著作<Fearless Change: Patterns for Int

Git 在小团队中的管理流程(转)

目标读者:了解 Git 的基本概念,能够使用 Git 进行基本的本地和远程操作. 有关 Git 的基础知识可以参见 知乎回答-怎样使用 GitHub?,天猪(刘勇)给出了一些很好的学习资料. 本文介绍了小团队中 Git 管理的基本使用流程.小团队的代码管理可以采用这样一种方式:项目存在一个中心远程仓库,作为团队成员进行代码交流的主要场所.同时可以存在一些成员远程仓库,用于局限在团队中部分成员间的代码交流.并将成员分成以下几类不同的角色:负责人.普通组员.预发布责任人 和 版本修复责任人.下面的章

敏捷团队中测试人员的角色

Karen Greaves和Sam Laing将会在Agile Testing Days 2015上发表主旨演讲,演讲题目为"测试人员正在消亡",Agile Testing Days 2015将于11月9日至12日德国Potsdam举行.小编将会覆盖本次会议报道. 小编对二人进行了采访,关于敏捷是如何影响测试人员角色的,为了缩短测试交付周期,测试人员可以采取哪些措施,敏捷团队中测试人员与其他团队成员之间的协作,敏捷团队中测试人员可以贡献的价值. 小编:我的经验是,敏捷更广泛的普及率正在

团队中的代码审查

代码审查在软件项目管理中是经常组织的活动,通过代码审查的工作也确实给我们的团队带来很多的益处,简单谈谈代码审查的感受,你们的团队是否也在进行代码审查的相关工作呢? 1.为什么要组织代码审查 组织代码审查其主要目的是保障我们的代码质量和软件产品质量,其次是团队的学习提高,共同的成长.可以是两个方面的驱动,外在现实中的工作痛点和团队内在战斗力提高的驱动. (1).实际工作中的痛点:<1>.团队开发的软件质量越来越差,Bug居高不下,问题层出不穷:<2>.团队的代码实现对应的业务功能,但

Git 在团队中的最佳实践--如何正确使用Git Flow

我们已经从SVN 切换到Git很多年了,现在几乎所有的项目都在使用Github管理, 本篇文章讲一下为什么使用Git, 以及如何在团队中正确使用. Git的优点 Git的优点很多,但是这里只列出我认为非常突出的几点. 由于是分布式,所有本地库包含了远程库的所有内容. 优秀的分支模型,打分支以及合并分支,机器方便. 快速,在这个时间就是金钱的时代,Git由于代码都在本地,打分支和合并分支机器快速,使用个SVN的能深刻体会到这种优势. 感兴趣的,可以去看一下Git本身的设计,内在的架构体现了很多的优

新宝主管分享团队管理的要素和管理方法

人在一起叫聚会,心在一起叫团队"!对于这句话相信大家都印象深刻.说实话,楚柳香小编从离开学校进入职场,也有20年知名企业的团队管理经历.但感觉作为企业管理者来说,要真正使团队"聚拢人心",也是非常不容易的-- 因此,楚柳香小编今天特与各位朋友分享团队管理的"五大核心要素",非常重要!希望能够给你的工作带来帮助.仅供参考!下面从"五大核心要素"来论述管理团队的方法("TOPIC模型"). 一.信任:信任是一个团队的基础

9-简单实例(二)小程序开发中应注意的几个问题

前面,我们比较完整地讲了一个开放"知乎新闻"的实例.为什么说比较完整呢?因为只是那么一篇文章,要完整地讲完,谈何容易.反正有渔老师是没这个能力.下面接着来完善上篇文章,希望读者看完后,能更加深刻地认识微信小程序开发. 1.新添加的目录,有没有添加到app.json的pages里? "pages":[ "pages/index/index", "pages/detail/detail" ], 每添加一个页面,就需要把页面的路径写

ReThought (二): 如何照顾团队中的新人

当我们在说照顾的时候,我们实际上是在给新人减压.当我们在说容忍犯错的时候,我们实际上说你可以犯一两个错误.减压更像是在塑造一种更好的学习体验,或者说更愉快地学习方式. 学习与构建系统 学校的时候,学习倾向于理论性的学习. 工作的时候,学习倾向于应用性的学习. 两种不同方式有着不同的区别,即一个广度,一个深度. 在构建系统的时候,通常我们需要一个基本能工作的系统,其次在系统不断开发的过程中.我们对于深度了解的需求已经变得比广度更为重要. 故而,在一个以产品为主的开发团队中,在早期他们更需要那些有广

红色小恐龙团队--冲刺DAY4

目录 红色小恐龙团队--冲刺DAY4 1. 今日任务 3.今日各组员遇到的问题 4.项目进展 5.明日工作安排 7.小组照片 红色小恐龙团队--冲刺DAY4 1. 今日任务 盛国榕:制作并优化订单的界面. 刘颖洁:在界面上添加"点赞功能"的图标,并实现其动画. 赵沛凝:继续调节相机功能,研究其照片存取,更改的功能 胡泊:继续解决程序卡退的问题 邹家伟:编写冲刺博客. ## 2.今日燃尽图 3.今日各组员遇到的问题 20182333盛国榕:在页面布局时,多层页面跳转时会出现卡退等情况.