对编程开发人员在今年的一些建议
一、今年的大环境
这几天身体不太好,又不断看到地狱级的就业问题。所以有些想法想和大家分享一下,并提出自己的一些想法和建议。今年的大环境不好,做为非专业人士,咱们也不分析,以免贻笑大方。但针对大环境下的计算机特别是编程这个行业可以有一些切身的经验来讨论一下。
目前大家都看到的是,互联网大厂没事儿就在做架构调整,这个意思大家应该明白是什么意思。中型互联网公司基本是就是一刀斩,除了个别赢利的项目大多已经被砍掉了。更可怕是的,这种一刀斩,不是一锤子买卖,而是不断的来一刀斩。微小软件企业,是重灾区,可能晚上还在加班,第二天来了公司没了。
依赖融资的,今年融资几乎难到了天上。靠产品的,销售量也大符下降。下降其实不可怕,可怕的是某些行业开始大幅的拖欠销售款。许多中小型公司就这样被拖垮了。
二、具体的情况
从目前来看,身边大厂的朋友基本上还在就业的都人心惟危,被裁员的,很难找到一个匹配的工作。能够说象以前一样舒适的,只有极个别的名校毕业且在大厂从事AI算法研究的。
从身边的就业情况看,一般来说,学历高,学历背景好的开发人员,仍然有较大的竞争优势。比如名校的本科以上学历,硕士以上学历的,一般即使遇到二次就业的情况,仍然还是能够比较快速找一个相对比较匹配的工作。这个匹配,包括工作环境、薪资、福利等等。
这里面有一个重要的问题需要提及,那就是年龄。目前来看,身边开发者二次就业最难的有以下几种情况:
1、年龄大于38岁以上
这个好理解,年龄大,公司不好PUA,不好裁员,不好…,反正大了是原罪。但需要说明的是,年龄大,但背景好、学历高并且技术一直处于上升的开发者来说,仍然影响不大。
2、本科以下学历
典型的就是前端,大家如果有心看一下,前端的就业者,学历高的凤毛鳞角。特别在中小企业,几乎都是一些没有学历或者上过培训班的开发者,他们本身就不是热爱编程而是热爱编程可能带来的高薪。这也不难理解为什么这次前端是重灾区的原因。
3、选错行业或者选错语言的开发者
男怕选错行么,这个没办法。比如做MIS开发的,可能现在很多人都不知道MIS是啥。如果没有及时转的,估计现在只能叹息了。
4、技术停滞的开发者
这种开发者众多,很多人在进入某个公司后,特别是进入大厂后,在掌握了当前工作需要的技能后,便不再寻求突破。倒也不能说混日子,工作仍然是踏实的推进完成。但就是丧失了进取心。那么当到达35岁时,又逢现在的大周期,刀就砍过来了。大量大厂的从业人员被开,这类人,占相当大的比重,其中,不乏有名校毕业生。
还是那句话,这里不讨论原因,只分析具体情况,许多事情,我们是无法控制的。说多了,可能还会有莫名之祸。说句不太恰当的话,只能适应。存人失地,则人地皆存。我们自己就是最重要的资本。
三、一些建议
针对上面的情况。个人有一些具体的建议,当然不是提倡卷,但现在的这个环境下,不卷又能怎么办?有办法,那就是RUN出去。但对绝大多数人来说这是不太可能的事情,所以咱们就时论事,提几个建议讨论一下:
1、找准一个未来五到十年比较有发展的方向,研究开发并深耕业务。举个简单例子,搞医疗的某个行业,比如CT设备。
2、学习一些不太容易淘汰的语言工具,如C/C++,并适当跟进一些有前途的新语言,如Rust。可能会有一些意外的小惊喜。
3、做一个能在一线战斗的资深专家级架构师。或者说能架构,能开发,能耍酷,最重要的是能解决问题。
4、针对自身的环境做反思,该抛弃快速抛弃,该坚持继续深耕。该转移阵地,要根据自身情况大胆转移阵地。比如搞PHP的赶紧放弃,但放弃不是一下子就啥都不干了,要坚持住的同时最大速度的学习另外的工具语言。
5、交朋友。特别是技术好、人品好、人缘好的朋友。
6、改造我们学习,不断的学习进步。多读书,多开拓视野。
7、积极向上,乐观豁达,坚强勇敢,善于斗争。
8、有一个健康的身体并坚持锻炼。
哪些行业有发展前途,真不好说,但有一些不好的,肯定是知道的。比如前端特别是移动前端,近期虽有恢复,但整体已经远不如前。Java,在就业上有较大退步,但仍然得承认,瘦死的骆驼比马大。行业里最典型的就是VR、虚拟人、元宇宙等等。这里提一个比较特殊的如军工行业,这个行业没有大家想象的好,国企不知道,但相关的私企基本就是三天打鱼两天晒网。
所以,在这个经济大周期中,行业就是就业的先导,然后是技术本身,再是绸缪未雨。如果个人的能力不是多么突出,不建议强行跳槽,目前仍然以稳定现在,准备未来,防止意外三种情况为主。
稳定现在就是保持现有的工作稳定性,不到万不得已,不主动辞职;准备未来就是这个大周期下,特别是年轻人,要积极准备未来周期向上的技术和知识内容;防止意外就是针对可能公司的意外倒闭、裁员等要有准备,比如学会节流,要保持有现金流,尽量杜绝个人的非必要消费。
所有的一切,都要根据自身的情况来具体的分析,而不要盲从。自己把握自己的人生,要不断的反思复盘得失,不断的努力学习。
四、总结
人生就是这样,我们经历了四十年蓬勃向上的快速发展,让很多人误以为奋斗是可以改变命运。这句话其实不完全对,真正改变命运的是奋斗和机遇。可这四十年,是有历史以来,最为机会丰富和频出的时代。可以这样说,机会才能使奋斗转变为真正的命运改变。纵览历史,这段时间是一个历史的偶然时代而非常态,所以需要后来者放平心态,不辍努力,但也要睁大眼睛,去发现并千方百计的抓住那愈来愈少的机会。
读书可以改变命运,学历决定未来的往昔,已经如烟一样的开始幻灭!
相关文章:

对编程开发人员在今年的一些建议
一、今年的大环境 这几天身体不太好,又不断看到地狱级的就业问题。所以有些想法想和大家分享一下,并提出自己的一些想法和建议。今年的大环境不好,做为非专业人士,咱们也不分析,以免贻笑大方。但针对大环境下的计算机…...

VSCode设置好看清晰的字体!中文用鸿蒙,英文用Jetbrains Mono
一、中文字体——HarmonyOS Sans SC 1、下载字体 官网地址:https://developer.huawei.com/consumer/cn/design/resource/ 直接下载:https://communityfile-drcn.op.dbankcloud.cn/FileServer/getFile/cmtyPub/011/111/111/0000000000011111111.20230517…...

SpringBoot新手快速入门系列教程四:创建第一个SringBoot的API
首先我们用IDEA新建一个项目,请将这些关键位置按照我的设置设置一下 接下来我将要带着你一步一步创建一个Get请求和Post请求,通过客户端请求的参数,以json格式返回该参数{“message”:"Hello"} 1,先在IDE左上角把这里改为文件模式…...

第1集《修习止观坐禅法要》
《修习止观坐禅法要》诸位法师,诸位学员,阿弥院佛! 我们今天能够暂时放下世间的尘劳,大家在一起研究佛法的课程,这件事情在我们的生命当中是非常的稀有难得。 基本上,我们佛法的修习目的是追求身心的安乐…...

markdown变量引用
格式 变量定义通常是路径或网络链接 变量测试...

如何使用echart做K线图
使用ECharts制作K线图需要先引入ECharts的库文件,然后通过调用相应的API来配置和渲染K线图。以下是一个简单的示例代码: // 引入ECharts库文件 <script src"https://cdn.jsdelivr.net/npm/echarts5.0.0/dist/echarts.min.js"></scri…...

Spring Boot应用使用GraalVM本地编译相关配置
1. 介绍 Java应用程序可以通过Graalvm Native Image提前编译生成与本地机器相关的可执行文件。与在JVM执行java程序相比,Native Image占用内存更小和启动速度更快。 从spring boot3开始支持GraalVM Native Image,因此要使用此特性,需要把sp…...

代码的坏味道——长函数
前言:一个函数应该尽量做一件事情,如果非要做多个事情,要做函数提取,每次迭代应该考虑到是否有重复代码或者可以优化的代码。 长函数:长函数的产生: 逻辑是平铺直叙的需求迭代没有考虑优化,一次…...

【机器学习】基于密度的聚类算法:DBSCAN详解
🌈个人主页: 鑫宝Code 🔥热门专栏: 闲话杂谈| 炫酷HTML | JavaScript基础 💫个人格言: "如无必要,勿增实体" 文章目录 基于密度的聚类算法:DBSCAN详解引言DBSCAN的基本概念点的分类聚类过…...

Qt 网络编程 网络信息获取操作
学习目标:网络信息获取操作 前置环境 运行环境:qt creator 4.12 学习内容 一、Qt 网络编程基础 Qt 直接提供了网络编程模块,包括基于 TCP/IP 的客户端和服务器相关类,如 QTcpSocket/QTcpServer 和 QUdpSocket,以及实现 HTTP、FTP 等协议的高级类,如 QNetworkRe…...

linux中的进程以及进程管理
程序和进程的区别和联系 程序(Program): 程序是一组指令的集合,通常存储在磁盘或其他存储设备上,是一种静态的概念。程序本身并没有运行,它只是一个可执行的文件或脚本,包含了一系列的指令和数…...

pyecharts可视化案例大全(11~20)
pyecharts可视化案例大全(11~20) 十一、设置动画效果十二、直方图带视觉组件十三、设置渐变色(线性渐变)十四、设置渐变色(径向渐变)十五、设置分割线十六、设置分隔区域十七、面积图十八、堆叠面积图十九、自定义线样式二十、折线图平滑处理十一、设置动画效果 在图表加载前…...

Docker在人工智能领域的应用与实战
摘要 人工智能(AI)技术的快速发展带来了对高效开发和部署工具的需求。Docker作为一个创新的容器化平台,为AI领域提供了强大的支持。本文详细介绍了Docker在AI模型开发、训练、部署以及服务器集群管理等方面的应用,并探讨了其在数…...

python基础篇(8):异常处理
在Python编程中,异常是程序运行时发生的错误,它会中断程序的正常执行流程。异常处理机制使得程序能够捕获这些错误,并进行适当的处理,从而避免程序崩溃。 1 错误类型 代码的错误一般会有语法错误和异常错误两种,语法错…...

FortiClient 用IPsec VPN 远程拨号到FortiGate说明文档
说明:本文档针对IPsec VPN 中的Remote VPN 进行说明,即远程用户使用PC中的FortiClient软件,通过VPN拨号的方式连接到公司总部FortiGate设备,访问公司内部服务器。在配置之前需要统一VPN策略和参数,如模式… 说明&#…...

Git-Unity项目版本管理
目录 准备GitHub新建项目并添加ssh密钥Unity文件夹 本文记录如何用git对unity 项目进行版本管理,并可传至GitHub远端。 准备 名称版本windows11Unity2202.3.9.f1gitN.A.githubN.A. GitHub新建项目并添加ssh密钥 GitHub新建一个repositorywindows11 生成ssh-key&…...

每日一题~ leetcode 402 (贪心+单调栈)
click me! 这个贪心的推导在leetcode上已经很明确了。 click me! 删除k个数,可以先考虑删除一个数。这也是一种常见的思路。(如果进行同样的操作多次,可以先只 考虑一次操作如何实现,或者他的影响。完成这一次操作后,…...

设计模式之模版方法
模版方法介绍 模版方法(Template Method)模式是一种行为型设计模式,它定义了一个操作(模板方法)的基本组合与控制流程,将一些步骤(抽象方法)推迟到子类中,使得子类可以在…...

docker部署redis/mongodb/
一、redis 创建/root/redis/conf/redis.conf 全部执行命令如下 docker run -it -d --name redis -p 6379:6379 --net mynet --ip 172.18.0.9 -m 400m -v /root/redis/conf:/usr/local/etc/redis -e TXAsia/Shangehai redis redis-server /usr/local/etc/redis/redis.conf 部署…...

LeetCode 581. 最短无序连续子数组
更多题解尽在 https://sugar.matrixlab.dev/algorithm 每日更新。 组队打卡,更多解法等你一起来参与哦! LeetCode 581. 最短无序连续子数组,难度中等。 排序 解题思路:首先对数组排序,然后找出两侧顺序的数组&#x…...

数据库可视化管理工具dbeaver试用及问题处理。
本文记录了在内网离线安装数据库可视化管理工具dbeaver的过程和相关问题处理方法。 一、下载dbeaver https://dbeaver.io/download/ 笔者测试时Windows平台最新版本为:dbeaver-ce-24.1.1-x86_64-setup.exe 二、安装方法 一路“下一步”即可 三、问题处理 1、问…...

29、php实现和为S的两个数字(含源码)
题目:php 实现 和为S的两个数字 描述: 输入一个递增排序的数组和一个数字S,在数组中查找两个数, 是的他们的和正好是S,如果有多对数字的和等于S,输出两个数的乘积最小的。 输出描述: 对应每个测…...

Spring Boot中的全局异常处理
Spring Boot中的全局异常处理 大家好,我是免费搭建查券返利机器人省钱赚佣金就用微赚淘客系统3.0的小编,也是冬天不穿秋裤,天冷也要风度的程序猿!今天我们将探讨如何在Spring Boot应用中实现全局异常处理,这是保证应用…...

中英双语介绍美国苹果公司(Apple Inc.)
中文版 苹果公司简介 苹果公司(Apple Inc.)是一家美国跨国科技公司,总部位于加利福尼亚州库比蒂诺。作为全球最有影响力的科技公司之一,苹果以其创新的产品和设计引领了多个科技领域的变革。以下是对苹果公司发展历史、主要产品…...

C语言牢大坠机
目录 开头程序程序的流程图《牢大坠机》结尾 开头 大家好,我叫这是我58,今天,我们要来看关于牢大坠机的一些东西。 程序 #define _CRT_SECURE_NO_WARNINGS 1 #define HIGH 66 #include <stdio.h> #include <Windows.h> int ma…...

zdppy+vue3+antd 实现表格单元格编辑功能
初步实现 <template><a-button class"editable-add-btn" style"margin-bottom: 8px" click"handleAdd">Add</a-button><a-table bordered :data-source"dataSource" :columns"columns"><templa…...

elasticsearch索引怎么设计
Primary Shard(主分片) Primary Shard(主分片)是索引数据存储的基本单位,承担着数据写入和查询的职责。以下是关于Primary Shard的一些关键点: 1. 数据分布:每个索引在创建时会被分成多个主分…...

React 中 useState 和 useReducer 的联系和区别
文章目录 使用场景使用 useState使用 useReducer 联系区别用法状态更新逻辑适用场景可读性和可维护性 使用场景 使用 useState 状态逻辑简单。只涉及少量的状态更新。需要快速和简单的状态管理。 使用 useReducer 状态逻辑复杂。涉及多个子状态或多种状态更新逻辑。需要更好…...

Linux 定时任务详解:全面掌握 cron 和 at 命令
Linux 定时任务详解:全面掌握 cron 和 at 命令 Linux 系统中定时任务的管理对于运维和开发人员来说都是至关重要的。通过定时任务,可以在特定时间自动执行脚本或命令,提高系统自动化程度。本文将详细介绍 Linux 中常用的定时任务管理工具 cr…...

力扣考研经典题 反转链表
核心思想 头插法: 不断的将cur指针所指向的节点放到头节点之前,然后头节点指向cur节点,因为最后返回的是head.next 。 解题思路 1.如果头节点是空的,或者是只有一个节点,只需要返回head节点即可。 if (head null …...