2018年开发商工资:更新堆栈溢出工资计算器

今天,我们发布了叠加溢出工资计算器,一种工具,允许开发人员和雇主根据经验水平找到软件行业的典型工资,位置,教育,以及具体的技术。

我们使用的方法与去年,但今年我们增加了对8个新国家的支持,并改进了哪些技术有助于我们的工资预测。我们的工资计算器是基于堆栈溢出开发人员调查,我们今年收到的空前数量的回复让我们能够建立一个更精确的模型,适用于世界上更多的开发人员。

工资计算器的输入,我们发现最能预测开发商的工资,是你的

  • 位置,
  • 教育,
  • 多年的专业编码经验,
  • 你是什么样的开发者?和
  • 专业使用的技术。

地理

开发商的生活和工作地点是他们获得报酬的最大因素之一。让我们来看看我们在去年的工资计算器版本中支持的同五个国家的工资。

工资与去年相比有变化吗?根据我们的调查,开发商的总体收益更高,在所有国家,中位数薪金比去年在伦敦和旧金山的平均水平高出25%。其中一些增长是因为我们改变了我们如何处理削减最高工资的问题来自我们的数据集;去年我们决定过分热衷于削减高薪。虽然我们是说全世界的开发商都看到了去年的增长,我们确实看到,与去年相比,所有地区的开发商工资都在上涨。

除了这五个国家之外,对今年调查的全面回应使我们能够建立涵盖八个新国家的模型:

  • 澳大利亚
  • 巴西
  • 印度
  • 荷兰
  • 波兰
  • 俄罗斯
  • 西班牙
  • 瑞典

即使在任何国家,开发商的工资因城市而异。在英国,例如,我们的调查结果表明,伦敦开发商的收入比英国其他地区的开发商多20%。也就是说,我们的数据集无法区分任何给定国家的平均工资水平附近的城市,对所有城市进行个别预测。为了说明这一点,让我们看看美国。

该图显示了美国前十大地铁区域的工资分布(以美元计),按受访者数量划分。(注意Y轴是一个对数刻度)城市从最低的中位数薪金(明尼阿波利斯)到最高的中位数工资(旧金山地区)。看看这个图表,看看芝加哥等城市的工资中位数有多接近。达拉斯丹佛波特兰波士顿,甚至奥斯汀也是。在我们的模型中,我们得到的数据只支持橙色显示的城市的统计不同工资。旧金山西雅图纽约的开发商的工资与典型的美国标准相比已经足够高了。有足够多的开发商在那里工作,我们可以自信地预测一个居住在这些城市中的开发商的工资水平与美国的一般水平不同。对于居住在芝加哥或波士顿等城市的开发商,工资与美国的总体水平大致相同,所以我们不能建立自信,分别对这些城市进行预测。你可能会看到这幅图,想知道那些薪水略低于明尼阿波利斯的城市,但在那里,我们的被访者更少,所以我们又不能建立起自信,单独预测。在美国,我们对旧金山有个别的城市级预测,西雅图和纽约,然后是覆盖美国其他地区的国家级预测。同样的模式也适用于其他国家,包括法国,德国和加拿大,因为同样的原因。

在今年的调查中,我们通过一个自由文本字段询问受访者他们住在哪个城市。我们使用标准的文本挖掘和数据清理方法来处理这些数据,包括大城市区域内的郊区。例如,旧金山湾地区的受访者称他们住在圣·若泽,山景,森尼维耳奥克兰等。,虽然波茨坦的受访者都在柏林,诸如此类。

去年,我们要求用户帮助我们改进工资计算器,在计算器中与我们秘密共享工资信息。这份工资调查是100%私人的,从未出现在我们网站的任何个人资料中,也从未与雇主分享过。我们尝试使用这个数据集来改进工资计算器并建立一个更好的工资模型。但事实证明,以这种方式收集的数据不如我们的年度开发商调查有用。两个主要原因是我们的地理覆盖范围和响应的数量。我们要感谢通过工资计算器与我们共享数据的每个用户;感谢您的关心和信任。因为我们不会使用这些数据,我们将停止通过工资计算器收集工资数据,并删除我们已经拥有的数据,根据我们的数据策略.

哪些类型的开发人员能赚更多的钱?

影响开发者报酬的另一个重要因素是他们所做的工作。

在所有这些国家,DevOps专家是最赚钱的。我们也经常看到,在顶级与高级开发人员之间,有着相同的开发人员角色。每个国家范围的底部。在我们的年度调查中,我们希望在经验分布上有所不同,教育,开发者角色,以及其他特征。嵌入式开发者在德国比美国赚得多吗?或者他们作为一个群体在那里有更多的经验?数据科学家的高薪能仅仅由高教育水平来解释吗?为了说明这一点,并为我们的用户做出最有信心的预测,我们建立了一个工资模型,可以同时考虑所有这些特征。最后,一些开发人员角色(如DevOps)与更高的工资有关,一些开发人员角色(如QA)与较低的工资有关,许多与基线变化无关,即。,任何国家的典型开发商工资。

开发人员使用的特定技术也会影响工资。今年,与高薪最相关的技术包括Go,斯卡拉雷迪斯并作出反应。这些也是最受欢迎的技术今年。作为一名数据科学家,我很想知道这种关系中有多少是因果关系,它朝哪个方向走!就像去年一样,一些技术,比如php,会降低开发者的工资,一些技术如javascript被广泛使用,不会影响工资上涨。下来。

建立模型

我们今年再次使用多元线性回归为了根据模型输入预测工资,具有有助于变量选择的正则化,(即我们在调查中询问的许多技术和开发人员角色中,哪些是工资的重要预测因素)。工资是以对数尺度为模型的,因为工资分配是对数正态的(像这样的分配经常是),有一个非常高工资的长尾巴。

在这个工资计算器里,我们报告了该地区的预期工资,教育,经验,以及您输入的其他信息。我们还报告了50%预测区间.这个区间的具体统计意义是,我们期望50%的具有与您相同特征的人在这个区间内拥有薪水;它跨越了25到75个百分点。间隔与预测本身(第50个百分点)同样重要,因为它能让你了解预期工资的范围。

今年,我们建了两个模型,一个是高收入国家,一个是低收入国家。通过这种方法,我们能够为所有国家的开发商实现更好的工资预测,在模型与数据的匹配程度方面,与为所有国家建立一个模型相比,为每个国家建立单独的模型,或其他方法。我们可以评估模型对数据的拟合程度的一种方法是查看残差,我们用于建模的数据集的预测工资和已知工资之间的差异。让我们看看2018年工资计算器更新中支持的国家和个别城市的残值。

总的来说,残值看起来不错,尽管有一些事情需要注意并牢记在心。首先,注意,印度等收入较低的国家的残值要比瑞典等收入较高的国家高得多。在收入较低的国家,我们无法准确预测收入。第二,注意美国等一些国家残值的形状;高薪的剩余工资比低薪的剩余工资变化小。另一种说法是残差的方差不是常数,这个叫做异方差.这意味着我们的数据集并不完全符合我们模型的基本假设。在现实生活中,开发商的工资取决于二者都我们在模型中考虑的特征其他复杂因素,其中一些涉及轻微违反我们模型的假设。这些是我们结果的一些局限性,但是,我们今年在计算器中报告的工资和预测时间间隔为世界各地的开发商提供了可靠的信息。

该图显示了剩余工资和符合对数尺度的工资,但是计算器本身的工资是以自然单位和每个用户的适当当地货币来报告的。

试一试

退房叠加溢出工资计算器并进一步了解开发人员的收入!作为开发人员,你可以为自己的背景和技术技能探索潜在的薪资范围,找到与你相关的推荐工作。作为雇主,您可以了解更多关于开发人员技能竞争市场的信息。

问题?评论?从头到头现在使用工资计算器标签。

作者

朱丽亚雪橇
数据科学家

相关文章

评论

  1. 这似乎是打破了Android与移动铬。我已经填好了所有的领域,但是,单击“提交”按钮后,未选中的复选框边框为红色。已启用“提交”按钮,但是当我再次尝试提交时什么也不做。验证代码中有问题吗?

    1. 你能用[bug]标签在meta上提交这个吗?也,如果你能包括一个屏幕截图,那就太好了。到目前为止,我们还不能重现这个问题。

      谢谢!

      1. 埃内斯-伊尔马兹 说:

        我同意

    2. 当我总共选中5个以上的复选框时,我就遇到了这种情况。找不到错误消息。

  2. 瑞安·史密斯 说:

    “工资”包括股票奖金吗?

    1. 不,我们决定今年不包括股票红利或估计它们。根据过去几年的经验,对于开发商来说,准确而一致地估计股票期权或奖金的价值是罕见的。我们关注的是工资总额,税前和扣除前。这是一个价值观,更多地理区域的开发者可以更准确地估计。然而,它*是一个在所有情况下都不能获取所有开发人员补偿的度量。

      1. 你没有收集全部赔偿的数据吗?或者只是决定不把它包括在分析中?

        不包括股票赠款对大型科技公司的开发商来说就没那么有用了,如果总薪酬中的很大一部分(以及开发商之间薪酬的大部分可变性)是以股票赠款的形式提供的。

        如果准确的估计是问题所在,为什么不从开发商的W2中获得收入呢?换句话说:问他们去年实际赚了多少钱,不是他们想赚多少。明年想些什么?

  3. “我们可以评估模型对数据的拟合程度的一种方法是查看残差,我们用于建模的数据集的预测工资和已知工资之间的差异。”

    我认为普遍接受的方法是使用数据集的一部分(比如75%)来构建模型,然后根据剩余的(25%)数据测量其准确性。不能通过将模型应用于构建模型的相同数据来测量模型的准确性。这会导致过度拟合,正确的?还是我误解了?

    1. 我使用交叉验证和正则回归进行特征选择,这同样减少了在这种模型中使用的特征的过度拟合。从整体上看残差来了解模型的性能通常是个好主意。

  4. 布瑞恩 说:

    在“剩余工资与固定工资”图表中,横坐标/纵坐标上的值是否为工资/残值的自然对数?如果是这样,有没有特别的理由选择LN?而不是以10为底的原木?

    看来,Base-10的对数刻度要直观得多。

    1. 我真的很好奇这是不是像一个“让我们保持模型简单,易于向人们解释”的事情,或者如果你真的认为这是我们能做的最好的事情。因为分析感觉很统计101。

  5. 班尼斯特·尼古拉斯 说:

    将数据与生活成本交叉引用是非常好的,你在美国的收入可能会翻一番,然而,生活成本可能是基本成本的三到四倍,实际上,你可能会把80%的收入花在美国,而不是60%的收入花在英国。

  6. 25%是多少?第50百分位,工资计算器结果中的第75个百分点?

  7. 马丁 说:

    我试过计算器,结果得到了一些带编号的列。
    但没有提到货币,所以我不知道结果和我的薪水相比如何。

    1. 货币+值应位于每个条形图的顶部。如果你认为你看到了别的东西,你能用[bug]标签提交一个关于meta的问题吗?如果你能包括一个屏幕截图,那就太好了。

  8. 都铎霍尔顿 说:

    “伦敦的开发商比英国其他地区的开发商多赚20%”—我敢肯定这完全是@jonsket的作用。-P

  9. “计算器本身中的工资以适合每个用户的本地货币[…]报告。”

    一个小小的诡辩:在页面上的任何地方都没有这么说。最好详细说明一下,特别是对于使用接近美元的货币的人,所以这些数字是合理的,但足以扭曲它们,就像加拿大一样。

    1. 如果您在加拿大提交一个地点,你应该在计算机辅助设计中得到一个工资预测。如果你看到另一个结果,你能用[bug]标签提交一个关于meta的问题吗?如果您还可以包括屏幕截图,那太好了。

  10. 如果下拉列表显示如下内容,可能会更直观:
    *美国-旧金山
    *美国-西雅图
    *美国-纽约市
    *美国-全国平均水平
    而不是让人觉得你的位置更重要。

    我们这些小城市的人正在讨论结果和想法,“嘿,我们真的太少了吗?“
    既然我们读到了这个,我们看到“我们的小镇”和芝加哥和奥斯汀是“一样的”,这就解释了为什么这个计算器看起来很疯狂。

  11. 特雷西塔·格雷罗 说:

    你有没有想过把性别作为一个特征?
    悲哀地,工资还是有很大的差别,而且差异的百分比因国家而异(有时)。

    1. 所以雇主可以继续根据性别区分工资?我不这么认为。相信我,这样的事情只会促进不平等。

  12. 请将Vue.js添加为框架!

  13. 嗨,Julia Silge,
    感谢您在列表中添加印度。
    与其他国家相比,印度的薪水最低。

    1. 问得好。我想知道如果我是一个1099公司对公司的员工,这个数字会是多少。

  14. 梅尔纳兹 说:

    计算的工资是否包括工资和福利,还是只包括工资?我不是说奖金。

  15. 布莱恩奥克利 说:

    计算器对我来说似乎有点过时了。多年的经验乘数似乎是最大的贡献者。当我投入30年,第75个百分点几乎是我薪水的两倍,我很确定我目前在我所在地区的前5-10%。

    即使我把我的经验减少到20年,对于中位数来说,这个数字仍然下降了40%左右。如果我是75%,我就可以把一辆法拉利放在我的车库里,而不必再考虑付款了。

    1. 有趣。也许是因为它的外推超出了原始数据的范围,或者是因为它在30年的经验下变得很薄。

  16. 我看到问题和回答,工资不包括股票奖金,但是否包括现金奖金?

  17. 雅各伯霍华斯 说:

    在美国,人们似乎支付过高,此外,城市可能会将数据倾斜得很高,或者根本没有大量的调查数据。很高兴看到原始数据。
    例如,我发现很难证明花在一个有2-3年经验的开发商身上近10万美元是合理的,除非是在一个生活成本很高的大城市。

  18. 此薪资数据不是有效的评估。美国的工资范围似乎是基于你所居住的地区,如“中西部地区”。所以芝加哥的薪水是一样的,IL皮奥里亚IL达拉斯TX,但不应该如此。这是非常误导人的。

    这些地区的实际工资根据生活成本而有所不同。芝加哥10万美元的薪水,在Peoria,IL相当于75654美元,IL(来源:https://www.bestplaces.net/cost-of-live/chicago-il/peoria-il/100000)以及德克萨斯州达拉斯的85843美元(来源:https://www.bestplaces.net/cost-of-live/chicago-il/dallas-tx/100000

  19. 晚上好,Julia Silge,

    感谢您使用此工具和学习。

    但是在你的比较研究中有一个很大的数学错误。

    当您为同一个开发人员(体验,研究)法国9万美元,美国15万美元。

    作为一名开发商,当你在法国获得9万美元的工资时,你将获得雇主支付的福利(退休、医疗保健,失业保险……)。

    因此,现实世界的比较结果是90 000+90 000=18万美元,而美国是15万美元。

    换个说法,如果你是雇主,你的开发成本在法国是18万美元,在美国是15万美元。

    我的意思是说把一个橘子和一个橘子比较一下(把相同的东西比较一下)。

    最好的问候,
    埃里克

    1. 泰勒布恩 说:

      美国的雇主也支付退休费,医疗保健,失业保险,等;所以我不认为这个比较真的有那么远。

      然而,我确实认为这项研究可以更好地得到某种形式的“总补偿”。利益确实是这一图景的一部分,但更大的是股票和奖金补偿,很容易达到开发商总薪酬的50%或更多。

      1. 你好,

        我同意,但事实上,“总补偿”包括欧洲的强制性福利,这项研究应引导将它们包括在内。如果你读了SO的研究,你会认为你会在美国赚双倍的钱。事实上,你在法国赚得更多,德国等……

    2. 我想说得有点不同。

      当你问一个人在美国的薪水是多少时,他们自然会给你一个税前金额。当你问欧洲的人,他们会给你一个税后金额。(我不确定如何,比如说一个澳大利亚人或印度人会回应或考虑他们的薪水)。

      你所看到的美国和欧洲在工资上的巨大差异几乎可以肯定地反映出这一点。美国人的带回家的工资实际上比他们所说的低35-45%(在考虑了联邦和州的税收和社会保障/医疗保险之后)。而对于欧洲人来说,他们40-55%的税收/社会保障税已经被取消。

      1. 你确定欧洲的税后金额吗?在德国,只有十分之一的人会告诉你他/她的净收入(税后等)。根据我的经验,任何人都会要求立即提供税前数字。税后金额是主观的,因为个人的不同方面所以不可比。

    3. 我认为这是一个很好的观点,但是,很难计算工资福利,因为它们在所有的欧元国家都有所不同。

      就像下面有人说的,在美国也有好处。

  20. “系统管理员,莫斯科,俄罗斯,2年经验,不到一个单身汉,PHPLinux窗户,Windows服务器Wordpress“查询建议我年薪910000卢布,75%的情况下每月约75833卢布。但这有点像梦,而当地流行的求职引擎只能找到大约50…65K份鲁尔工作。

    当我选择“学士学位(如学士学位,BS)“(意味着我有比普通学校水平更高的东西,工资计算器说我的工资应该是1120000卢布(大约每月93000卢布)。但在2018年,这样的工资几乎是不可能的,大多数雇主支付不超过65K卢布(通过hh.ru或类似的方式进行检查)。否则,他们只需将系统管理员改为不想要更高薪水的人。可能,如果同时在多家公司工作,工资将更像StackOverflow工资计算器所说的,但这不是官方的完全合法的方式。一些公司可以支付大约每月20K卢比(约400美元)再也没有,因此,在这种情况下,多个工作同时需要支付家庭和食物的费用。这种情况并不罕见。

    俄罗斯的计算算法还不完善。

  21. 我住在圣保罗,巴西。我试过薪水计算器,结果很可笑,与当地的实际情况完全无关,比任何雇主愿意支付的都要高。恐怕你在这个地区的数据太差了,歪斜或污染,或者您高估了某些输入的权重。

    此外,目前还不清楚这是月薪还是年薪。在巴西,每个人都把工资称为月工资,但并非所有地方都如此。我估计是每年,否则,这个值完全没有任何意义。不管怎样,应明确说明,以避免混淆和误解。也,为了避免混淆和误解,明确地增加使用的货币是个好主意。

  22. 维克多斯塔法萨 说:

    我住在圣保罗,巴西。我试过薪水计算器,结果很可笑,与当地的实际情况完全无关,比任何雇主愿意支付的都要高。恐怕你在这个地区的数据太差了,歪斜或污染,或者您高估了某些输入的权重。

    此外,目前还不清楚这是月薪还是年薪。在巴西,每个人都把工资称为月工资,但并非所有地方都如此。我估计是每年,否则,这个值完全没有任何意义。不管怎样,应明确说明,以避免混淆和误解。

  23. 阿德里安 说:

    为应用程序安全工程师提供数据是很好的,感觉像是集体被忽视了。

  24. 增加技能会降低预期工资。这怎么可能?例如:拥有SQL和R的技能集,预测的中位数为11万美元。保持其他一切不变(位置,多年经验,等)增加额外的技能(例如SQL Server)将降低预期工资。我可以从统计的角度理解为什么会发生这种情况,但从现实世界的经验来看,这是没有意义的,因此,建模是误导性的。

  25. 有一件事让我感到奇怪和意外,那就是一些技术会导致预测工资的减少,例如:PHP和MySQL。显然地,他们甚至比什么都没有更糟。这是一个错误还是在这种行为背后有解释?

  26. 几乎精通所列所有技术的人会怎么样?如果他们多次使用计算器,一次检查5次,直到全部通过为止,然后把工资结果平均起来得到一个准确的估计?为什么只有5?我什么地方都没看到。

  27. 醋酸乙烯酯 说:

    基于您的计算器,如果我们只知道两种技术,我们将赚得更多,例如:
    javascript+外壳
    如果我们学习一些额外的东西,例如:
    javascript+shell+html
    那你赚的钱就少了…
    这对我来说有点可笑;)

  28. 西尔文亨洛 说:

    微积分在一个研究生和另一个研究生之间没有任何区别,这是正常的吗?

  29. 所有数字都是美元吗?例如,当提供加拿大某个城市的信息时,是美元还是加元?

    此外,当你收集数据时,你区分了加元和美元吗?

  30. 亚历克斯蒙坦 说:

    伙计们,如您所知,我的位置(所以您知道这不适用于我,因为我在日本)请不要显示此功能的弹出窗口。
    带我去那个页面有什么意义?我填了那张表,然后你告诉我你没有日本的数据。缩略图:

  31. 我想知道,工资的计算是否包括工资和福利,还是只包括工资。正如你在评论中所说,股票红利不算在内,但是其他福利呢?

  32. 所有国家的工资都在并行增长。这是正确的趋势。这个算法需要各种奖金还是加班费?

  33. 印度有最好的开发商,他们的工资在比较中竞争力较低。

留下答复

您的电子邮件地址将不会发布。已标记必需字段*

此网站使用Akismet来减少垃圾邮件。了解如何处理评论数据.