首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >​CODING 2.0:为什么我们需要 DevOps

​CODING 2.0:为什么我们需要 DevOps

原创
作者头像
腾讯云 CODING
修改于 2019-06-28 01:47:46
修改于 2019-06-28 01:47:46
1.6K0
举报
文章被收录于专栏:CODING DevOpsCODING DevOps
图片
图片

CODING 在前两天的 Kubecon 2019 大会上发布了 CODING 2.0。这背后是 CODING 对研发管理和研发团队组建的思考。从 CODING 成立以来,我们一直在探索“让开发更简单”的方式。把“让开发更简单”这个大愿景进行拆分,具体到可量化的产品目标上去,实际上是希望通过工具的形式,可以减轻开发过程中的重复劳动,提高软件交付的速度与质量。

云端开发的初心

最开始做 CODING 的时候,脑海中的蓝图是开发者在这里讨论需求、布置任务、写代码,改代码,演示代码,完成相关任务,整套的开发操作都在这里。

所以当时的产品结构是:轻量级的任务管理 - 讨论 - 代码版本管理 - 演示平台

在这套产品体系下,产品经理会把任务指派给设计师,设计师完成设计后,产品经理验收后再把任务指派给研发人员,研发人员推送代码后,可以在演示平台做演示给产品经理验收。这是一套非常适合小团队的工作模型,流程简单,反应快速,CODING 自己团队也在使用,并且支撑了 CODING 产品前期的快速起步,快速上线,快速响应反馈的开发节奏。

企业在成长过程中碰到的实际问题

很快,随着 CODING 业务的发展,CODING 的产品线越来越多,团队也越来越大,当团队到达 100 人的时候(其中 60% 都是研发),我们发现团队开始"管不动"了,最终的上线质量非常依赖部门 Leader 的管理能力和开发者的自我修养。为了保证产品达到预期,我们制定了大量流程和规范,但这让我们的进度越变越慢了。我们一度非常苦恼,创业公司的优势在于极高的效率与极快的产品迭代,但如果我们在发展的过程中丢失了这样的优势,将会很轻易的被别人超过。

所幸我们并不是第一个碰到这个问题的人。《人月神话》中有个很著名的观点:

Adding manpower to a late software project makes it later.

-- Fred Brooks, (1975)

如果希望用增加人力的方式解决软件的进度问题,只会让进度变得更慢。”因为:

沟通成本= n(n-1)/2 n=团队人数

举例而言 10 个人的团队将有 45 个沟通管道,当人数到达 50 人时,这个数字将上升为 1225 个。随着人数的增多,团队内的沟通成本将指数级上升。了解到问题出现的原因,也就知道了解决方案:“我们需要更多更小的团队”——通过将团队分成若干个内部闭环的小团队来降低沟通成本。于是我们有了一个稍微敏捷一点的组织架构:

图片
图片

这个工作方式敏捷的很不彻底,问题在于运维。考虑到线上稳定性及系统的耦合程度,无法将运维拆到各个团队中去,各个产品线虽然有独立的产品经理、设计师和开发者,但需要运维协助上线测试环境,再由测试进行 testing 和 staging 两个环境进行测试验收。大量的时间被无用的等待浪费掉了。

图片
图片

同时,由于工作目的的不同,开发与运维的矛盾也日益加深,都觉得对方基础的工作没有完成。

团队陷入了困境。

我们需要 DevOps

困境中酝酿着机会,我们在与用户的交流中发现这也是大多数团队的共同苦恼:团队如何组织才能最大化的进行软件产出?各个角色之间天然的目标不同,使得”又快又好的上线“变得困难重重。

DevOps 的理念就是希望能打破这种屏障,让研发(Development)和运维(Operations)一体化,让团队从业务需求出发,向着同一个目标前进。DevOps 不只是通过工具辅助开发完成运维的部分工作,更是一种软件研发管理的思想、方法论,所追求的是一种没有隔阂的理想的研发协作状态。

图片
图片

实践 DevOps 的首要任务是需要对 DevOps 的目标和精神达成共识,并以此指导工作。据此,我们制定了从新的产品线开始逐步拆分微服务、优化白名单验收机制等改进措施,并制定了明确的时间表。长期来看,希望在更好的保证软件质量的同时,开发更少的依赖运维工作。

图片
图片

之后,团队开始尝试放大工具带来的效能提升。虽然之前也使用了不少工具,比如用 Jenkins 在本地构建持续集成,自建 Docker Registry 做构建物管理,使用 Excel 进行测试管理等。但相对零散,培训成本高,同时需要有人力进行选型搭建和维护,哪怕只放半个开发半个运维,一年也是小几十万的投入。

我们迫切的需要一套工具,上手即用,辅助我们提升研发团队的产出效能,而不是花费人力时间在进行基础设施的搭建上,但市面上完全没有这样的产品,我们的用户也存在类似的苦恼,只能用好几种开源产品进行搭建。

那 CODING 为什么不做一套这样的系统,让有同样困难的 DevOps 转型企业可以快速完成工具建设?“让开发更简单”作为 CODING 一直以来的使命和愿景,督促 CODING 团队为开发者提供更优质的工具与服务。加之 CODING 的核心业务——代码托管是 DevOps 工具的基础与支点,故从 2018 年年初起,CODING 就将产品目标调整至为企业提供一整套的研发管理工具。在一年多的努力下,目前 CODING 已经全面开放持续集成功能及制品库的 SaaS 版本的服务,支持所有主流语言以及多种目标环境。

图片
图片

DevOps 开发工具链:代码即应用

我们认为,在不远的将来,随着工具的成熟,我们将进入“代码即应用”(Code as a Product)的时代,开发者无需进行繁杂的其他工作,仅需完成代码编写,应用就自动运行,企业因此降低了运维成本,提升了软件研发部门的效率。

"代码即应用”对工具的要求分三个阶段:

  1. 持续集成阶段:通过持续集成工具,运行设置好的执行命令,避免重复劳动。
  2. 自动化部署阶段:构建的创建过程本身变得简单,无需学习额外的运维开发知识即可创建应用的发布方式。
  3. Serverless 阶段:真正做到发布无感知,代码写下即发布。

CODING 2.0 上线了持续集成及制品库的功能,标志着 CODING 正式进入持续集成阶段。用户仅需推送代码或合并请求,即可出发持续集成进行构建、单元测试、安全扫描等工作,并生成制品存储在制品库。提升软件交付的质量与速度,同时减少因为构建过程中引入“人”而带来的不确定性。

图片
图片

除工具外,CODING 还为企业提供研发流程实施的指导培训、敏捷训练等额外服务。目前已有几十家企业将 CODING 的 DevOps 工具应用到内部生产中,大大提升了团队 DevOps 转型的效率。

还有点想说的

中国软件行业发展时间短,发展速度快,人才储备时间短,地位也比较尴尬,哪怕是软件服务起家的互联网公司,随着公司的壮大,业务部门的地位也逐渐高于软件研发部门。除了在少量领域,中国企业在这一过程中,研发部门的内驱力往往被消磨殆尽。加之软件行业人力成本不断增加,作为支持和成本部门,管理者也容易将软件研发部门视为成本部门,思路往往是“能否降低成本”。

但如今,瞬息万变的市场环境对软件研发部门提出了很高的挑战,这是困难但也是机会。一支高效的研发团队,不光可以减少系统间的摩擦和浪费,让研发部门快速响应市场需求,还可以持续交付高标准的产品,让产品验证进入正循环,引领整个团队的价值实现。

但组建一支这样的团队,需要的远不止是工具,更重要的是团队领导者的经验,知识,和变化的决心。许多有先锋精神的团队走在改革的前面,CODING 在协助他们转型的过程中,也看到了他们因为改革所碰到的困难、权衡和进步之后团队爆发出的生产力。

我们希望可以看到更多的中国软件企业了解 DevOps 的精神,并应用到自己的团队管理中去,向中国和世界交付一流的软件产品。这个过程很难,但真的很值得。

图片
图片

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
CODING 如何使用 CODING 研发管理系统来开发 CODING 2.0
之前我们分享过《如何使用 CODING 研发管理系统开发 CODING》的文章,时过境迁,现在 CODING 研发管理系统已经上线了如持续集成、缺陷管理、测试管理等 DevOps 中的重要功能,并增加了对 SVN 的支持。借此机会我们以自身的研发流程为例,来展示一下 How CODING uses CODING to build CODING 2.0。
腾讯云 CODING
2019/09/16
1.7K0
CODING 如何使用 CODING 研发管理系统来开发 CODING 2.0
CODING X C-Life:云端 DevOps 加速企业数智化
2020 给全民普及了什么是线上化、数字化、智能化,也加速了企业的数字化转型。“全数字化”时代,已经不仅仅是简单粗放的数据采集、映射、抽象。数字化开始迈入高级阶段——数据驱动的智能化:基于云管端 + AIoT 等为代表的新技术群落开始大量涌现,数智化企业思考的核心问题转向了如何以客户运营为核心,通过智能化手段提高客户全生命周期的体验。
腾讯云 CODING
2021/02/04
2.1K0
CODING X C-Life:云端 DevOps 加速企业数智化
腾讯云推出一站式 DevOps 解决方案 —— CODING DevOps
---- 在产业互联网的大背景下,如何将人工智能、大数据等前沿技术与实体产业相结合,推动传统企业转型升级,已经成为每一个企业不得不思考的问题。落后的软件研发能力已经拖慢了中国大量企业的数字化转型进程。 为了满足企业数字化转型需求,腾讯云正式推出了一站式 DevOps 解决方案 —— CODING DevOps,帮助企业解决代码资源混乱、发布流程低效、管理模式滞后、高昂的 IT 建设维护成本等造成转型效率低下的问题。CODING DevOps 打通企业研发任督二脉,让云上开发更简单,让数字化转型更加
腾讯云serverless团队
2019/09/04
4K0
腾讯云推出一站式 DevOps 解决方案 —— CODING DevOps
如何使用 CODING 实践 DevOps 全流程
你好,欢迎使用 CODING!这份最佳实践将帮助你通过 CODING 来更好地实践 DevOps 流程。
腾讯云 CODING
2019/09/16
1.9K0
​CODING 2.0 企业级持续交付解决方案
今日,CODING 受合作伙伴腾讯云邀请参加 KubeCon、CloudNativeCon 和 Open Source Summit 在上海举办的 KubeCon 2019 技术论坛,并于论坛上正式发布了专注于大型项目 DevOps 实践的产品:CODING 2.0。
腾讯云 CODING
2019/06/25
1.1K0
​CODING 2.0 企业级持续交付解决方案
当TKE遇上Coding, 业务如何实现快速迭
在互联网行业敏捷开发,DevOps 理念被越来越多的企业采纳, 敏捷开发和DevOps 本质上都是一种协作文化, 都是着眼于打破壁垒, 增加成员共同责任感。DevOps和Agile减少了交接,提高了向客户交付的速度。
朱瑞卿
2020/08/06
2.2K0
当TKE遇上Coding, 业务如何实现快速迭
​拥抱自动化,CODING 2.0 持续集成全新上线
注意这里的集成是指将源码放在一起,并验证源码可以作为一个一致、运行可靠的软件的过程,而不只是完成编译。
腾讯云 CODING
2019/07/09
2.2K0
​拥抱自动化,CODING 2.0 持续集成全新上线
CODING 与悬镜安全达成战略合作,引领 DevOps 向 DevSecOps 创新模式升级
近日,一站式 DevOps 软件研发管理协作平台 CODING 与 DevSecOps 敏捷安全领导者悬镜安全达成战略合作,签约仪式在深圳腾讯云 CODING 总部举行,腾讯云 CODING CEO 张海龙和悬镜安全 CEO 子芽代表双方企业签署了战略合作协议。依托于在敏捷安全方向丰富的落地经验,并基于 CODING 完备的 DevOps 体系,将悬镜安全敏捷安全工具链全面融入,打造整体的 DevSecOps 创新模式。CODING 与悬镜安全旗下灵脉 IAST、源鉴 OSS、云鲨 RASP、灵脉 PTE、夫子 ATM 全面集成,为 DevOps 转型的用户提供丰富的敏捷安全储备,为 DevOps 各个阶段的安全保驾护航。
腾讯云 CODING
2021/12/10
6810
CODING 与悬镜安全达成战略合作,引领 DevOps 向 DevSecOps 创新模式升级
敏捷与 DevOps 混合动力,助力明略开拓企业智能新世界
明略科技是中国领先的数据中台和企业智能决策平台提供商,致力于通过大数据分析挖掘和认知智能技术,推动知识和管理复杂度高的大中型企业进行数字化转型。
腾讯云 CODING
2020/11/26
4810
DevOps持续开发与集成:腾讯云一站式解决方案深度实践
在数字化转型的浪潮中,软件研发管理平台的建设成为企业提升研发效率、实现敏捷开发的关键。DevOps作为一种集文化理念、实践和工具于一体的方法论,通过打破部门壁垒、自动化流程和持续反馈,极大地提升了软件交付的速度和质量。DevOps代表了一种文化、一套实践和一系列工具的融合,其核心目标是打破传统开发和运维之间的壁垒,实现持续集成、持续交付和持续部署。
徐关山
2025/08/31
4340
​打通 DevOps 任督二脉 ,CODING 2.0 制品库全新上线
CODING 在近期的 KubeCon 2019 大会上发布了 CODING 2.0,同时发布了最新功能——制品库。CODING 不断完善 DevOps 工具链,旨在持续提升研发组织软件交付的速度与质量。
腾讯云 CODING
2019/07/04
2.2K0
​打通 DevOps 任督二脉 ,CODING 2.0 制品库全新上线
如何让 300 万程序员爱上 CODING?
刘毅,腾讯云 CODING CEO、腾讯云开发者产品总经理。主要负责腾讯云开发者生态以及开发者工具和平台产品经营,带领团队把腾讯内部项目协同和研发效能提升过程中,大规模应用到的工具和平台以及相关的优秀实践输出和赋能给各行各业合作伙伴,帮助完成数字化转型和升级。2011 年加入腾讯,打造过社交产品 QQ 空间,也打造过办公协作产品腾讯文档。
腾讯云 CODING
2023/05/20
5360
如何让 300 万程序员爱上 CODING?
​如何使用 CODING 进行瀑布流式研发
你好,欢迎使用CODING!这份最佳实践将帮助你通过 CODING 更好地实践瀑布流式开发流程。
腾讯云 CODING
2019/06/14
9630
​如何使用 CODING 进行瀑布流式研发
当DevOps邂逅云原生
乌云笼罩下还敢谈创业?面对生存,小型创新企业如何把握领跑的机会 同样面临转型,为什么别人是华丽转身响彻寰宇,而你却东张西望波澜不起。悄悄告诉你,越来越多的企业的注意力转移到了客户和业务之间的交付价值,“精益求精,降本增效”真的像躺着赚钱一样不切实际嘛?不,不是你太接地气,是你的眼神疏漏犀利。突如其来的云原生带你细化云时代下企业转型的重要支撑点,窥探开发团队低效的根本原因,和DevOps手牵手,助你一直走。
可可爱爱没有脑袋
2019/12/19
1.7K0
当DevOps邂逅云原生
腾讯云 CIF 工程效能峰会顺利开幕,CODING 发布系列新产品
2021 年 10 月 19 日,由腾讯云 CODING 主办的腾讯云 CIF 工程效能峰会在线上隆重开幕。本次峰会通过六大议题,带来了前沿的技术剖析与论点分享。30 多位业内大咖,与在线的众多高级技术管理者、一线开发者和技术研究者一起,深入探讨了软件研发工程领域的行业变革和技术创新,力求在帮助企业更系统地审视团队研发流程、更快速且低成本地找到构建和强化云原生能力的路径、实现真正上云的同时,携手共建起一个共同发展、协作共赢的云上生态圈。
腾讯云 CODING
2021/10/19
1K0
腾讯云 CIF 工程效能峰会顺利开幕,CODING 发布系列新产品
​打造数字化软件工厂 —— 一站式 DevOps 平台全景解读
欢迎各位朋友,来到腾讯云 CIF 工程效能峰会的分论坛,我是 CODING 的产品经理路宇,很高兴能以这种方式与大家见面。在接下来的主题环节中,会由我先为大家带来 CODING DevOps 研发平台的产品理念和全景解读,我们还邀请了几位今年下半年的新产品负责人给大家带来关于项目协同、WePack、以及全新产品持续部署 Oribt 和研发流程管理 Compass 的分享(讲稿已在陆续发出)。
腾讯云 CODING
2021/11/22
1.4K0
​打造数字化软件工厂 —— 一站式 DevOps 平台全景解读
打造数字化软件工厂 —— 一站式 DevOps 平台全景解读
欢迎各位朋友,来到腾讯云 CIF 工程效能峰会的分论坛,我是 CODING 的产品经理路宇,很高兴能以这种方式与大家见面。在接下来的主题环节中,会由我先为大家带来 CODING DevOps 研发平台的产品理念和全景解读,我们还邀请了几位今年下半年的新产品负责人给大家带来关于项目协同、WePack、以及全新产品持续部署 Oribt 和研发流程管理 Compass 的分享(讲稿已在陆续发出)。
腾讯云 CODING
2021/11/25
1.2K0
打造数字化软件工厂 —— 一站式 DevOps 平台全景解读
CODING 成功入选!信通院 2022 软件工程质效领航者优秀案例
2022 年 6 月 16 日,由中国信息通信研究院(以下简称信通院)主办的首届“精益软件工程大会”成功举办,腾讯云 CODING 应邀出席本次大会。中国信通院联合【云上软件工程社区】开展了首届“软件质效领航者”优秀案例评选活动,并在本届“精益软件工程大会”上公布了优秀案例评选结果。凭借全面完善的 CODING DevOps 一站式研发管理平台方案,腾讯云 CODING 在众多参选企业中脱颖而出,成功入选软件质效技术创新优秀案例。
腾讯云 CODING
2022/09/04
1.1K0
CODING 成功入选!信通院 2022 软件工程质效领航者优秀案例
双模齐下,提质增效:CODING 携手知微共创 BizDevOps 体系新篇章
为了提升工作和管理效率,工具建设是许多企业不得不面对的现实,然而在工具建设落地过程中,往往存在一系列的问题。如不同组织、部门之间互不相通,各自为政,工具流程与实际工作所需不符,导致工具建设的结果是人去适应工具而不是工具来辅助人。
腾讯云 CODING
2023/05/20
4210
双模齐下,提质增效:CODING 携手知微共创 BizDevOps 体系新篇章
CODING DevOps 高可用实践,保障服务稳定的“定海神针”
对于软件研发团队而言,服务的稳定性是非常重要,它与生产经营、用户留存都密切相关。而 CODING 作为面向软件研发团队的研发协作管理平台,与客户的业务生产更是密不可分。如何为客户提供高可用、不间断的服务体验,如何多层面、多渠道来保障 CODING 本身的服务稳定性,成为了 CODING 发展道路上不懈的追求。
腾讯云 CODING
2021/03/16
5350
CODING DevOps 高可用实践,保障服务稳定的“定海神针”
推荐阅读
相关推荐
CODING 如何使用 CODING 研发管理系统来开发 CODING 2.0
更多 >
领券
社区新版编辑器体验调研
诚挚邀请您参与本次调研,分享您的真实使用感受与建议。您的反馈至关重要,感谢您的支持与参与!
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
首页
学习
活动
专区
圈层
工具
MCP广场
首页
学习
活动
专区
圈层
工具
MCP广场