以BAT的视角看运维有前途么?(一)

运维有前(钱)途么?

这是个理论且枯燥的话题,但很多人又不得不面对。
今天我以自己在小公司、百度、阿里的工作经历,主要以bat的视角,来说下运维技术在未来互联网的发展前景。
通过这篇文章,你会了解到小公司和大公司的运维状况对比,并能了解到各自的工作发展情况,其中会有一些例子来帮助理解。

因为内容比较多,所以会分为几篇来讲,目录如下:
1、为何大多数人觉得运维没有前途?
2、bat等大公司的运维在做什么,以及这类公司对运维的要求
3、运维的进阶发展路线及注意点,呈现能力

首先说下结论:我认为运维是非常有前(钱)途的,也是技术性越来越强的职业。

从行业趋势看。现在众多互联网公司越来越重视技术,运维由于是线上的最后一道保障,也是得到越来越多的重视。最近一段时间频繁出现的携程、支付宝、网易等服务不可用行为,损失巨大,均不同程度的和运维保障能力有直接关系,换句话说,如果运维能力足够强,是可以保证任何情况下不出现问题的。因此运维能力我认为会越来越重要。
再从薪资来看。身边bat的运维同学3-5年左右跳槽的,基本没有月薪少于20k的,多一点到40k左右,一般也都是技术负责人或者直接带团队,完全不比同等级的研发人员差。

 

第一篇,为何大家普遍感觉运维没有前途?
我自己在大公司和小公司都呆过,我认为主要原因是初级运维太多,而他们做的事很多根本不能称之为运维,总结如下几点:

  1. 运维自身缺少对目标充分的规划和实施拆分,导致运维工作无技术性可言,逐渐变成了“网管”。
    运维本身包含了许多基础性工作,例如部署服务、上线,甚至搬机器、重装系统等等。但运维又不能只做这些,因此在剩余时间如何规划以及提升运维技术能力,就尤为重要。
    如果对工作没有规划,也缺乏可实施的拆解,很容易疲于应付,工作没有目标。即使有事在做,也很容易出现一年都在忙,但就是总结不出东西的局面。
    举几个例子:
    当你和研发一起做一些事的时候,你在里面的定位是什么,怎么体现你的价值和技术能力?如果没有,基本就是在帮别人做贡献。
    你的年度目标是稳定性,你又会怎么描述你的年度目标?是“保证服务稳定可用,不出现运维事故”?还是“全年可用性 > 99.99%,运维事故少于一次,mttr小于20分钟”?
    如果按照前一种目标来开展工作,我觉得看天吃饭的可能性大一些;而如果按照后一种目标,再拆分细一些,则结果可控的多。
  2. 运维自身负责的点非常多,无法精通,无核心竞争力。
    大的范畴包括:硬件、网络、操作系统、数据库、存储、开源软件;职责上要负责各种应用的部署调试,例如ldap、samba、nagios、nginx/tomcat、lvs、mysql等;再细的还包括:压力测试、性能优化、内核参数调优、系统问题追查等。
    因为要做太多不同层面的事,导致很多人都仅仅只是完成任务,缺乏深入的研究,当然可能也缺少深入研究的场景。
    通常来说,越全面的人也意味着不精通,而在bat里面因为职能清晰,所以工作内容相对也更有专业性。
    比如你负责分布式存储,你就有足够的时间去学习、调研、测试不同的分布式存储方案,并根据业务情况选型使用,在这方面肯定会专业的多。这也是为什么bat的同学出去后发展都不错的一个主要原因。
  3. 运维本身代码能力不足甚至没有,无法完成配套工具的开发。
    代码能力既可以快速开发运维工具和平台,也可以加深对程序服务的了解,就不详细说了。
  4. 运维自身的总结、呈现不够,技术能力提升不足。
    其实和第一点关联比较多,因为本身没有对目标充分的规划,再加上总结呈现也不够,对技术的提升就比较有限了。
    因为要内部推荐的关系,我帮很多人review过简历,比如我认识一个人做运维接近10年,期间在几家公司做过不少事且时间都不短,正常来说会有相当的积累。他的简历比较典型:通篇都是描述性词汇,无数据支撑;项目工作都是叙事型描述,充斥着服务搭建、解决问题的字样,没有技术点;仅有的技术工作都是一笔带过,没有方案选型和难点解决,无法体现技术水准。
    摘抄简历中项目描述的一段,大家可以感受下:
              对线上服务器进行大规模操作。

    这段13个字的描述,讲了对服务器的大规模运维,但从技术呈现的角度等于没说,0分,因为毫无技术性可言!大规模操作到底是100台还是1000台机器?是一个人操作还是多人协同?操作内容是什么?另外,不管多大规模操作,体现了什么技术能力?
    如果你的简历写出来也有很多这样的描述,建议大家自我总结一下。

  5. 运维在技术部门毫无话语权,技术上得不到应有重视。
    在研发和测试的眼里,运维可能就是搬机器、重装系统、部署服务、掌握root权限这样毫无技术含量的职位。而事实上不得不承认,在很多公司,运维实际上就是这样。这样的运维只能参与到项目实施中,无法提出任何建设性建议,更无法主导任何事情,自然对其他技术职位毫无影响力可言。
    当然,地位仅仅只是结果,但是以运维的角度来看,就会觉得低人一等,让很多人认为运维就是低级工作职位。

总结:一个有一定代码能力,对研发有影响力,自身工作有技术性、有挑战、有呈现的运维人员,我认为才是一个合格的运维。

 

下一篇,我会介绍下bat的运维人员都在做什么,以及对运维的技术要求是什么。

 


作者介绍:闪马,前百度、现阿里高级运维工程师,专注于服务可用性和运维价值挖掘。

 

转载请注明:运维派 » 以BAT的视角看运维有前途么?(一)

2
4.7k
5
  1. 偶然间打开的这个网站 希望以后可以在这里学到更多的知识