华为IoT首席架构师王启军:云计算时代全栈工程师的养成( 五 )

因为频繁的上线 , 再让测试人员把全部功能都覆盖测试 , 在时间上不可行 。 这就要求有流水线的自动化检查 , 自动化编译验证测试等等 。 所以要求提交的代码也有更高的质量 。 从制度流程角度讲 , 这跟原来方式完全不一样 。

其次 , 从文化上来讲 , 在这种频繁迭代快速上线的环境下 , 也要求公司内部更加透明 , 更加扁平化 , 组织结构不能过于复杂 。 还有就是要求开发人员对产品和技术有更全面的了解 , 用一种小团队合作的方式来解决问题 , 而不是传统方式靠组织的精细分工来开发产品 。

以代码的review为例 , 在新的文化背景下 , 开发人员会把请人review代码当成自己的责任 。 会变成一种自主的工作模式 。 而不是因为代码没有review就上线 , 因为违背制度而受到惩罚 。

从王启军的自身体验来看 , 华为云的开发模式更接近互联网公司的开发模式 , 而跟华为传统产品开发有较大差别 。 王启军说 , 做好云产品的开发 , 关键还是要把握好妥协的艺术 。

因为产品是快速迭代 , 频繁上线 。 所以不能等到做到满意才来发布 。 软件就是不断改进的过程 。 很难一下子做到特别满意的地步 , 基本上都是不满意的状态 。 假设所有的地方都满意了 , 说明系统已经过度设计了 , 完全都满意了说明系统成本非常高 。 比如说像可靠性、性能等各个方面都达到了高的要求 , 成本就非常高了 。

推荐阅读