从10000+招聘信息中,我找到了Java和Golang的选择之道

发表时间: 2022-10-11 20:35

之前有小伙伴问我,Java和golang两种语言怎么选?考虑到我的回答可能会成为小伙伴的“人生意见”,那可不能马虎。

在此,老K就不介绍两种语言技术上的差别了,来看点现实的,看看近期java和golang在招聘市场上的情况!

我统计了几个主流程序员招聘网站拉勾网、牛客网、智联招聘上超过1万多条在招职位分析了职位需求、收入水平、职业发展、城市分布等信息,得出了下方的结论。

整个过程耗时1天半,涉及到数据爬取、收集、清洗、挖掘分析、以及可视化呈现,耗时耗力,如果觉得不错,请务必给我点个赞+收藏哦。


概述

首先看一下我在网上收集的超过10000条关于“开发工程师”相关的职位,如下图:

得到如下数据结果:

职位需求

可以看到,需求最大的还是前端和测试相关的工作;
在后端工作中,
java语言以7.15%的工作机会遥遥领先,之后是安卓、ios等;
目前
go/golang语言在所有开发工程师职位中,占比1.11%。

以下是关于需求职位的详表:

类型

数量

前端

20.44%

测试

19.67%

java

7.15%

AI算法

5.1%

安卓

4.32%

大数据

2.88%

iOS

2.71%

运维

2.22%

unity

1.39%

go

1.11%

数据库

0.72%

python

0.55%

php

0.22%

其它

31.52%


收入水平

对全部获取到的职位进行分类,仅分析java和go类目下的记录,来看看相关职位的手入情况:

  • java工程师

Java薪资水平

java

收入

最高值

¥80,000.00

最低值

¥5,000.00

平均值

¥14,635.00

中位数

¥15,000.00

  • golang工程师

golang薪资水平

go

收入

最高值

¥70,000.00

最低值

¥1,000.00

平均值

¥20,956.00

中位数

¥20,000.00

从上述图表可以看出:

java相对工作机会更多,而且大多数薪酬水平将近8成的工作工资低于20000元,且主要集中在15000元左右;
golang则正相反,工作机会相对较少,平均薪酬在20000元上下,且8成职位给付的报价在1.5W以上;
初步观察下来,虽然
golang职位较少,竞争激烈,但如果成功入行,收入水平和福利待遇普遍更高。


工作年限

看完薪酬概况,我们来了解一下两种语言对工作年限的要求有何不同。

  • java

java工作年限要求

  • golang

golang工作年限要求

从上图可以看出,两者工作年限上的要求接近,招聘要求主要都集中在3-5年这个区间
具体到平均数和中位数,java两者都是4年,而golang的中位数是3年,平均数是3.6年;
从工作年限来看,两者没有明显的差别


入门薪资

考虑到大多数关心这个问题的小伙伴,都是职场新人。

那么对于职场新人,两个编程语言到底有什么差别呢?

我们继续向下看,以下是工作年限要求在3年以下(不含3年)的薪酬情况。

  • java

java入门薪资

java

收入

最高值

¥30,000.00

最低值

¥6,000.00

平均值

¥12,838.00

中位数

¥12,000.00

  • golang

golang入门薪资

golang

收入

最高值

¥30,000.00

最低值

¥1,000.00

平均值

¥15,591.00

中位数

¥15,000.00

golang语言在3年以下的薪酬水平,平均在1.5万左右,依然高于java的1.2万薪资水平;
不过
从绝对数量上可以明显看到,不管在哪个薪酬挡位,java开放的职位始终远高于golang。


职业发展

我们选择一个工作,不仅要看入行时的薪资,也要看看工作10年后的薪酬水平。

在这里,我们将工作年限要求大于5年(不含5年)的记录提取出来,对其收入水平进行分析,以作为该编程语言职业发展的判断依据:

  • java

java职位5年以上工作经验薪资情况

java

收入

最高值

¥80,000.00

最低值

¥6,000.00

平均值

¥18,337.00

中位数

¥18,000.00

  • golang

golang职位5年以上工作经验薪资情况

golang

收入

最高值

¥70,000.00

最低值

¥15,000.00

平均值

¥30,133.00

中位数

¥30,000.00

长远来看,对于资深工程师来说,golang明显比java收入要高
java在此区间的平均收入为1.8万元,明显少于golang的平均3万元收入;
可以看出,
java的开放的职位更多,但由于java的火热,导致求职者的竞争激烈,造成报价普遍低于golang


根据以上信息,我们基本可以得出这样的结论:

  • java在求职市场上,开放的岗位要显著多于golang开放的岗位:java开放的职位是golang的6.5倍
  • 但golang在各个工作年限上,用人单位开出的预算都远高于java的岗位:golang的薪资平均高出1.3倍,且随工作年限增加差距进一步扩大。

目前看来golang在求职市场更吃香,但求职者之间的竞争也更激烈。

而学历就是其中一个主要竞争因素。

学历因素

  • java

java职位学历要求

  • golang

golang职位学历要求

两种编程语言开放的职位分布大致相同;
不过在大专这一学历水平上,出现了些许差别:
要求大专及以下学历的职位在全部java岗位中占比达高12%,是golang岗位(5%)的两倍多

  • 对本科及以上的建议:当下可以去争取golang的高收入职位,不过开放岗位比较少,竞争比较激烈;
  • 对大专学历的建议:java的收入虽然低于golang,但其对学历的要求也略低,可以考虑先以java入行,未来有余力再学习golang。

城市分布

接下来,我们来看看不同职位,哪些城市的机会比较多。

统计结果排序前10的城市如下:

排序

java

golang

1

上海(18.56%)

深圳(28.74%)

2

北京(17.65%)

北京(26.10%)

3

深圳(16.85%)

上海(14.66%)

4

广州(9.83%)

成都(7.04%)

5

成都(7.62%)

杭州(5.28%)

6

杭州(7.22%)

广州(4.99%)

7

武汉(3.41%)

西安(3.52%)

8

西安(2.41%)

武汉(2.64%)

9

南京(1.91%)

南京(2.05%)

10

长沙(1.40%)

苏州(0.88%)

对于java求职者,北上广深职位机会的占比差不多,除了广州占比较少,其它三市的机会差不多;
对于golang求职者,深圳、北京的占比明显高于上海;
成都和杭州在两种语言上的求职占比都比较高,是新一线城市中的首选求职目的地。


行业分布

之前和公司里的小伙伴聊天,谈到一个好的开发工程师和普通的工程师最大的差距在哪里。

我们最后得出的一致结论是:对业务的理解。

自己岗位上需要的技术,不用几个月就能学得八九不离十,但能把工作做好的是那些在技术之外,能更好理解业务的人。

这里,我们整理了不同语言岗位所在行业的清单排序,大家可以参考未来求职的行业方向:

排序

java

golang

1

IT技术服务咨询 (308, 22.53%)

企业服务 (70, 14.26%)

2

软件服务咨询 (254, 18.58%)

专业服务咨询 (65, 13.24%)

3

科技金融 (88, 6.44%)

IT技术服务咨询 (50, 10.18%)

4

企业服务 (83, 6.07%)

工具类产品 (47, 9.57%)

5

人工智能服务 (73, 5.34%)

科技金融 (28, 5.7%)

6

数据服务咨询 (67, 4.9%)

人工智能服务 (27, 5.5%)

7

移动互联网 (58, 4.24%)

游戏 (22, 4.48%)

8

营销服务咨询 (39, 2.85%)

数据服务咨询 (20, 4.07%)

9

数据服务 (34, 2.49%)

信息安全 (15, 3.05%)

10

专业服务咨询 (33, 2.41%)

软件服务咨询 (13, 2.65%)


总结和建议

综合了上面对数据的初步挖掘,我们得到的结论如下:

  • 直至今日,java仍然是市场上接受度最高,求职机会最多的编程语言;
  • golang作为后起之秀,在薪酬方面全方面胜过java;
  • golang虽然收入更高,但竞争也更激烈,95%以上的职位要求本科及以上学历;
  • 相对而言,java对学历的要求较低,大专学历的小伙伴可以把java作为入行的跳板;
  • java不论是起薪,还是高薪,都低于golang,且随着工作年限增长,这个差距进一步扩大;
  • 不论是java还是golang,主要工作机会都集中在北上深;
  • 新一线城市中,成都、杭州的求职机会最多。

建议

  • 本科及以上的同学,且对自己在求职市场的位置有信心的,可以以golang为求职目标,在深圳、北京寻找求职机会;
  • 非本科的同学,可以先学习java,北上深市场上java求职机会较多,作为跳板后,后期如有意愿,可以学习并转型到golang岗位。

推荐阅读

老K玩代码:全部免费!10个GoLang(Go语言)的免费学习资源

老K玩代码:如何写出优雅的代码?


结束语

以上就是我根据求职和发展角度给出的java与golang的选择建议,如果对你有所帮助,记得给老K点个赞哦!

如果大家对这样的报告反馈不错,我会继续分享类似形式的内容,争取做成一个系列。想继续看到更多这类文章的小伙伴,请一定双击屏幕支持一下!

如果你有任何疑问,或者对哪个领域有兴趣而我没有提到的,也欢迎在评论区与我留言沟通。

我是专注于开发领域的@老K玩代码,会持续生产关于编程、开发方面等的优质内容。

如果你想学习编程,或者想精进你的编程能力,可以关注我。

#头条创作挑战赛#