技术的鄙视链,其实是职业天花板问题

程军 军哥手记
见字如面 , 我是军哥 。
今天在脉脉看到这么一个帖子 , 我觉得挺有意思的 , 就是技术鄙视链 , 如下图所示:
技术的鄙视链,其实是职业天花板问题文章插图
关于这个排序 , 我有不同的看法 , 我相信你也很感兴趣 , 且听我娓娓道来 。
今天的文章从「我的排序、为什么这么排」两个方面依次聊聊 。
1.我的排序
我有15年IT行业从业经验 , 从程序员干到大厂的技术总监 , 经历了3家1000+人技术产品团队规模的公司 , 我对这话题还是有一定发言权的 。
我的排序是这样:
顶端:算法、基础架构、后端
第二层:大数据、游戏开发;
第三层:前端、客户端、小程序;
第四层:测试开发、运维开发、DBA;
底层:运维、测试 。
IT软件行业发展到今天 , 工种是特别细和全了 。
我的排序和脉脉这位朋友主要差别是:
第一、基础架构应该也在顶端;
第二、前端开发、客户端、小程序应该排在测试开发、运维开发和DBA的前面 。
为什么我是这么排序的?请继续看下文 。
2.为什么这么排
我的排序本质从以下三个方面来分析和思考的:
第一、平均工资;
我从职友网() , 找了如下几个职位平均工资 , 从这些数据可以看出一些端倪 。
技术的鄙视链,其实是职业天花板问题文章插图
技术的鄙视链,其实是职业天花板问题文章插图
第二、写代码熟练程度;
第一层 , 我相信大部分程序员都学过算法和数据结构 , 但是那离真的算法工程师差太远了 , 请看如下图所示的算法职位的JD:
技术的鄙视链,其实是职业天花板问题文章插图
也正是因为这个原因 , 算法门槛高 , 在顶层也无可厚非了 。
基础架构这个岗位确实备受瞩目 , 毕竟小公司根本没有这个岗位 , 一般公司的业务或者团队到了一定规模才需要 , 而这个岗位需要更扎实基础和技术硬核实力 , 且在各种场景实践过 。
【技术的鄙视链,其实是职业天花板问题】所以 , 他们两在顶端是毋庸置疑的 。
后端在一家公司人数肯定是最多的人群 , 同时也是非常重要岗位 。
为什么呢?
第一、现有软件工程架构下 , 后端需要人数也是居多的;例如一家互联网公司 , 产品:后端:测试的比例是1 : 4 或5 : 1 , 这是相对比较健康的配比 。
第二、复杂业务逻辑都在后端;
第三、后端前面是前端 , 依赖基础架构 , 相当于粘合剂的作用 , 重要性不言而喻 。
第二层 , 为什么是大数据、游戏开发?这两个职位 , 市场上需要的人数相对第一层少些 , 影响力规模效应差很多 。
第三层 , 为什么是前端、客户端、小程序?这三个岗位也需要编程 , 但是他们的业务逻辑比后端简单 , 并且从软件架构易升级、易扩展来说 , 也不适合将太多的逻辑放在前端或者客户端 , so也就排到第三层了 。
第四层 , 为什么是测试开发、运维开发、DBA?测试开发是开发能力不如开发 , 然而比单纯的功能测试强一点 , 代码能力上不上 , 下不下的 , 而运维开发或者DBA呢 , 他们本质上属于运维范畴 , 这就可想而知了 。
至于底层 , 为什么是运维和测试?运维是管机器、网络、部署程序员打包好的软件的 , 很明显这个职位离写代码太远了 , 而这里测试主要指功能测试岗位 , 这类人群代码能力是非常弱的 , 排到最后一层也就不难理解了 。
第三、也就是最重要的一点 , 我认为是职场天花板;
我认识全国几百位技术总监或者CTO , 假设以上讨论这些职位的最终目标是CTO的话 , 从我观察来看能做到CTO , 排名第一之前背景都是基础架构、算法或后端 。 第二是大数据和游戏开发背景的;第三是前端、客户端和小程序的背景的 ,