首先驳斥几个常见的观点:
1.运维理所当然不应该懂开发
2.运维不如开发,能开发就不应该选择运维
3.运维的主要工作职责是背锅+熬夜+救火受气
我是多年开发转的运维,对于怎么干好运维这个职业深有体会。很多运维同事看问题总喜欢钻牛角尖,觉得开发不给力,写的垃圾让自己又累又背锅,觉得领导偏心开发,对运维不屑一顾,对着镜子顾影自怜,渐渐的不是变成了一个职场怨妇,就是变成一个毫无生气的老油条。
运维要干好,技术方面,除了运维的基本功以外,在开发能力上一定是要对标开发工程师的能力,不要认为自己是运维,不懂得开发是理所应当的,这属于是自欺欺人,要将选择权掌握在自己手里,你是选择做运维还是被迫做运维,这个很重要,如果是被迫的情况,那一定是做不好的,潜意识里就想逃离,无法持续深入。
技术基本功扎实以后,是否就可以胜任运维工作了呢,不见得行。运维工作真正的挑战才刚刚出现,运维的核心价值是稳定和效率。你要设计和实现出一套运营框架(不是指软件框架,是一整套基础设施+标准+流程+管理方式的集合),将所有运营相关事务都有条不紊的管理起来,在这一套框架体系下,业务可以又稳又快的迭代发展,理想情况下做到
1.隐患在设计之初就被发现,
2.设计之初如果没有发现,那么在测试时就应该被发现
3.测试时如果没有发现,那么在灰度时要可以第一时间发现异常,并回退
4.若灰度时没有发现,那么也要在全面上线发现异常后,第一时间修复
我们现在的运维为什么这么苦逼,因为大多数都在4上不停地打转,被动响应到永久,在整个研发流程里,可以插的桩还有很多,都是可以防患于未然的。1,2,3这种要么就是没有能力做,要么就是意识不到。在老板看来,每次都是发生故障,对业务造成损失了,运维才冒出来,早干什么去了。老板要的是全速迭代,且0故障,而运维就是为这个核心目标保驾护航的人。
弄不清核心价值,就无法为团队提供核心价值,也就无法让老板认同你的价值,自然也就没有回报。运维这条路是不容易的,一定要和业务紧密结合,运维是不写业务逻辑的软件工程师,而不是不写代码库房大爷,这里推荐一下《凤凰项目》,对于运维之路迷茫的可以先看看,会有启发。