因为工作行业的原因,会有很多的同行或朋友找我推荐一些有运维经验的人,或者直接希望要运维专家。
最近我回顾了下这个事情,发现很奇怪的是,好像我一次都没有推荐成功过。倒不是我不想热心帮忙,而是身边合适的角色,总是不能很好的匹配企业需求。
我琢磨了下,可能有这样几个原因:
第一个,运维范畴,就运维这个工种来说,其实也是有很大范畴的,比如IDC运维、主机运维、系统运维、网络运维、应用运维、运维开发、智能运维等等。一个人不可能对这些细分领域都很精通,而且每个细分领域再细分下去,又会有很多专业技能要求。所以,关键是看需求。
第二个,运维能力,运维应该成为一种能力,而不再是依赖运维这个工种。特别是应用运维这个层面,无论是开发,测试还是运维本身,我认为都要具备一些运维能力,比如:
但是这种能力的承载,或者说对开发的运维能力的赋能,将成为运维这个角色的职责,需要能够有统一的基础平台建设提供支撑,所以我们会发现,当前我们更加需要能够帮助团队建设出高效运维体系的角色,而不再是能够被动响应更多问题的角色。
这个能力的提升,也不是外面招几个人进来就解决问题的,关键还是有意识有规划的去做一些架构能力提升。
第三个,运维的不同阶段,对运维能力的诉求也不一样,一开始业务刚发展,服务器和应用集群规模不大,能够招到1-2个纯操作类的初、中级运维就可以,这个阶段更多的是操作系层面的工作,没必要去寻觅很高端的人,且,初中级的运维在市面上也相对容易招到。
所以,绝大部分的运维人力诉求,我认为都是没有匹配好自己当前业务所处的阶段,只要这个认识清楚理解清楚了,其实人就好找了,很多的人力诉求,在这个阶段也基本可以解决了。
再往后,就需要对基础设施和基础服务有规划的建设,这个要求应该是提给系统架构师和业务架构师的,而不是提给运维角色。前面基础打不好,后面想让运维做好,这个没可能。
再往下一个阶段发展,就是超大规模体系的运维了,比如BATJ,这个场景下搞运维就更精细和精深,比如搞网络,得搞SDN编程了,搞系统维护,也需要内核开发和调优了,搞资源分配,得考虑各种资源隔离、资源利用率、资源调度这些问题等等。这些就需要更加专业的人才,这里我们就不细讲了。
我想讲到这里,我们需要什么样的人才,我想就比较清楚了,其实根本上,还是需要们对技术的本质,期望技术在业务发展过程中所能发挥的作用,以及如何更好的发挥作用要有深刻的理解,这一点其实并不容易做到。