十年回望 -- JAVA
十年
十年时间,弹指一挥,好像一直都是在为工作奔波,匆匆忙忙的十年。
一、个人介绍
本人毕业于一所很普通的公办专科院校(全日制统招大专),专业是软件技术,当初能进入计算机这一行业,也是比较意外。主因是高中毕业的时候,跟一个朋友聊天,他当时已经工作,而且也是大专毕业,毕业后在北京做SEO相关的工作;
而我当时作为一个高考成绩一般,家境一般,对于大学要选择读哪个学校哪个专业更是满脸的迷茫的学生来说,对于计算机有了一点点的了解,所以选择专业的时候就莫名的就倾向了计算机相关的专业。
毕竟普通家庭,家里也提供不了什么好的建议,也没有什么资源,也没有什么所谓的选择权,所以一切都自己决定了。
于是,就开始正式跟计算机打交道了。
众所周知,大专院校3年究竟能学到什么东西,这是一个玄学。
在学校虽然也会教计算机原理,数据结构,数据库等专业课,但是毕竟老师管理也不严,专业课的作业和考试都是只求能过,还经常补考;所以3年下来基本等于学了个寂寞。
很多东西学过了,知道了,但是没有再深入学习,没把知识真正的学会,所以很快就又会忘记。
不过学校也有一些好的地方,比如有个比较负责的老师,就找了个重点大学的计算机研究生,给我们讲了几个月的课,教我们写JAVA代码,和一些工作上的技能。另外加上一些校企合作,有认真学习的同学还是能学到很多东西,对以后找工作有很大帮助。
也不知道本科院校都是如何教学的,羡慕。
后来工作以后,遇到的事,见到的人多了,觉得学历是个问题,19年的时候又读了个成人本科。
当时每周都要去上课,还有作业;毕业了还要写论文和毕设。如果是在学校本部的话,听说上课会比较严格;如果是代理机构的话上课就比较随意了。老师也是机构里请来的计算机行业的硕士来上课。至于能不能学到东西,我觉的可能学不到太多。但是确实会多认识一些人,总归是有好处的。
唠叨:
年纪渐大,才能越来越能认清自己,真的了解自己。
初中的时候,暑假期间就在工地搬过砖,印象很深刻的一次是去修马路。
当时只有90斤的我,需要搬一袋100斤重的水泥;我使出只有年少的时候才有的那种用不完的力气,把水泥搬到指定的位置,弄的浑身上下都是水泥灰,不知道那时候自己觉不觉得狼狈。
当时并不觉的累,也许当时也只是觉得身体上的累,就像少年时候,玩的累了休息一晚,第二天还是能蹦着起床。
可惜,那时候却没有感觉到生活上的累,否则也不至于高中不努力学习。
高中的时候,大多时间都是在玩和睡;家庭教育,学习环境不好,学校的老师也只管上课,所以高中的学业也是基本放羊了。
后来读了个普通大专。2012年的时候,大学暑假会去工厂打工,上流水线,24小时机器不停,需要倒班。当时年轻身体好,但是连续7天的夜班,差点把心脏病干出来。后来受不了了,有个工友就把白班换给了我,十分感谢他。
第一次进工厂,没有任何经验,属于是临时工,一个小时6.5元。辛苦了一个暑假,挣了几千块,全部拿出来买了台电脑,从此走上了编码的路。
不过依然可惜,那时候真切的感受到了身体上的累。但是还是没有感受到生活的累。也许是我天生就是个乐观的人吧。总以为生活是会越来越好的。
二、工作经历
这只是普通人的工作轨迹,因为普通人起点都很低。
9年时间换了4家公司,不知道在HR和管理眼里,这跳槽次数算不算多。不过对于我个人来说,我觉的还算正常。
第一家公司是一个技术部规模不大的公司,因为刚入行,薪资3k。干了一年半,涨到7k,当时的情况也比较特殊,因为公司管理的问题,技术大佬都走了,而我也因为一些私事,最后离职了。
第二家是个比较大的公司,正常干满了3年,合同到期离职了。
第三家是个创业公司,激情满满,经常007,整个人写代码写的恍恍惚惚,不过也是在这里,学到了很多东西。而且工作3-5年的时候,正是有一些自己的想法和实践的时候,所以进步还算明显。
第四家也是个大的公司,也算是干满3年,因为各种原因离职的。以这个时候的工作年龄和工作年限,工作时真的是做牛做马;因为有独挡一面的能力,也有解决问题的能力,所以只要需求不断,基本上就是每天都在编码,很少有休息的时候,公司简直不当人。
顺便留几张代码提交记录的图,因为中间gitlab迁移过,所以就截了3张。
2021年的时候
2022年的时候
2023年的时候
今天就先写到这。
相关文章:

十年回望 -- JAVA
十年 十年时间,弹指一挥,好像一直都是在为工作奔波,匆匆忙忙的十年。 一、个人介绍 本人毕业于一所很普通的公办专科院校(全日制统招大专),专业是软件技术,当初能进入计算机这一行业࿰…...

Linux 环境下 安装 Elasticsearch 7.13.2
Linux 环境下 安装 Elasticsearch 7.13.2 前言镜像下载(国内镜像地址)解压安装包修改配置文件用 Es 自带Jdk 运行配置 Es 可被远程访问然后启动接着启动本地测试一下能不能连 Es 前言 借公司的 centos 7 服务器,搭建一个 Es,正好熟…...

心理咨询预约小程序
随着微信小程序的日益普及,越来越多的人开始关注如何利用小程序来提供便捷的服务。对于心理咨询行业来说,搭建一个心理咨询预约小程序可以大大提高服务的效率和用户体验。本文以乔拓云平台为例,详细介绍如何轻松搭建一个心理咨询预约小程序。…...

常用排序算法的理解
1.插入排序 插入排序的思想是将一个记录插入到已经排好序的有序表中,从而形成一个新的、记录数加1的有序表。在其实现过程使用双层循环,外层循环是进行插入的次数(也可以理解为比较的轮数),内层循环是当前记录查找插入…...
Python小程序 - 文件解析
1. 目录下文件解析:特定文件、文件列表、文件数 Windows文件目录分格使用“ / ” 或 “ \\ ”文件目录路径包含空格的,绝对路径使用“双引号”,保证文件路径的可识别性保存和读取结果时,使用 encodingUTF-8可以添加对文件目录的过…...
.mxdown-V-XXXXXXXX勒索病毒的最新威胁:如何恢复您的数据?
导言: 在数字时代,网络安全威胁层出不穷,其中.mxdown-V-XXXXXXXX、.vollhavhelp-V-XXXXXXXX、.arricklu-V-XXXXXXXX勒索病毒已成为备受关注的问题。这种病毒以其高级加密技术和威胁勒索金的方式,严重危害用户和企业的数据安全。本…...
audio 标签动态src 且src是http无法播放问题
<audioref"audio" :src"src"alt"加载失败"controls/>src是动态传参的 无法播放因为动态src需要在赋值后对audio进行重载 this.$refs.audio.load()注意如果,src跟本项目地址IP端口协议不同,会出现跨域问题。audio标…...

Leetcode—485.最大连续1的个数【中等】明天修改
2023每日刷题(十五) Leetcode—2.两数相加 迭代法实现代码 /*** Definition for singly-linked list.* struct ListNode {* int val;* struct ListNode *next;* };*/ struct ListNode* addTwoNumbers(struct ListNode* l1, struct ListNode* l…...

JavaWeb 怎么在servlet向页面输出Html元素?
service()方法里面的方法体: resp.setContentType("text/html;charsetutf-8");//获得输出流PrintWriter对象PrintWriter outresp.getWriter();out.println("<html>");out.println("<head><title>a servlet</title>…...

Spring及SpringBoot中AOP的使用
Spring中AOP示例 <dependencies><!--Spring核心包--><dependency><groupId>org.springframework</groupId><artifactId>spring-core</artifactId><version>5.3.6</version></dependency><!--引入SpringBean--&…...

cmake多目录构建初步成功
目录和代码和 首次cmake 多目录构建失败 此文一样; 只有一个CMakeLists.txt; cmake_minimum_required(VERSION 3.10) project(mytest3 VERSION 1.0) include_directories("${PROJECT_SOURCE_DIR}/include") add_executable(mytest3 src/main…...

idea插件(一)-- SequenceDiagram(UML自动生成工具)
目录 1. 安装 2. 默认快捷键 3. 操作说明 4. 导出为图片与UML类图 4.1 导出为图片: 4.2 导出 UML 类图 SequenceDiagram是从java、kotlin、scala(Beta)和groovy(limited)代码生成简单序列图(UML&…...
STM32 APP跳转到Bootloader
stm32 app跳转到bootloade 【STM32】串口IAP功能的实现,BootLoader与App相互跳转 STM32 从APP跳入BootLoader问题...

[RISC-V]verilog
小明教IC-1天学会verilog(7)_哔哩哔哩_bilibili task不可综合,function可以综合...

Log4j-tag丢失
一、引言 最近有个线上日志丢失tag的问题,是组内封装了后置请求的拦截器把请求的响应结果存到ClickHouse里面去,但是日志总有一些tag丢失。 作者提出父级线程的threadlocal被清空,同事认为可能是threadlocal的弱引用在gc的时候被回收。两种想…...
代码随想录算法训练营第五十六天|1143.最长公共子序列 ● 1035.不相交的线 ● 53. 最大子序和 动态规划
1143. 最长公共子序列 int longestCommonSubsequence(char * text1, char * text2){int len1 strlen(text1);int len2 strlen(text2);int dp[len11][len21];for (int i 0; i < len1; i){for (int j 0; j < len2; j){dp[i][j] 0;}}for (int i 1; i < len1; i){f…...

虚拟机和Windows的文件传输
拖拽/复制粘贴 直接将虚拟机linux系统的文件拖曳到windows桌面,或者直接将windows的文件拖曳到虚拟机linux系统当中,可以实现文件传输。当然复制粘贴方式也可以,但是前提是需要下载安装好VMware tools。 共享文件夹 概念:在Win…...
leetcode分类刷题:二叉树(八、二叉搜索树特有的自顶向下遍历)
二叉搜索树是一个有序树:每个二叉树都满足左子树上所有节点的值均小于它的根节点的值,右子树上所有节点的值均大于它的根节点的值;利用该性质,可以实现二叉搜索树特有的自顶向下遍历 700. 二叉搜索树中的搜索 思路1、自顶向下的遍…...

Vue 插槽 组件插入不固定内容
定义好一个组件,如果想插入图片或视频这非常不好的控制应该显示什么,这个时候可以使用插槽插入自定义内容 默认插槽 <Login><template><h1>我是插入的内容</h1></template></Login >组件 <slot></slot>…...
webpack打包时配置环境变量
webpack打包时配置环境变量 一、常规环境变量配置1. 使用webpack.DefinePlugin定义全局常量2. 在Vue静态页面中使用该环境变量 二、纯静态文件配置环境变量1. 使用npm或yarn安装html-webpack-plugin2. 在Webpack配置中引入并使用插件3. 使用htmlwebpackplugin.options方式配置环…...

深入浅出Asp.Net Core MVC应用开发系列-AspNetCore中的日志记录
ASP.NET Core 是一个跨平台的开源框架,用于在 Windows、macOS 或 Linux 上生成基于云的新式 Web 应用。 ASP.NET Core 中的日志记录 .NET 通过 ILogger API 支持高性能结构化日志记录,以帮助监视应用程序行为和诊断问题。 可以通过配置不同的记录提供程…...

3.3.1_1 检错编码(奇偶校验码)
从这节课开始,我们会探讨数据链路层的差错控制功能,差错控制功能的主要目标是要发现并且解决一个帧内部的位错误,我们需要使用特殊的编码技术去发现帧内部的位错误,当我们发现位错误之后,通常来说有两种解决方案。第一…...
质量体系的重要
质量体系是为确保产品、服务或过程质量满足规定要求,由相互关联的要素构成的有机整体。其核心内容可归纳为以下五个方面: 🏛️ 一、组织架构与职责 质量体系明确组织内各部门、岗位的职责与权限,形成层级清晰的管理网络…...
Frozen-Flask :将 Flask 应用“冻结”为静态文件
Frozen-Flask 是一个用于将 Flask 应用“冻结”为静态文件的 Python 扩展。它的核心用途是:将一个 Flask Web 应用生成成纯静态 HTML 文件,从而可以部署到静态网站托管服务上,如 GitHub Pages、Netlify 或任何支持静态文件的网站服务器。 &am…...
Qt Http Server模块功能及架构
Qt Http Server 是 Qt 6.0 中引入的一个新模块,它提供了一个轻量级的 HTTP 服务器实现,主要用于构建基于 HTTP 的应用程序和服务。 功能介绍: 主要功能 HTTP服务器功能: 支持 HTTP/1.1 协议 简单的请求/响应处理模型 支持 GET…...
Python 包管理器 uv 介绍
Python 包管理器 uv 全面介绍 uv 是由 Astral(热门工具 Ruff 的开发者)推出的下一代高性能 Python 包管理器和构建工具,用 Rust 编写。它旨在解决传统工具(如 pip、virtualenv、pip-tools)的性能瓶颈,同时…...
CSS设置元素的宽度根据其内容自动调整
width: fit-content 是 CSS 中的一个属性值,用于设置元素的宽度根据其内容自动调整,确保宽度刚好容纳内容而不会超出。 效果对比 默认情况(width: auto): 块级元素(如 <div>)会占满父容器…...
#Uniapp篇:chrome调试unapp适配
chrome调试设备----使用Android模拟机开发调试移动端页面 Chrome://inspect/#devices MuMu模拟器Edge浏览器:Android原生APP嵌入的H5页面元素定位 chrome://inspect/#devices uniapp单位适配 根路径下 postcss.config.js 需要装这些插件 “postcss”: “^8.5.…...

CVE-2020-17519源码分析与漏洞复现(Flink 任意文件读取)
漏洞概览 漏洞名称:Apache Flink REST API 任意文件读取漏洞CVE编号:CVE-2020-17519CVSS评分:7.5影响版本:Apache Flink 1.11.0、1.11.1、1.11.2修复版本:≥ 1.11.3 或 ≥ 1.12.0漏洞类型:路径遍历&#x…...
上位机开发过程中的设计模式体会(1):工厂方法模式、单例模式和生成器模式
简介 在我的 QT/C 开发工作中,合理运用设计模式极大地提高了代码的可维护性和可扩展性。本文将分享我在实际项目中应用的三种创造型模式:工厂方法模式、单例模式和生成器模式。 1. 工厂模式 (Factory Pattern) 应用场景 在我的 QT 项目中曾经有一个需…...