行业经验架构软件开发

对运维开发工作的一些思考

2018-04-01  本文已影响7991人  高家升_Gavin

运维开发这个岗位与普通的业务开发不同,与日常的运维工作也不同。要求兼顾开发与运维两种能力。既要掌握不弱于业务开发的开发技术;又要负责SRE同学日常的运维能力;上线之前,还要像QA同学一样,对自己的服务进行测试和分级变更。

多种能力的交叉,造就不一样的视角:这群人给自己起了一个很简约的名字:DevOps。

DevOps

按百度百科解释:DevOps是开发、技术运营和质量保障三者的交集。在我看来,DevOps其实只是一种方法论,从这种综合的视角出发,包含一些基本原则和实践方法,仅此而已。
DevOps从架构、开发、测试、发布、运维、变更整个流程来考量,从这种综合的视角出发,能将部门之间的沟通隔阂消灭于无形。会给我们公司和项目注入新的活力。

DevOps这个概念,本文暂不做讨论,本文内容只针对运维领域【自动化平台开发】的工作,进行探讨。

前言

运维开发的工作,所需能力的复杂,工作性质的交叉,自然会导致很多同学在其中会有些困扰。

很多刚毕业的小同学,接到运维开发的offer的时候,很可能是一头雾水:“运维?开发?到底是运维还是开发?”
有很多从业多年的同学,拼命的追求技术与对底层的探索,却忽略了产品层面的思考。
也有很多整天忙忙碌碌的同学,在业务方的各种零碎的需求中,修修改改,消耗了大多数的时间,最终平台却变得千疮百孔。

本文,将我关于这些问题的思考分享给大家。

什么样的平台,是好的运维平台?

既然我们是在做平台,那我们要了解的第一点,就是好的运维平台,是什么样子的。如果让我们来从头设计一个平台,我们应该如何去考量?

如何运维自己开发的平台?

运维开发在大多数时候,要负责运维自己开发出来的系统,俗称吃自己的狗粮。或者很多人跳槽之后,第一件事情,也是从运维别人的系统开始的。那我们如何运维好一个平台呢?
运维与开发的工作,思路其实不尽相同。虽然都是基于稳定性来考量,但可能要想的更多、更广,任何有可能影响到我们业务的稳定性的因素,都要考虑在内。
用我目前总监的一句话来讲,就是:我们运维同学与开发同学,最大的不同点,就是稳定性的意识

除了开发与运维,我们还要做什么?

运维开发的定位,注定要比业务开发承担更多的责任。因为这群人除了是自己的RD,还要自己做自己的PM、OP、QA。
因此,我们要考量的,还有产品和需求层面的东西。

除了做这些事情,我们还要想什么?

后记

时光荏苒,倏忽之间,已入行五年。从一个小小的实习生,成长到现在勉强可以独当一面。
五年来,一直在自动化运维平台开发领域耕耘。从刚开始重构服务树、权限系统模型、堡垒机登录;到后来的流量调度、监控系统报警与存储的深度建设。有很多个人的感悟与成长。
梳理了一下,分享给大家。
最后附上笔者思考本文时的脑图。

运维平台开发的思考 via 高家升
上一篇 下一篇

猜你喜欢

热点阅读