2024!再见前端!
各位朋友大家晚上好,夜深了,睡不着,想想还是写一篇文章和大家说再见吧!
自2014年入行前端以来,满打满算差不多整整十年了,这十年可以说是见证了中国整个互联网的起飞到全盛时期。这期间经历了电商、金融、工业等触网和起飞。
记得2014年的时候,那时候在上海会JQuery加Css3就不得了,几乎分分钟可以月入上万,这对农村出生穷惯了的心态触动非常大,家乡很多人的薪资还在三五千左右。因为虽然我是个专科,但是由于踏上前端开发这条路,薪资力压很多之前中学期间成绩比我好考上本科的同学,所以无比信奉一句话,叫做选择大于努力。
但是后来这个行业入门的门槛就越来越高了,因为起初入行的时候哪怕不会任何js,只会html+css就能找到一个工作,你有机会在公司里面逐渐由写页面逐渐过渡到写js逻辑。
但是2015年左右,这个行业经历了非常快速的发展,从面试题上就可以看得出来,从问css盒模型到JQ的底层实现原理,又从JQ和seaJS到angularJS,又到了nodeJS和各种基于nodeJS的脚手架,前端工程化逐渐成型,又到后面vue、react、angularJS,面试题的覆盖内容越来越广,从基本的页面功能如何实现逐步向面试者和面试官互相吹比忽悠的方向进发,这个市场变得玄幻起来,面试题也从一开始怎么处理字符串以及数组,向算法、设计模式、框架底层原理、脚手架原理及配置方向演化。
而且在每一轮新技术爆发的时候,市场上薪资基本上都会迎来一波暴涨,比如nodeJS刚火的时候,市场价月薪一度达到三四万,以及后面的H5爆火,能做的就更多了,比如大数据的界面可视化,小程序和APP开发,视频聊天,网页3D等等等等,游戏前端单独拿出来也有三四万的月薪,后面市场上的数据孪生和智慧园区、智慧工厂等项目,一度出现前端3D也就是WebGL技术也达到三四万月薪的程度,2021年左右的新冠疫情期间线上办公大火,也带火了前端的WebRTC视频通信技术。到了后来,前端几乎无所不能,可以做网页,可以做APP,可以做小程序,甚至于不用后端,前端可以用nodeJS把后端的活干了。所以那时候前端的一些技术群里面总有人调侃,“JavaScript终将统治世界”;所以这些年来单纯的为了高薪,日以继夜的学习各种新技术,算不上技术大牛,但是我自认为是个前端老鸟,这个定位是说,我不一定对你说的那块技术特别精通,但是我可以大概的搭上半句话而已。
自2023年以来,整个前端迎来一波急速的寒潮,所有人都慌了神。我是2021年到2023年末开软件公司自主创业,那时候感觉不到市场上工作难找,因为我是老板,没有在找工作,但是只有一个感觉,那就是市面上找工作的人特别多,哪怕是我在招聘网站上薪酬只挂个两千,每天依然有非常多的人找我打招呼。
后面也就是到了2023年末,我关闭了公司,主要原因有两个,一个是老客户的款要不回来,二是新客户开发及其困难并且伴随着高昂的差旅费,也就是我们的坐标是上海,而意向客户在成都或者沈阳那种,有的跑好几次,最终还是没有敲定下来合同,很多人说你怎么不找本地的客户,那不是没找到嘛,不然谁愿意舍近求远。
公司关闭之后,开始找工作,那时候真的有一种天塌了的感觉,甚至比公司破产关了还令人窒息,下了5个求职APP,启动付费会员全量海投,绝大部分的打招呼信息过了一个多星期还是未读。这比面试了没通过让你等通知还让人崩溃,因为面试没通过,那是咱技术不行,回去在看看书总结总结,这个市场需求还在,已读不回的话说明不符合人家要求,但是投出去的简历绝大部分未读,而不是已读不回,这说明这个市场压根就没需求,再后来当我得知身边的一些HR朋友都在找工作的时候,我就心想完了,这肯定是很多公司裁员之后把HR也裁了。事实也如期所致,有一位曾经在某500强做HR的朋友被裁之后,她说已经找了快一年工作了,之前差不多有18K,现在只要之前的三折,只要五六千就行,但是依然找不到工作。她给我打电话的时候说已经找了大半年的工作了,一直渺无音信,听说我开公司当老板了,现在只要给她五千块钱一个月就跟我混了,一时间令我无法相信,我只能很遗憾的告诉她公司倒闭了,她叹了一口气没有说什么。
我每天早上八点半准时刷新着各大招聘APP,为了更高效率,把一开始的打招呼语“在么”,改成一大段自我介绍,但是由于字数的限制,做了反覆的调整,大概如下:
您好,我认为我非常适合贵公司的前端岗位,
本人具备十年前端开发经验,带过团队,做过电商、金融、医疗和数据大屏相关项目;
熟悉ES6、TS和Canvas、VUE2/3、具备原生小程序和uniapp开发小程序经验,对网页3D ThreeJS和WebRTC视频通信有所了解,可以沟通一下吗?
每天早上一醒来就开始刷招聘APP一直刷到晚上十一点多,这种生活具体忘了持续了多久,总之非常难熬,因为一直没有人回复我,大部分一直都是未读,最终有个HR回复我了说他们招一个做数据大屏的,我就说我干过可以安排面试,直接就面通过了。
刷了那么久只有这一个offer只能去了,但是到后来到公司报道的时候才知道这个工作有多不理想,给大家说一下,是A外包公司把我派到B外包公司,B外包公司又把我派到C某个政府部门做政府大屏,外包就外包吧,还外包了两次,到了项目组才知道,这都不属于项目外包,纯粹的人力外包,这个项目组的成员集全了某广数科、某达信息、某本信息、某讯等等不同的公司的人凑成了这么个项目组,说到工作也没有啥具体的工作,说是写数据大屏,我就写了两个数据大屏后面一直没有后端数据支撑,天天在那干坐着,同事之间极少交流,也没有用一个像样的组织沟通软件比如飞书或者钉钉之类的,所有的沟通都通过微信,但是电脑又装了监控软件,所以我只能用我的微信小号登录在电脑上,但是一开始我用微信大号加的HR,然后HR把我推给项目负责人,那个人又把我大号拉到微信群里了,这就导致了后面每次文件传输我都要把微信大号的文件转给小号,才能在电脑上打开。到后面我也明白了,这里的项目都是走过场的,主要是忽悠考察领导的,主要是大屏要闪闪的布灵布灵的炫,后台要么没有后台支撑要么直接没数据前端直接造,工作负荷基本上没有,每周开一次例会,写完两个页面之后,天天在那干坐着,上午去等中饭,吃完中饭等下班,从不加班,因为有个人要锁门。不过在试用期的最后一天被辞退,理由是业绩不达标,我当时甚至一度想爆粗口,“你分配工作了吗?”,在那边三个月,只写了两个大屏页面,没有任何后台数据支撑,然后就没有分配任何任务了,天天干坐着,所以辞退很正常,可能是要被忽悠的领导要走了。
后面又艰难的找工作,依然很难,每天醒来就刷招聘APP,再一次被忽悠进外包,因为只有这一个回复的,那感觉真的是一言难尽,现在的外包公司为了逃避和分摊责任,他们会安排你进A外包公司签订劳动合同,社保由B公司给你交,工资由C公司给你发,然后让你到D公司干活。我在抖音上看到一个律师分析,这样一旦发生劳动纠纷的时候,
A公司就说,虽然我和他签订了劳动合同,但是没有发生实质性劳动关系,因为工资和社保不是我发的,他也没有给我提供劳动,所以主张劳动关系无效。
B公司说,我们虽然给他交了社保,但是我和他之间并不存在劳动关系,因为一没有劳动合同,二没有给我提供实际的劳动,三薪酬也不是我发的,我们只是受A委托代缴社保而已,我和他之间不存在劳动关系。
C说我们只是代发工资的啊,劳动合同、劳动关系、劳动实际服务单位都不是我,社保也不是我交的,劳动关系无从谈起啊。
D说我们签的是外包劳务商业合作合同啊,并不是和当事人的劳动合同。
一旦发生劳动维权争议,而这ABCD这几家公司注册地分布位于华东、华北、华南、西北几个地方,来回奔波的维权成本是不是极大。
果不其然,没干多久,项目群的人数以肉眼可见的速度在缩减,这个甲方的项目做的差不多了,又被辞退了。也就是最近吧。
现在我已经决定不在再做前端了,回老家休息一段时间,在考虑后面的路怎么走,这是我的最后一篇博客,只希望致辞致敬我曾经在这个行业奋斗的日子。
我个人认为前端的黄金时段已经过去了,而且就算后面互联网行业或者经济再复苏,纯粹的前端需求量也没那么大了。有这样几个理由:
1、前端真正的价值在于C端应用,因为C端应用需要精致、需要有好的用户体验,但是就目前而言C端应用市场几乎每个细分赛道都发掘的差不多了,不管是金融、电商、外卖、出行等等等等,只有市场的资本都在投入这个赛道在抢人的时候,才会爆发大量的招聘需求。举个例子,不是因为美团导致这个市场有大量的IT招聘,而是因为千团大战才会迸发出大量的招聘需求;不是因为陆金所导致的大量的互联网金融IT岗位,而是因为那一段时间市场涌现了大量的类似服务平台。大家要明白这个道理。而在互联网界某个细分赛道一旦出现一个超级头部公司,后面就很难在这个细分赛道出现一堆出现规模性招聘的公司,而可以发掘的赛道越来越少,就意味着机会越来越少。
2、由于低代码平台的高速发展,低代码平台从智障到现在一般化,到后面可能会发生飞跃,因为他的智能化程度伴随着人工智能的高速发展,迭代速度极快,成本相对人工而已基本上属于极低,而且国外和国内的大公司都在积极突破更智能的低代码平台。
3、编译器平台的出现,国内也有公司一直在探索,如何实现一套代码可以编译出安卓、鸿蒙、IOS、甚至小程序,这也意味着招聘量可以进一步压缩。
4、产业互联网的发展,原来都是做电商、外卖,现在变成做直播、会议平台、智慧园区、数字工厂等等,这就意味着原本非常专业的事情,可以逐渐抽离出来成为商用SDK,比如说原来需要花三四万招一个能做直播推流的前端,我现在只要花12k招一个会调用SDK就行了。商用SDK的发展,使得原来需要大规模开发某个功能的人数进行了大规模的压缩。
5、由于互联网的风向逐渐由C端市场向产业互联网行进,也就是由C端向B端行进,对功能的注重远大于界面的美化,所以我们看到很多各式各样的管理系统都是千篇一律的左侧菜单右边表单加列表,这就使得很多企业直接把前端岗位去掉了,加上一些便捷的开源项目框架比如:若依、小诺等,后端只需要简单的学习就可以开发一套表单加列表的管理系统。
6、说的自身的现实原因,年纪大了,熬不动了,加上极不稳定的职场环境,不想干了,后面可能回家做点小生意或者找个厂打螺丝了。
对于后来的同学们,也不用过于悲观,如果你真的热爱编程,我希望你了解前端但不要局限于前端,要知道高薪工作有很多,不是一定要从事程序开发。对于你的同事和领导,尽量不要透露你的家境、有没有对象或者有没有结婚、有没有买房有没有买车、有没有贷款等,这样会少很多被拿捏的把柄。如果你正在学习某项技术,尽量不要在学习的过程中表现出来,比如你现在是前端,但是正在学Go或者python,请不要把正在学表现出来,因为这几乎表示你当前的工作不饱和,并且给人感觉将来可能会对同组的同事甚至领导产生威胁而被针对。
好了,就说这么多,再见了各位朋友们!
相关文章:
2024!再见前端!
各位朋友大家晚上好,夜深了,睡不着,想想还是写一篇文章和大家说再见吧! 自2014年入行前端以来,满打满算差不多整整十年了,这十年可以说是见证了中国整个互联网的起飞到全盛时期。这期间经历了电商、金融、…...

【源码+文档+调试讲解】人事管理系统设计与实现Python
摘 要 人事管理系统的目的是让使用者可以更方便的将人、设备和场景更立体的连接在一起。能让用户以更科幻的方式使用产品,体验高科技时代带给人们的方便,同时也能让用户体会到与以往常规产品不同的体验风格。 与安卓,iOS相比较起来ÿ…...

基于注意力机制的图表示学习:GRAPH-BERT模型
人工智能咨询培训老师叶梓 转载标明出处 图神经网络(GNNs)在处理图结构数据方面取得了显著的进展,但现有模型在深层结构中存在性能问题,如“悬挂动画问题”和“过平滑问题”。而且图数据内在的相互连接特性限制了大规模图输入的并…...

linux服务器安装原生的php环境
在CentOS上安装原生的PHP环境相对简单。下面是一个详细的步骤指南,适用于CentOS 7及更高版本。 ### 第一步:更新系统 首先,确保你的系统是最新的: sudo yum update -y ### 第二步:安装EPEL和Remi仓库 1. **安装EP…...

数电学习基础(逻辑门电路+)
1.逻辑门电路 1.1逻辑门电路的简介 1.1.1各种逻辑门电路的简介 基本概念 (1)实现基本逻辑运算和常用逻辑运算的电路称为逻辑门电路,简称门电路。逻辑门电路是组成各种数字电路的基本单元电路。将构成门电路的元器件制作一块半导体芯片上再…...
【艾思科蓝】Spring Boot实战:零基础打造你的Web应用新纪元
第七届人文教育与社会科学国际学术会议(ICHESS 2024)_艾思科蓝_学术一站式服务平台 更多学术会议请看:https://ais.cn/u/nuyAF3 目录 一、Spring Boot简介 1.1 Spring Boot的诞生背景 1.2 Spring Boot的核心特性 二、搭建开发环境 2.1…...

C++ 二叉树
1. 二叉搜索树 1.1 二叉搜索树概念 二叉搜索树又称二叉排序树,他或者是一棵空树,或者是具有以下性质的二叉树: ①若它的左子树不为空,则左子树上所有节点的值都小于根节点的值 ②若它的右子树不为空,则右子树上所有节…...
初探IT世界:从基础到未来
初探IT世界:从基础到未来 1. 引言 随着科技的不断发展,IT(信息技术)已经成为全球经济的支柱之一。从软件开发、网络安全到数据分析和人工智能,IT 领域为我们的日常生活提供了许多不可或缺的技术服务。无论你是初学者…...

一区黏菌算法+双向深度学习+注意力机制!SMA-BiTCN-BiGRU-Attention黏菌算法优化双向时间卷积双向门控循环单元融合注意力机制多变量回归预测
一区黏菌算法双向深度学习注意力机制!SMA-BiTCN-BiGRU-Attention黏菌算法优化双向时间卷积双向门控循环单元融合注意力机制多变量回归预测 目录 一区黏菌算法双向深度学习注意力机制!SMA-BiTCN-BiGRU-Attention黏菌算法优化双向时间卷积双向门控循环单元…...

机器翻译之Bahdanau注意力机制在Seq2Seq中的应用
目录 1.创建 添加了Bahdanau的decoder 2. 训练 3.定义评估函数BLEU 4.预测 5.知识点个人理解 1.创建 添加了Bahdanau的decoder import torch from torch import nn import dltools#定义注意力解码器基类 class AttentionDecoder(dltools.Decoder): #继承dltools.Decoder写…...

MyBatis 入门教程-搭建入门工程
Maven作为一个优秀的项目构建和管理工具,在日常的开发中被大多数开发者使用,后续的项目也是基于Maven来构建。 创建一个Maven项目 利用IDEA创建项目工具来创建一个Maven项目 添加MyBatis的依赖 这里可以从Maven仓库地址中进行查看, https://mvnrepository.com/ 从这里可…...

CVE-2024-2389 未经身份验证的命令注入
什么是 Progress Flowmon? Progress Flowmon 是一种网络监控和分析工具,可提供对网络流量、性能和安全性的全面洞察。Flowmon 将 Nette PHP 框架用于其 Web 应用程序。 未经身份验证的路由 我们开始在“AllowedModulesDecider.php”文件中枚举未经身份验证的端点,这是一个描…...

C++初阶-list用法总结
目录 1.迭代器的分类 2.算法举例 3.push_back/emplace_back 4.insert/erase函数介绍 5.splice函数介绍 5.1用法一:把一个链表里面的数据给另外一个链表 5.2 用法二:调整链表当前的节点数据 6.unique去重函数介绍 1.迭代器的分类 我们的这个迭代器…...

【智能大数据分析 | 实验一】MapReduce实验:单词计数
【作者主页】Francek Chen 【专栏介绍】 ⌈ ⌈ ⌈智能大数据分析 ⌋ ⌋ ⌋ 智能大数据分析是指利用先进的技术和算法对大规模数据进行深入分析和挖掘,以提取有价值的信息和洞察。它结合了大数据技术、人工智能(AI)、机器学习(ML&a…...
Git 版本控制--git restore和git reset
git restore 和 git reset 是 Git 版本控制系统中两个用于撤销更改的命令,但它们的作用范围和用途有所不同。 git restore git restore 是 Git 版本控制系统中的一个命令,用于撤销工作目录中的更改,但不影响暂存区(staging area…...

DBAPI如何实现插入数据前先判断数据是否存在,存在就更新,不存在就插入
DBAPI实现数据不存在即插入、存在即更新 场景 往数据库插入数据的时候,需要先判断一下记录是否在数据库已经存在,如果已经存在就更新记录,如果不存在,才插入数据。 实现方案 采用存储过程实现,以mysql为例子 创建存储过…...

【渗透测试】-灵当CRM系统-sql注入漏洞复现
文章目录 概要 灵当CRM系统sql注入漏洞: 具体实例: 技术名词解释 小结 概要 近期灵当CRM系统爆出sql注入漏洞,我们来进行nday复现。 灵当CRM系统sql注入漏洞: Python sqlmap.py -u "http://0.0.0.0:0000/c…...
c语言练习题1(数组和循环)
1实现一个对整形数组的冒泡排序 冒泡排序(Bubble Sort)是一种简单的排序算法。它重复地遍历要排序的数列,一次比较两个元素,如果它们的顺序错误就把它们交换过来。遍历数列的工作是重复进行的,直到没有再需要交换的元…...

实验3 Hadoop集群运行环境搭建和使用
实验3 Hadoop集群运行环境搭建和使用 一、实验介绍 本节实验旨在引导学生通过实际操作搭建一个基本的Hadoop集群,并进行基本的使用验证。实验包括在集群节点上添加域名映射以实现节点间的相互识别,配置免密SSH登录以便无密码访问各节点,安装和配置JDK以满足Hadoop的运行需求…...

前端文件上传全过程
特别说明:ui框架使用的是蚂蚁的antd 这里主要是学习前端上传接口的传递参数包括前端上传之前对于代码的整理 一、第一步将前端页面画出来 源代码: /** 费用管理 - IT费用管理 - 费用数据上传 */ import { useState } from "react"; import {…...

多模态2025:技术路线“神仙打架”,视频生成冲上云霄
文|魏琳华 编|王一粟 一场大会,聚集了中国多模态大模型的“半壁江山”。 智源大会2025为期两天的论坛中,汇集了学界、创业公司和大厂等三方的热门选手,关于多模态的集中讨论达到了前所未有的热度。其中,…...
pam_env.so模块配置解析
在PAM(Pluggable Authentication Modules)配置中, /etc/pam.d/su 文件相关配置含义如下: 配置解析 auth required pam_env.so1. 字段分解 字段值说明模块类型auth认证类模块,负责验证用户身份&am…...
连锁超市冷库节能解决方案:如何实现超市降本增效
在连锁超市冷库运营中,高能耗、设备损耗快、人工管理低效等问题长期困扰企业。御控冷库节能解决方案通过智能控制化霜、按需化霜、实时监控、故障诊断、自动预警、远程控制开关六大核心技术,实现年省电费15%-60%,且不改动原有装备、安装快捷、…...

【CSS position 属性】static、relative、fixed、absolute 、sticky详细介绍,多层嵌套定位示例
文章目录 ★ position 的五种类型及基本用法 ★ 一、position 属性概述 二、position 的五种类型详解(初学者版) 1. static(默认值) 2. relative(相对定位) 3. absolute(绝对定位) 4. fixed(固定定位) 5. sticky(粘性定位) 三、定位元素的层级关系(z-i…...
Frozen-Flask :将 Flask 应用“冻结”为静态文件
Frozen-Flask 是一个用于将 Flask 应用“冻结”为静态文件的 Python 扩展。它的核心用途是:将一个 Flask Web 应用生成成纯静态 HTML 文件,从而可以部署到静态网站托管服务上,如 GitHub Pages、Netlify 或任何支持静态文件的网站服务器。 &am…...
spring:实例工厂方法获取bean
spring处理使用静态工厂方法获取bean实例,也可以通过实例工厂方法获取bean实例。 实例工厂方法步骤如下: 定义实例工厂类(Java代码),定义实例工厂(xml),定义调用实例工厂ÿ…...
【学习笔记】深入理解Java虚拟机学习笔记——第4章 虚拟机性能监控,故障处理工具
第2章 虚拟机性能监控,故障处理工具 4.1 概述 略 4.2 基础故障处理工具 4.2.1 jps:虚拟机进程状况工具 命令:jps [options] [hostid] 功能:本地虚拟机进程显示进程ID(与ps相同),可同时显示主类&#x…...

Maven 概述、安装、配置、仓库、私服详解
目录 1、Maven 概述 1.1 Maven 的定义 1.2 Maven 解决的问题 1.3 Maven 的核心特性与优势 2、Maven 安装 2.1 下载 Maven 2.2 安装配置 Maven 2.3 测试安装 2.4 修改 Maven 本地仓库的默认路径 3、Maven 配置 3.1 配置本地仓库 3.2 配置 JDK 3.3 IDEA 配置本地 Ma…...

R 语言科研绘图第 55 期 --- 网络图-聚类
在发表科研论文的过程中,科研绘图是必不可少的,一张好看的图形会是文章很大的加分项。 为了便于使用,本系列文章介绍的所有绘图都已收录到了 sciRplot 项目中,获取方式: R 语言科研绘图模板 --- sciRplothttps://mp.…...

android13 app的触摸问题定位分析流程
一、知识点 一般来说,触摸问题都是app层面出问题,我们可以在ViewRootImpl.java添加log的方式定位;如果是touchableRegion的计算问题,就会相对比较麻烦了,需要通过adb shell dumpsys input > input.log指令,且通过打印堆栈的方式,逐步定位问题,并找到修改方案。 问题…...