一点总结

  • Post author:
  • Post category:其他



(1)产品定位

移动互联网时代,我专门建立了移动创新研发中心专门组织。

我和他们说:不要把大象放在冰箱里。不能利用上移动硬件特性的(如传感器、摄像头麦克风、GPS等),不要做。

到了云时代,我也专门说:做到处在线连接、持续运营、社会数据融合、AI算法驱动。不是这些特征,不要做。


(2)组织

我分了:

  • 架构团队:应用架构、技术架构

  • 平台研发团队

  • 创新研发中心

  • 新产品研发中心

  • 成熟产品研发中心

  • 大客户定制中心、特大客户一对一专门定制团队

  • 普通定制中心

  • 技术支持中心、主动运维中心

创新研发中心不做产品,只快而脏地验证客户普遍需求。一旦完成验证,做好代码和文档归档,供新产品研发中心做参考资料,新产品研发中心按照正规软件研发过程重新来过。


(3)岗位

架构团队的工作要嵌入到主干研发流程中。

应用架构团队,负责:系统和系统之间的接口分析、接口定义和设计、接口实现代码复审、接口变更、接口向下兼容。为了解决应用软件的连带异常问题、集成开发问题、升级问题。

技术架构团队,负责:

  • 层与层之间的解耦-集成。为了解决系统性能扩展、高可用保证、高安全保障。

  • 难题技术特种部队快速诊断、攻关打点。

  • 技术标准规范、编程语言和技术框架统一。


(4)产品

1、客户需求详细调研-系统应对研究

2、产品战略(策略)/产品行销:产品定位、市场定位、竞争定位。

3、产品规划-产品详细设计

很多企业没有前两个,或者这三个没有连贯整合。


(5)技术

1、如果做成公有云,我就可以很方便地随时埋点,进行用户行为跟踪,持续知道用户的真正使用,为产品持续改进提供数据说话。很多时候的研发效能低下,是产品一开始就想错了。

2、如果做成API网关/服务网关、微服务、消息队列的技术,那样就可以达到两个目的:

  • 2.1、客户定制开发难题解决:A-B客户之间的共同需求功能低成本移植、版本和版本之间的功能在客户项目上低成本移植

  • 2.2、异常隔离:A模块出了问题不影响其他模块,而且查找问题也好查找、追究责任也好追究。

  • 2.3、系统持续集成也好做了:不用像过去很多团队的进度必须同步那么复杂那么难了。各开发各的模块,各上线各的模块。当然,这必须建立在应用架构和技术架构基础之上。


(6)能力

1、能力培训:我过去写过《

工作中怎么学习?

》。

2、产品设计-架构设计-代码实现-测试协同:交底:我说你听-你说我听。

3、岗位:Leader专门做常用代码模板、做模块之间的接口设计与保证、做代码复审

4、岗位:高级程序员,做核心功能(复杂/要求高精确/要求高性能/要求高稳定/要求高并发锁/要求高事务保证/要求高安全)、做大家共用的功能(牵扯多)

5、岗位:新实施人员先去客服中心实习。实施人员转岗做测试,以便解决测试人员不熟悉客户/瞎测瞎找BUG这种常见问题。


(7)项目管理

我特别注重研发项目管理,反复确认项目目标、项目范围、任务分解、时间表、任务分配、项目风险识别。

所以我专门设立了研发项目经理序列,不让产品部门经理/研发部门经理来兼任产品研发项目的项目经理。

每个研发项目经理必须过PMP认证。如果你拿到PMP证书后,公司来报销你的费用。


(8)工具

常用的项目管理-计划管理-任务管理不能少。我一般用Project、Excel。

常用的CF、JIRA不能少。

常用的版本管理、代码规范自动检查工具、持续集成、自动化测试、持续发布、持续部署、DevOps、用户体验管理工具不能少。

这是基础。

640b1232a4ce85a637f8196cb2f8f835.jpeg



版权声明:本文为david_lv原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。