2020 年运维行业学啥技术比较值钱?

用户头像
EUSCE
关注
发布于: 2020 年 08 月 20 日
2020年运维行业学啥技术比较值钱?



1. 当局者谜

运维行业的从业者很多人很迷茫。有些人整天做着重复枯燥的人肉运维,像个机械的操作工;有些开发觉得你能干的我也会,要你干啥?有些老板,没出问题的时候觉得你没干活,出了问题觉得养你有啥用。。。=_=||

很多人觉得自己时运不济,没捞着个好公司或者牛逼的团队,钱少糟心事还又多,觉得和牛逼的人共事能省下不少烦心事。说白了大部分都是自己的问题,你得先变强,才能遇到更多强大的人。我相信强大的团队一定也会遇到很多强大的问题,但是大家都有很强的软硬实力去解决各种难题。其中软实力包括:发现/解决问题的能力、沟通协作能力、心理调节能力等等,软实力的通用性很好,但培养周期比较长且难以衡量,不在本文的讨论范围。对于技术从业者而言,硬实力通常就是指的专业技术,本文结合分析了在运维行业(细分运维开发方向),哪些技术在招聘市场上比较吃香。

2. 圈定技能范围

每家公司运用的技术栈都不尽相同,这导致了对运维技能的多样性呈现出很高的要求。对比每个公司的招聘需求,整体上能发现很多的共性,掰开看又能看到很多的个性;因此我首先搜集了出现频率比较高的技术,然后从招聘网站获取数据,再用脚本分析每个技能的命中次数、平均薪酬、中位数薪酬,最后得出结论。

首先整理了一下当前在技术领域/招聘市场比较火热或常见的技术,列了个清单。考虑到有时候招聘需求上可能会写技术简称,因此我把别名/作用也一并列出了一些。整理下来差不多有三十多个。

详细清单如下,同一行可以视为同一个技术,有些技术类别很相近,但是我觉得应该拆分就拆分了。同理,有些技术虽然不同,但存在一定的共性,也做了合并,最后分析时技术名以每行第一个为准。

Linux,Centos,Ubuntu
Windows
Python
Shell,Bash
Go,Golang
Java
JavaScript,vue,react,前端
ansible
saltstack,salt
zabbix
prometheus
django,flask,tunado,后端
nginx
apache
tomcat
mysql
redis
mongodb
elasticsearch,elk
docker,容器
k8s,kubernetes
istio,服务网格
git
jenkins,CI,持续继承,持续交付
kafka
lvs
keepalived,keepalive,高可用
haproxy
tcp,http,负载均衡
iptables,安全
网络,dns
CDN


数据抽取与分析逻辑

本节简单说明了数据来源与分析逻辑,不敢兴趣的朋友可以直接跳到最后一节"最终结论"。

数据来自拉钩,关键字"运维开发",地理范围限制在某二线城市,总共72个职位。本来想从boss直聘获取,但是个人体验下来boss对游客的反爬策略比较苛刻,自己又不想登录又不想花钱用代理,所以最后选择了拉钩,拉钩的反爬策略相对宽容一点;

源码不便分享,但是程序逻辑有必要说明。整个分析流程大致是这样的。

首先将职位详情页dump到本地,然后用xpath去提取详情页的职位要求、薪资水平等信息,然后用刚刚列出的技能点做正则匹配。当然,正则匹配需要注意一些事项:比如忽略大小写、要能区分java/javascript的区别等等,我统一生成的是这种正则表达式:

self.regx = re.compile(r'.*{}[^a-zA-Z].*'.format(self.name), re.IGNORECASE)

遍历技能点,遍历职位详情进行分析,刚刚列出的清单中,同一行其实视作一个技能,因此任意一个命中该职位,就可以更新这个职位的最高薪酬、最低薪酬、中位数薪酬、命中次数等属性,并且完成本职位详情的分析,同时避免同一技能重复分析、计算同一个职位。

这里特别说明一下,判断某个技能是否在招聘市场上比较值钱,我这边着重关心的是每个职位平均薪资的中位数的高低。比如某个职位的薪资是15-25k,那么这个职位的平均薪资就是20k,然后命中这个技能的所有职位的平均薪资拍个序,取最中间那个职。这样避免了某几个职位的上限或下线很极端,对整体造成的影响。

最终完成分析后,根据薪酬排名、命中数排名,得到薪资中位数和命中率最高的技术,用wordcloud做了可视化。

最终结果

薪酬中位数排名

最终结果还是有点出乎我意料的,我一开始认为python、k8s这种技能最终的薪酬应该是最高的几个,但是事实上不是;根据薪酬中位数排名,最靠前四名分别是:Go,Java,Javascript,istio,中位数均超过20k;看来运维开发,重点还在开发呀,Go语言借着微服务的东风,已经发育起来了。

按照薪酬中位数生成的词云,薪酬中位数越高越显眼:





技能命中数排名

这张图似乎比较符合大家的认知,命中次数最高的5名依次是:linux(54次),python(47次),docker(45次),网络(42次),k8s(37次)





过滤重点技能

最后,让我们聚焦一下薪酬中位数达到20k且命中率超过三分之一(24次)的技能:只有寥寥8个:





我把这8个技能的结果数据分享给大家,其中hit表示命中的职位个数,mediansalary

,avgsalary,maxsalary,minsalary分别表示样本薪酬的中位数、均值、最高值和最低值

[
{
"go统计": {
"hit": 32,
"mediansalary": 22.5,
"avgsalary": 22.33,
"maxsalary": 45,
"minsalary": 10
}
},
{
"linux统计": {
"hit": 54,
"mediansalary": 20.0,
"avgsalary": 21.12,
"maxsalary": 60,
"minsalary": 4
}
},
{
"python统计": {
"hit": 47,
"mediansalary": 20.0,
"avgsalary": 20.71,
"maxsalary": 60,
"minsalary": 4
}
},
{
"docker统计": {
"hit": 45,
"mediansalary": 20.0,
"avgsalary": 20.64,
"maxsalary": 50,
"minsalary": 4
}
},
{
"网络统计": {
"hit": 42,
"mediansalary": 20.0,
"avgsalary": 21.88,
"maxsalary": 60,
"minsalary": 3
}
},
{
"k8s统计": {
"hit": 37,
"mediansalary": 20.0,
"avgsalary": 20.23,
"maxsalary": 50,
"minsalary": 4
}
},
{
"shell统计": {
"hit": 32,
"mediansalary": 20.0,
"avgsalary": 20.34,
"maxsalary": 50,
"minsalary": 6
}
},
{
"jenkins统计": {
"hit": 25,
"mediansalary": 20.0,
"avgsalary": 20.18,
"maxsalary": 40,
"minsalary": 9
}
}
]


希望本文能给不知道学什么,并想成为devops的朋友们一点参考。

另外打个广告,下面是我的个人公众号~主要分享linux运维方面的内容





用户头像

EUSCE

关注

还未添加个人签名 2018.01.17 加入

还未添加个人简介

评论

发布
暂无评论
2020年运维行业学啥技术比较值钱?