来源:StackOverflow
编译:weakish
StackOverflow从2015年开始每年对用户进行调查,我们分析了2015、2016、2017三年的调查报告,整理了机器学习开发者3年来的发展态势。
机器学习岗位暴涨
2017年的调查中,所有职位之中,机器学习占3.8%, 相比2016年调查的0.1%, 增幅高达380%.
同时,机器学习开发者相比其他岗位,打算找工作或换工作的比例最高,其中14.3%机器学习开发者正在积极求职。而2016年机器学习开发者相比其他开发者,打算找工作或换工作的比例非常低,仅次于技术总监、CTO、CIO等高层和设计师。2015年机器学习开发者对当前工作的满意度也非常高,仅次于技术总监、CTO、CIO等高层。
这可能有两个原因:
由于机器学习开发者需求增长强劲,有大量开发者转入这个领域。实际上,2016年的调查显示,有34%的机器学习开发者和32.3%的数据科学家曾学习过网络课程。
由于机器学习开发者紧缺,挖角现象比较频繁。实际上,薪水调查也印证了这一点。就全球范围而言,机器学习开发者以57,000美刀的平均薪水在所有开发者岗位中排名第二。而大公司和初创企业云集的美国,机器学习开发者、具有数学或统计学背景的开发者、数据科学家更分别以108,000美刀、101,000美刀、100,000美刀的薪水分列三甲。
机器学习开发者的平均学历很高
2017年的调查显示,总体上来说,开发经验(年资)和薪水呈正相关。而机器学习开发者是一个显著的例外,薪水很高,开发经验(年资)很低。这主要是因为机器学习开发者相比其他岗位的开发者,接受了更高的教育。2016年的调查显示,在所有岗位的开发者中,机器学习开发者拥有计算机科学领域的硕士或博士学位的比例最高。2015年的调查也显示,机器学习开发者和数据科学家,相比其他职位的开发者,拥有博士学位的机率高达10倍。
由于大量机器学习开发者有较高的学历,具有学术界背景,因此他们挑选工作的时候更看重所做工作的创新程度。2016年的调查显示,挑选工作的时候,和所有岗位的开发者一样,机器学习开发者把薪水放在第一位。但是,和其他岗位的开发者不同,机器学习开发者挑选工作的考量因素中,工作的创新程度位于第二位。
值得注意的是,2015年的调查显示,与其他岗位的开发者相比,机器学习开发者和数据科学家使用Emacs的机率高达3倍。这主要是因为在学术界流行的一些函数式编程语言,比如Haskell、OCaml、Scheme, 以Emacs为主流开发环境。
机器学习开发者使用的技术
2016年的调查显示,具有数学背景的开发者(包括机器学习开发者和数据科学家)中,使用Scala Spark或Hadoop的开发者获得了更多的薪水。使用Python或R的开发者薪水基本相当。掌握Python的具有数学背景的开发者中,有一半使用Python工作。
原始数据
StackOverflow调查的原始数据可在StackOverflow网站下载:https://insights.stackoverflow.com/survey/
领取专属 10元无门槛券
私享最新 技术干货