6 年前,只会 JSP 和 Servlet 就可以找到工作
这篇文章在去年就已经构思了,不过一直都没有整理出来,今天终于完成了这篇文章,所以发上来给大家看一看,都是一些个人的小感慨,我的观点可能不是非常的完善,大家也可以一起讨论。
找工作之难,难于上青天
五六年前,找 Java 开发工程师的工作,只要掌握 JSP 和 Servlet 并且做过一些简单的 demo,就可以获得很多个面试机会,如果面试过程中表现良好,拿到一份 offer 其实并不难。同样的,2014 年左右的前端开发工程师,只需要掌握 HTML + CSS + JS 也可以获得不少的面试机会,面试顺利的话也可以拿到 offer。
大家注意一些时间点,以上这些情况在现如今是不太可能存在的,后端会要求有一定的项目经验,多半是 SSM 三大框架或者 Spring Boot 为基础技术栈做的项目,前端也是 Vue 、React 各种框架或者组件库齐飞,如果简历中没有一定的项目经验,这次简历的投递极大的可能会杳无音信。
6 年时间,两种截然不同的境况,相信大家对于这种也多多少少有一些了解,甚至有些人已经切身体会到了。经济方面的问题加上行业人员趋于饱和是大部分行业都存在的问题,比如考研考公的人也越来越多,比如上千人争取一两个工作岗位,这些都是真实存在的社会现象。说回到我们 IT 行业,计算机相关专业的热度越来越高,想要进入行业的人也越来越多,这就导致了招聘市场上明显的“供大于求”的现象,本来我们求职者就是相对弱势的一方,现在又使得求职之路雪上加霜,招聘方在逐年的提高招聘需求,简历筛选的条件也越来越苛刻。
经常在各种技术交流群里或者技术论坛里看到关于找工作难的话题,要问很多面试题、要手写算法题、要项目经验、又要优化经验,要会用 MySQL,也要会用 ES/Redis,偶尔还要讲讲消息队列、多线程、高并发、分布式、微服务......以上这些内容不仅仅是针对有工作经验的一些朋友,一些大学刚毕业的应届生也会被问到类似的问题,所以很多时候会在群里看到一些大学生在讨论微服务和分布式之类的东西。

即使已经这样,很多工作岗位还是有着非常激烈的竞争,一两个用人需求,前前后后能收到几百份简历。
现在的大学生懂的东西太多了
“现在的大学生懂的东西太多了”。
我这两年越来越感慨于次,不仅仅是通过他们投递的简历,也经常在群里或者通过邮件同他们联系,与我毕业时相比,我那会儿简直就是一个战斗力为 5 的渣渣。比如去年我写的一个开源项目,就被一个同学拿去用作小作业并且做了很大的改动,我一直以为他是大四快毕业了,后来才知道他当时才上大二,我大二刚开始学 Java,印象最深的就是 public static void main(),其他都不太明白,人家同样是大二,就可以用 Spring Boot 很流畅的开发项目了,苍天啊!!!

我上大学那会儿,计算机相关的课程里只学了基础的计算机课程,C 语言、数据结构、Java 语言入门,连 Java Web 相关的知识都没有学到,就算是 Java 程序入门专业课程也只是学到了 IO 操作那个章节,一学期下来连一本书还没学完,Java 专业课的成绩我回忆不到具体的分数了,但是也就 60 分多一点点,老师很赏脸的给了及格分。后面的 Java Web 知识也全是为了找工作在大学空闲时自学的,当时并没有很完善的学习资料,像现在各种教学平台、各种专业的专栏课程和视频课程都非常充足也非常专业,我那时根本没有这个条件,只能通过淘宝(闲鱼都没有)以及学长找一些视频资料去学习。
像是后来找工作时如果会三大框架那就很了不得,而且那时的三大框架还是 SSH(Spring、Struts2、Hibernate),并不是现在大家所知道的三大框架 SSM(Spring、SpringMVC、MyBatis),像项目经验、项目优化经验、各种 nosql 技术栈也都完全不懂,因为那时候也不会要求这些,更别提什么分布式、微服务了,近两年的面试动不动就要你设计一个秒杀系统,也不知道有什么用,但是都喜欢问,你就没压根儿没辙拒绝。
至于现在的大学生为什么这么猛,我简单的总结了一下:
- 专业课更加完善
- 各种线上教学课程丰富
- 学习路径清晰

现在大学里计算机相关专业的专业课应该也在与时俱进,更加丰富和实用了。同时再加上现在各种 IT 教学平台都在做课程,所以你想学什么都能够找到对应的课程,从初学到进阶再到实战,方方面面的课程、各种技术栈的课程都有,只要你想学都可以找到,而且课程的价格也都很良心,两倍咖啡的钱就可以学到足足的干货。另外一点,就是现在 IT 人才的学习路径也非常清晰,毕业后想做什么岗位都有非常清晰的职业规划和学习路径,一点也不会走弯路。
不仅仅是个人自身的努力,身边的环境也在变得越来越完善,使得你能够更快的踏上成才的路。
冷门专业与热门专业
不仅仅是以上三个原因,之前和几个同事也聊过这个话题,今年刚毕业的一个小伙子就说,计算机相关专业现在是非常热门的专业,想进这些专业要考很高的分呢。

十年前,我上大学前填写志愿的时候,计算机相关专业都是没人看得上的专业,属于吊车尾专业,也就是冷门专业,热门专业则是金融、经济学相关的专业,我那时候报考时也对比了很久,最终还是选择了我的专业,为什么呢?因为这个专业有经济学相关的课程,目的也并不是为了计算机,个人在做选择时也会被社会背景所深深影响。
不仅仅是我,有几个同班同学也说,其他专业招收满了才被调剂到这个专业。
而十年后的现在,电子信息科学和计算机相关的专业已经成为了热门专业,很多同学填写志愿时闭着眼都会选择计算机,现实一点讲,这个专业毕业后就业前景比较好,我也问过很多我自己群里的大学在校生,答案非常接近:好找工作、工资高。
认同度高,也会让人更加有学习的欲望。
时代在进步和改变,行业在进步和改变,行业内的人也在进步和改变。

总结
前后也就是十年的时间,虽谈不上沧海桑田,但是改变也是非常非常地大,写这篇文章也是小小的感慨一下。

当然,大家还是要好好学习,好好看面试题。
推荐一下本人近期维护的开源项目:

Spring Boot 开源电商项目(含商城端和后台管理系统):https://github.com/newbee-ltd/newbee-mall
Spring Boot + Vue 前后端分离商城项目:https://github.com/newbee-ltd/newbee-mall-vue-app
除注明转载/出处外,皆为作者原创,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文链接,否则保留追究法律责任的权利。
6 年前,只会 JSP 和 Servlet 就可以找到工作的更多相关文章
- 查看JSP和Servlet版本+
如何查看JSP和Servlet版本 找到jsp-api.jar和servlet-api.jar ,分别打开META-INF下的MAINMEFT.MF文件,查看对应的版本. 例: JSP版本: Mani ...
- 面试之jsp、Servlet相关知识——生命周期, 区别等
1.servlet生命周期 所谓生命周期,指的是servlet容器如何创建servlet实例.分配其资源.调用其方法.并销毁其实例的整个过程. 阶段一: 实例化(就是创建servlet对象,调用构造器 ...
- 图解JSP与Servlet的关系
Servlet是Java提供的用于开发Web服务器应用程序的一个组件,运行在服务器端,由Servlet容器所管理,用于生成动态的内容.Servlet是平台独立的Java类,编写一个Servlet, ...
- jsp、Servlet相关知识介绍(转)
1.servlet生命周期 所谓生命周期,指的是servlet容器如何创建servlet实例.分配其资源.调用其方法.并销毁其实例的整个过程. 阶段一: 实例化(就是创建servlet对象,调用构造器 ...
- Java之JSP和Servlet基础知识
JSP基础 JSP起源 JSP,JavaServer Pager的简称.由SUN倡导并联合其它公司创建. JSP是一门脚本语言 JSP可以嵌入到HTML中 JSP拥有Java语言的所有特性 面向对象. ...
- JSP和Servlet那些事儿系列--HTTPS
原文:http://qingkangxu.iteye.com/blog/1614053 <JSP和Servlet那些事儿 >系列文章旨在阐述Servlet(Struts和Spring的MV ...
- jsp和servlet的问题收集.... 答案有部分是自己理解的,可能有点差异
如何创建一个动态工程? File ----> New ---->other ---->Web ---->Dynamic Web Project 选择动态WEB 项目工程 W ...
- SpringMVC内容略多 有用 熟悉基于JSP和Servlet的Java Web开发,对Servlet和JSP的工作原理和生命周期有深入了解,熟练的使用JSTL和EL编写无脚本动态页面,有使用监听器、过滤器等Web组件以及MVC架构模式进行Java Web项目开发的经验。
熟悉基于JSP和Servlet的Java Web开发,对Servlet和JSP的工作原理和生命周期有深入了解,熟练的使用JSTL和EL编写无脚本动态页面,有使用监听器.过滤器等Web组件以及MVC架构 ...
- jsp引用servlet生成的验证码代码演示
此演示代码主要包括以下三部分:1.checkCode.java:用于生成验证码2.checkCodeServler3.check.jsp 验证 下面是checkCode.java的内容: 复制代码代码 ...
随机推荐
- [COCOS2DX-LUA]0-006.cocos2dx中关于拖动屏幕物件,同时点击home键,返回后页面变黑的问题。
基本信息介绍: 引擎框架: Quick-Cocos2dx-Community-3.6 测试机型: 魅族MX5 问题简介: 有拖动效果的物件,在拖动的工程中,手指不放,同时点击home键退到后台. 再返 ...
- Vue CLI Webpack 创建Vue项目
简介 Vue (读音 /vjuː/,类似于 view) 是一套用于构建用户界面的渐进式框架.与其它大型框架不同的是,Vue 被设计为可以自底向上逐层应用.Vue 的核心库只关注视图层,不仅易于上手,还 ...
- C#LeetCode刷题之#665-非递减数列( Non-decreasing Array)
问题 该文章的最新版本已迁移至个人博客[比特飞],单击链接 https://www.byteflying.com/archives/3732 访问. 给定一个长度为 n 的整数数组,你的任务是判断在最 ...
- Windows下的Minio启动命令
1.首先安装Minio到你的 Windows系统的盘符中,例如D盘 2. 打开dos命令行,进入存放minio.exe的文件夹下,输入 minio.exe server /data 命令,意味着启动 ...
- web基础(四)严格模式与混杂模式
web基础(四)严格模式与混杂模式 一.介绍 DOCTYPE 标签是一种标准通用标记语言的文档类型声明,它的目的是要告诉标准通用标记语言解析器,它应该使用什么样的文档类型定义(DTD)来解析文档.DO ...
- 【有向图】强连通分量-Tarjan算法
好久没写博客了(都怪作业太多,绝对不是我玩的太嗨了) 所以今天要写的是一个高大上的东西:强连通 首先,是一些强连通相关的定义 //来自度娘 1.强连通图(Strongly Connected Grap ...
- 转行做程序员,培训or自学?过来人亲身经历良心分享
大家好,我是良许. 熟悉我的朋友应该知道我是学机械出身的,但是毕业后就自学转行成了一名 Linux 应用开发工程师了.我之前也做了几个跟转行相关的视频,有兴趣的小伙伴可以去看看. 在本文里,我将给大家 ...
- C++ IO的一些注意点
读入这个坑一直以来都深受其麻烦,把遇到一些注意点记一下吧. 1.getchar读入 以前练线段树的时候做到Acwing#246 Interval GCD(原题在CodeHunter上,人懒就在Acwi ...
- 用python实现实时监控网卡流量
很多时候,我们是需要查看服务器的网卡当前跑了多大流量,但对于网卡流量的查询,在linux下似乎没有像top那样的原生命令.虽然top功能很强大,可以实时查看cpu.内存.进程的动态,但是却没有对网卡流 ...
- Springboot中登录后关于cookie和session拦截案例
目录 一.前言 二.利用Cookie进行登录验证 一.前言 1.简单的登录验证可以通过Session或者Cookie实现. 2.每次登录的时候都要进数据库校验下账户名和密码,只是加了cookie 或s ...