24 年程序员各岗位薪资待遇汇总(最新)
大家好,我是程序员鱼皮。今天分享 24 年 6 月最新的程序员各岗位薪资待遇汇总。
数据是从哪儿来的呢?其实很简单,BOSS 直聘上有一个免费的薪酬查询工具,只要认证成为招聘者就能直接看,便于招聘者了解市场,设置合适的薪资。
由于程序员相关的岗位太多,本文只整理了热门岗位,包括:后端、前端、测试、运维、嵌入式、人工智能算法。
注意,薪酬查询数据来源于 BOSS 用户提供的职位薪酬数据,可用于分析岗位的现状和发展趋势,仅供参考。
Java 岗位
全国 Java 岗位年薪
注意,样本数据偏重参考固定薪资,对浮动薪资,例如绩效/提成/年终奖,借鉴较少。
统计了全行业近一年共 25008713 份样本。先不区分从业经验和城市,行业内 50% 的人薪资低于 124,532:
再看看从业 1 年以下(应届生)的薪资,行业内 50% 的人薪资低于 73,966:
一线城市 Java 岗位年薪
以鱼皮现居的城市上海为例, 统计了全行业近一年共 3727328 份样本。先不区分从业经验,行业内 50% 的人薪资低于 212,160:
再看看从业 1 年以下(上海应届生)的薪资,行业内 50% 的人薪资低于 145,134。粗略估计,平均月薪过万是没问题的。
二线城市 Java 岗位年薪
二线城市很多,鱼皮就以自己的家乡徐州为例, 统计了全行业近一年共 16360 份样本。
先不区分从业经验,行业内 50% 的人薪资低于 79,839,是上海的一半都不到:
再看看从业 1 年以下(徐州应届生)的薪资,行业内 50% 的人薪资低于 64,065,差不多月薪 5k+ 的样子。
因为我从大学起就在上海,从出生起就在徐州,对这两个地方的物价和居住成本还是比较了解的。老实说,在这么明显的薪资差距的情况下,在上海性价比还是更高的,只不过生活节奏更快、压力也会更大一些。
Java 岗位任职年龄分布
如图,大多数都在 25 - 29 岁区间,35 岁以上寥寥无几。
Java 岗位月薪变化
如图,虽然近几个月略微下滑,但是相比 23 年同期还是高了的:
Java 岗位各地区薪资情况
如图,很显然一线城市和新一线城市的开发岗位薪资略胜一筹,符合常理。几乎所有跟程序员有关的岗位都是这个分布情况,下面我就不再重复列举了。
前端
全国前端岗位年薪
统计了全行业近一年共 13809961 份样本(比 Java 少了一半)。先不区分从业经验和城市,行业内 50% 的人薪资低于 107,293:
再看看从业 1 年以下(应届生)的薪资,行业内 50% 的人薪资低于 64,287:
显然,前端岗位的年薪是略低于 Java 后端的,毕竟入行的学习成本也相对低一些。
一线城市前端岗位年薪
以鱼皮现居的城市上海为例, 统计了全行业近一年共 1792498 份样本。先不区分从业经验,行业内 50% 的人薪资低于 184,960:
再看看从业 1 年以下(上海应届生)的薪资,行业内 50% 的人薪资低于 105,853。粗略估计,平均月薪过万可能是有点问题的。
二线城市前端岗位年薪
二线城市很多,鱼皮就以自己的家乡徐州为例, 统计了全行业近一年共 11365 份样本。
先不区分从业经验,行业内 50% 的人薪资低于 75,360:
前端岗位任职年龄分布
如图,大多数都在 25 - 29 岁区间,30 岁以上的比例都比较小了(比 Java 后端更小)。
前端岗位月薪变化
如图,虽然近几个月略微下滑,但是相比 23 年同期还是高了一些:
测试
全国测试岗位年薪
统计了全行业近一年共 10434253 份样本(比前端更少)。先不区分从业经验和城市,行业内 50% 的人薪资低于 95,298,比前端的薪资略低一些。
再看看从业 1 年以下(应届生)的薪资,行业内 50% 的人薪资低于 62,230:
一线城市测试岗位年薪
以鱼皮现居的城市上海为例, 统计了全行业近一年共 1814530 份样本。先不区分从业经验,行业内 50% 的人薪资低于 138,920,月薪过万。
再看看从业 1 年以下(上海应届生)的薪资,行业内 50% 的人薪资低于 97,489,月薪 8k 左右。
二线城市测试岗位年薪
二线城市很多,鱼皮就以自己的家乡徐州为例, 统计了全行业近一年共 1814 份样本(这个数据量明显小了很多)。
先不区分从业经验,行业内 50% 的人薪资低于 70,240:
测试岗位任职年龄分布
如图,大多数都在 25 - 29 岁区间:
测试岗位月薪变化
如图,相比 23 年同期薪资略微降低:
运维
全国运维岗位年薪
统计了全行业近一年共 5337753 份样本(比测试少一半)。先不区分从业经验和城市,行业内 50% 的人薪资低于 83,637,比测试更低一些。
再看看从业 1 年以下(应届生)的薪资,行业内 50% 的人薪资低于 55,567,月薪 4k+ 左右:
一线城市运维岗位年薪
以鱼皮现居的城市上海为例, 统计了全行业近一年共 729126 份样本。先不区分从业经验,行业内 50% 的人薪资低于 166,200。这个值比测试岗位略高一些。
再看看从业 1 年以下(上海应届生)的薪资,行业内 50% 的人薪资低于 99,808,月薪大概 8k+:
二线城市运维岗位年薪
二线城市很多,鱼皮就以自己的家乡徐州为例, 统计了全行业近一年共 6604 份样本。二线城市运维岗位的数量比测试岗位多了一些。
先不区分从业经验,行业内 50% 的人薪资低于 66,400:
可以看出,无论是程序员相关的什么岗位,收入区间分布基本都是一致的。
运维岗位任职年龄分布
如图,大多数都在 25 - 29 岁区间。但有趣的是,其他岗位都是 25-29 岁人数最多,这个岗位竟然反转了,24 岁以下就占了近 50%?!
这意味着什么呢?
新兴行业?培训的多?行业门槛低?从业后转行的多?我觉得这些原因多少都有一点。
运维岗位月薪变化
如图,年底的时候运维岗位的薪资有明显的增长,但目前的薪资和去年同期基本没有变化。
嵌入式
全国嵌入式岗位年薪
统计了全行业近一年共 2003779 份样本(比运维还少一半)。先不区分从业经验和城市,行业内 50% 的人薪资低于 132,651,比 Java 还高!
再看看从业 1 年以下(应届生)的薪资,行业内 50% 的人薪资低于 77,089:
一线城市嵌入式岗位年薪
以鱼皮现居的城市上海为例, 统计了全行业近一年共 275583 份样本。先不区分从业经验,行业内 50% 的人薪资低于 216,600,跟 Java 后端差不多:
再看看从业 1 年以下(上海应届生)的薪资,行业内 50% 的人薪资低于 109,236,比 Java 低一些,是不是说明了经验丰富的嵌入式工程师比 Java 后端更少呢?
二线城市嵌入式岗位年薪
二线城市很多,鱼皮就以自己的家乡徐州为例, 统计了全行业近一年共 2410 份样本。
先不区分从业经验,行业内 50% 的人薪资低于 110,040,比 Java 高了不少。
嵌入式岗位任职年龄分布
如图,大多数都在 25 - 29 岁区间,30 岁以上的比例也比其他岗位要高。
跟运维岗位一样,24 岁以下的从业者最多,说明嵌入式今年来入行的人数也在高速增长。
嵌入式岗位月薪变化
如图,嵌入式岗位的月薪相比去年有明显的涨幅:
算法
全国算法岗位年薪
统计了全行业近一年共 1201044 份样本。先不区分从业经验和城市,行业内 50% 的人薪资低于 168,409。毫无疑问薪资是最高的,比 Java 后端高个 30 - 40% 左右,毕竟入行门槛更高。
再看看从业 1 年以下(应届生)的薪资,行业内 50% 的人薪资低于 112,847:
一线城市算法岗位年薪
以鱼皮现居的城市上海为例, 统计了全行业近一年共 266993 份样本。先不区分从业经验,行业内 50% 的人薪资低于 311,519。基本上能入行,年薪就不会低于 18 万。
再看看从业 1 年以下(上海应届生)的薪资,行业内 50% 的人薪资低于 231,848。粗略估计,平均月薪 2w 左右。
二线城市算法岗位年薪
二线城市很多,鱼皮就以自己的家乡徐州为例, 统计了全行业近一年共 574 份样本。没错,只有 500 多份样本!
先不区分从业经验,行业内 50% 的人薪资低于 132,640,是上海的一半都不到。看来搞算法还是要去一线城市啊,毕竟很多大会也只会在一线城市举办。
算法岗位任职年龄分布
如图,绝大多数都在 25 - 29 岁区间(很多算法岗位的入行门槛是硕士研究生),30 岁以上的比例也占了 30%,说明有经验的算法工程师还是很吃香的。
算法岗位月薪变化
图虽然看着很陡峭,但其实就比去年同期涨了 200 多,变化不大。可以看到去年 7 - 8 月的时候算法工程师的薪资有明显的涨幅,盲猜是跟抢应届生人才有关。
以上就是本期分享,整理不易,有帮助的话记得给鱼皮点赞哦~
更多
💻 编程学习交流:编程导航
📃 简历快速制作:老鱼简历
✏️ 面试刷题神器:面试鸭
相关文章:

24 年程序员各岗位薪资待遇汇总(最新)
大家好,我是程序员鱼皮。今天分享 24 年 6 月最新的程序员各岗位薪资待遇汇总。 数据是从哪儿来的呢?其实很简单,BOSS 直聘上有一个免费的薪酬查询工具,只要认证成为招聘者就能直接看,便于招聘者了解市场,…...
Android SurfaceFlinger——系统动画服务启动(十四)
在了解了 SurfaceFlinger、HWC、OpenGL ES 和 EGL 等相关概念和基础信息后,我们通过系统动画的调用流程引入更多的内容。 一、解析init.rc 开机就启动进程,肯定就要从 rc 文件开始。负责开机动画的进程是 bootanimation。 1、bootanim.rc 源码位置:/frameworks/base/cmds…...

VaRest插件常用节点以及Http请求数据
1.解析json (1)Construct Json Object:构建json对象 (2)Decode Json:解析json 将string转换为json (3)Encode json:将json转换为string (4)Get S…...

【Linux】线程id与互斥(线程三)
上一期我们进行了线程控制的了解与相关操作,但是仍旧有一些问题没有解决 本章第一阶段就是解决tid的问题,第二阶段是进行模拟一个简易线程库(为了加深对于C库封装linux原生线程的理解),第三阶段就是互斥。 目录 线程id…...

JavaEE—什么是服务器?以及Tomcat安装到如何集成到IDEA中?
目录 ▐ 前言 ▐ JavaEE是指什么? ▐ 什么是服务器? ▐ Tomcat安装教程 * 修改服务端口号 ▐ 将Tomcat集成到IDEA中 ▐ 测试 ▐ 结语 ▐ 前言 至此,这半年来我已经完成了JavaSE,Mysql数据库,以及Web前端知识的学习了&am…...
主流分布式消息中间件RabbitMQ、RocketMQ
分布式消息中间件在现代分布式系统中起着至关重要的作用。以下是一些主流的分布式消息中间件: 1. Apache Kafka - 特点:高吞吐量、低延迟、持久化、水平可扩展、分布式日志系统。 - 使用场景:日志收集与处理、实时流处理、事件驱动架构、大数…...

【Unity Linux】模型导致的Unity项目崩溃
模型需勾选Strip Bones。如不勾选,则开启项目崩溃。 也可以删除有问题模型的.meta文件。 (Unity默认会自动勾选,所以不会崩溃) 或打开.meta文件,将optimizeBones的值,由0改为1。(对应面板上的…...
22222
12212...
大数据领域的常用开发语言详解
大数据开发语言主要包括以下几个,以下是它们在大数据开发领域的优缺点和应用场景的详细说明: 1. Java 优点: 跨平台性:Java的“一次编写,到处运行”的特性使得其可以轻松地运行在多个操作系统上。面向对象ÿ…...
SpringBoot设置自动跳转前端界面
一般情况下,我们的Application启动文件的内容为一行的运行代码,默认启动项目以后不会自动跳转到我们的前端页面 public static void main(String[] args) {SpringApplication.run(DemoApplication.class, args);} 这里我的可以通过设置文件的内容&#…...
vue3前端解析大数据返给的数据格式
# xxx:111111111111111\n\n## 2222:\n- 99999999。\n- 564566556。\n- ", npm install marked import {marked} from markedmarked(# xxx:111111111111111\n\n## 2222:\n- 99999999。\n- 564566556。\n-)//就可以解析成 《…...
Incremental Player Build
*未解决,仅作记录 Unity 版本 2021.3.15f1 问题 Unity 发布webgl 平台卡在Incremental Player Build 界面。 解决 未找到明确原因,简化工程路径后发布成功。...

快钱支付股东全部股权已被质押!
根据近期工商信息,第三方支付机构快钱支付清算信息有限公司(简称“快钱支付”)实际控股方快钱金融服务(上海)有限公司(简称“快钱金融”),作为出质股权标的企业,被出质给…...
【鸿蒙学习笔记】数据类型
官方文档:ArkTS语言介绍 目录标题 声明变量声明常量数据类型 缺:byte charNumber类型 short int long float doubleBoolean类型 booleanString类型Void类型Object类型Array类型Enum类型Union类型Aliases类型 [代码总结] 声明变量 let hi: string hel…...

SAP实现特别总账的凭证预制
SAP实现特别总账的凭证预制 仔细理解只有”其他”的特殊总帐标识才可预制凭证这句话. F-29/f-48不可预制。F-29/f-48预制时出现错误消息号 FP 030,提示特殊总帐标志类型“汇票和”预付定金“的特别总帐标志的过帐代码不能预制,这是系统写死的ÿ…...

鸿蒙 HarmonyOs 动画效果 快速入门
一、理论 1.1 animation属性 名称参数类型必填描述durationnumber否设置动画时长,默认值:1000,单位:毫秒temponumber否动画播放速度。数值越大,速度越快,默认为1curvestring | Curve否 设置动画曲线。 默…...
PyTorch学习之 torch.squeeze 函数
PyTorch学习之 torch.squeeze 函数 一、功能 torch.squeeze 的主要作用是从给定的张量 input 中移除所有尺寸为1的维度。 二、基本语法 torch.squeeze(input, dimNone)三、参数说明 input (Tensor): 输入的张量。dim (int, 可选): 指定要移除的尺寸为1的维度 如果未指定&am…...
达梦数据库系列—17. 主备集群搭建-实时主备
目录 配置实时主备 1、环境说明 2、数据准备 脱机备份、脱机还原方式 联机备份、脱机还原方式 3、配置主库 3.1 配置 dm.ini 3.2 配置 dmmal.ini 3.3 配置 dmarch.ini 3.4 配置 dmwatcher.ini 3.5 启动主库为mount 3.6 设置 OGUID 3.7 修改数据库模式 4、配置备库…...

【24医学顶刊】GANDALF:主动学习 + 图注意力变换器 + 变分自编码器,改善多标签图像分类
GANDALF:主动学习 图注意力变换器 变分自编码器,改善多标签图像分类 提出背景子解法1:多标签信息样本的选择子解法2:生成信息丰富且非冗余的合成样本 例子:胸部X射线图像分析传统方法的操作和局限GaNDLF方法的优势 工…...
Linux 权限介绍
文章目录 Linux 权限介绍权限类型权限的数字表示查看文件信息修改权限相关指令 Linux 权限介绍 在 Linux 系统中,权限管理是非常重要的一部分,它确保了系统的安全性和文件的合理访问。 权限类型 [ r ]代表可读(read)࿱…...

RocketMQ延迟消息机制
两种延迟消息 RocketMQ中提供了两种延迟消息机制 指定固定的延迟级别 通过在Message中设定一个MessageDelayLevel参数,对应18个预设的延迟级别指定时间点的延迟级别 通过在Message中设定一个DeliverTimeMS指定一个Long类型表示的具体时间点。到了时间点后…...

剑指offer20_链表中环的入口节点
链表中环的入口节点 给定一个链表,若其中包含环,则输出环的入口节点。 若其中不包含环,则输出null。 数据范围 节点 val 值取值范围 [ 1 , 1000 ] [1,1000] [1,1000]。 节点 val 值各不相同。 链表长度 [ 0 , 500 ] [0,500] [0,500]。 …...

P3 QT项目----记事本(3.8)
3.8 记事本项目总结 项目源码 1.main.cpp #include "widget.h" #include <QApplication> int main(int argc, char *argv[]) {QApplication a(argc, argv);Widget w;w.show();return a.exec(); } 2.widget.cpp #include "widget.h" #include &q…...

MODBUS TCP转CANopen 技术赋能高效协同作业
在现代工业自动化领域,MODBUS TCP和CANopen两种通讯协议因其稳定性和高效性被广泛应用于各种设备和系统中。而随着科技的不断进步,这两种通讯协议也正在被逐步融合,形成了一种新型的通讯方式——开疆智能MODBUS TCP转CANopen网关KJ-TCPC-CANP…...
【C语言练习】080. 使用C语言实现简单的数据库操作
080. 使用C语言实现简单的数据库操作 080. 使用C语言实现简单的数据库操作使用原生APIODBC接口第三方库ORM框架文件模拟1. 安装SQLite2. 示例代码:使用SQLite创建数据库、表和插入数据3. 编译和运行4. 示例运行输出:5. 注意事项6. 总结080. 使用C语言实现简单的数据库操作 在…...
GitHub 趋势日报 (2025年06月06日)
📊 由 TrendForge 系统生成 | 🌐 https://trendforge.devlive.org/ 🌐 本日报中的项目描述已自动翻译为中文 📈 今日获星趋势图 今日获星趋势图 590 cognee 551 onlook 399 project-based-learning 348 build-your-own-x 320 ne…...

wpf在image控件上快速显示内存图像
wpf在image控件上快速显示内存图像https://www.cnblogs.com/haodafeng/p/10431387.html 如果你在寻找能够快速在image控件刷新大图像(比如分辨率3000*3000的图像)的办法,尤其是想把内存中的裸数据(只有图像的数据,不包…...

MyBatis中关于缓存的理解
MyBatis缓存 MyBatis系统当中默认定义两级缓存:一级缓存、二级缓存 默认情况下,只有一级缓存开启(sqlSession级别的缓存)二级缓存需要手动开启配置,需要局域namespace级别的缓存 一级缓存(本地缓存&#…...
LCTF液晶可调谐滤波器在多光谱相机捕捉无人机目标检测中的作用
中达瑞和自2005年成立以来,一直在光谱成像领域深度钻研和发展,始终致力于研发高性能、高可靠性的光谱成像相机,为科研院校提供更优的产品和服务。在《低空背景下无人机目标的光谱特征研究及目标检测应用》这篇论文中提到中达瑞和 LCTF 作为多…...

mac:大模型系列测试
0 MAC 前几天经过学生优惠以及国补17K入手了mac studio,然后这两天亲自测试其模型行运用能力如何,是否支持微调、推理速度等能力。下面进入正文。 1 mac 与 unsloth 按照下面的进行安装以及测试,是可以跑通文章里面的代码。训练速度也是很快的。 注意…...