DevOps意味着开发人员现在负责基础设施和发布--但是这种变化背后的驱动因素是什么呢?
我将把我的卡片放在桌面上:我是一名开发人员,在"DevOps“和非文化中工作过。必须担心基础设施和发布以及QA和相关的仪式是对编写好代码的巨大干扰。
但这个行业正朝着这个方向发展,这是什么原因呢?“旧”角色专业化模式产生了哪些问题?
发布于 2016-06-07 11:27:50
主要原因是云。
过去,您的代码是在软盘上发送的,然后是CD,然后部署到服务器上,然后部署到两个服务器(为了恢复能力).所有这些部署都可以由人类手工完成,所以人类接受了训练。
今天,您的代码通常要用到几十个或数百个服务器上。配置、配置和部署到这些服务器上的人员实际上无法手动完成。您需要您的sys管理员知道足够的脚本来自动化该过程,因为您现在使用的是主厨或其亲属。但坦率地说,没有足够的sys管理员能够做到这一点。因此,发展中国家的人被拉进来收拾残局。
是的,在开发人员不断增长的需求中增加更多的技能,自然会降低他们在其他地方的能力。其思想是,允许开发人员洞察构建/发布过程,他们可以更好地预见问题,或者拥有改进问题的自主权。这个想法是,自从发行版超过了代码编写的损失之后,每件事情的质量都会提高。
我怀疑这种交易是否值得,就像人们认为的那样。
发布于 2016-06-07 11:25:09
仅仅编写高质量的代码是不够的。你要么是问题的一部分,要么是解决方案的一部分。
对于许多程序员来说,您正在编写由某个最终用户付费的软件。编写高质量的代码是一件好事,但它也是客户/经理们认为你应该一直做得很快的事情。这就像说木匠切板子是准确的,但你实际上是在建造别人想要花钱买的东西吗?
DevOps给了开发人员更多的控制权,希望能迫使他们的代码与最终结果保持一致。谁最适合自动化操作过程?最终用户满意度是衡量用户满意度的主要指标。你不仅要写质量代码,而且要满足客户的要求。抱歉,但没人会再用代码行了。他们不在乎你是否从零开始建立自己的ORM框架,就像一般的购房者不关心你是否砍倒了树,做了你自己的木板。是否有人想要重做所有配置文件,因为您的“升级”将它们重新设置为默认配置文件?
你想炫耀你的开发人员排骨吗?建立一些人们想要购买的东西,包括整个用户体验。很好,您正在编写质量代码,但是不幸的是,如果它没有发布到付费客户的满意程度,您可能得不到奖励。尽管责备QA,但你的公司仍然没有足够的钱支付你更多的钱。
发布于 2016-06-07 12:38:40
这是与敏捷和Scrum携手并进的东西。不再有明确界定的工作角色--每个人都是“开发人员”。
而且这不仅仅是行动。开发人员经常需要承担业务分析、测试、数据库管理和构建管理人员的角色--清单还在继续。
问题的核心是你所谓的“搅动”。随着项目中不同角色数量的增加,会议、误解和资源冲突也就越多。在用户面前快速获得软件是最终的游戏,任何可以想象到的东西都会在某种程度上阻碍用户的使用。
这并不完全是件坏事。您的普通开发人员扩展了他们的技能,尽管现在的困难越来越少了。它还避免了编码器和服务器管理员之间关于部署过程中出现的问题所在的争论。Devs通常想用尖端的技术推出解决方案,而服务器管理员通常不知道这在管理POV中意味着什么,直到他们收到安装集。
更聪明、更有远见的公司终于开始意识到,T形人是一件好事。然而,在认为自己是一件好事和期望在传统文化已经被采纳的地方奇迹般地发生之间有着不同之处。
https://softwareengineering.stackexchange.com/questions/321492
复制相似问题