这篇文章在去年就已经构思了,不过一直都没有整理出来,今天终于完成了这篇文章,所以发上来给大家看一看,都是一些个人的小感慨,我的观点可能不是非常的完善,大家也可以一起讨论。

找工作之难,难于上青天

五六年前,找 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 就可以找到工作的更多相关文章

  1. 查看JSP和Servlet版本+

    如何查看JSP和Servlet版本 找到jsp-api.jar和servlet-api.jar ,分别打开META-INF下的MAINMEFT.MF文件,查看对应的版本. 例: JSP版本: Mani ...

  2. 面试之jsp、Servlet相关知识——生命周期, 区别等

    1.servlet生命周期 所谓生命周期,指的是servlet容器如何创建servlet实例.分配其资源.调用其方法.并销毁其实例的整个过程. 阶段一: 实例化(就是创建servlet对象,调用构造器 ...

  3. 图解JSP与Servlet的关系

      Servlet是Java提供的用于开发Web服务器应用程序的一个组件,运行在服务器端,由Servlet容器所管理,用于生成动态的内容.Servlet是平台独立的Java类,编写一个Servlet, ...

  4. jsp、Servlet相关知识介绍(转)

    1.servlet生命周期 所谓生命周期,指的是servlet容器如何创建servlet实例.分配其资源.调用其方法.并销毁其实例的整个过程. 阶段一: 实例化(就是创建servlet对象,调用构造器 ...

  5. Java之JSP和Servlet基础知识

    JSP基础 JSP起源 JSP,JavaServer Pager的简称.由SUN倡导并联合其它公司创建. JSP是一门脚本语言 JSP可以嵌入到HTML中 JSP拥有Java语言的所有特性 面向对象. ...

  6. JSP和Servlet那些事儿系列--HTTPS

    原文:http://qingkangxu.iteye.com/blog/1614053 <JSP和Servlet那些事儿 >系列文章旨在阐述Servlet(Struts和Spring的MV ...

  7. jsp和servlet的问题收集.... 答案有部分是自己理解的,可能有点差异

    如何创建一个动态工程? File ---->  New ---->other ---->Web ---->Dynamic Web Project  选择动态WEB 项目工程 W ...

  8. SpringMVC内容略多 有用 熟悉基于JSP和Servlet的Java Web开发,对Servlet和JSP的工作原理和生命周期有深入了解,熟练的使用JSTL和EL编写无脚本动态页面,有使用监听器、过滤器等Web组件以及MVC架构模式进行Java Web项目开发的经验。

    熟悉基于JSP和Servlet的Java Web开发,对Servlet和JSP的工作原理和生命周期有深入了解,熟练的使用JSTL和EL编写无脚本动态页面,有使用监听器.过滤器等Web组件以及MVC架构 ...

  9. jsp引用servlet生成的验证码代码演示

    此演示代码主要包括以下三部分:1.checkCode.java:用于生成验证码2.checkCodeServler3.check.jsp 验证 下面是checkCode.java的内容: 复制代码代码 ...

随机推荐

  1. python6.4项目:股票提醒系统

    import tushareimport timedef getdata(share): data=tushare.get_realtime_quotes(share.code) share.name ...

  2. Linux入门-基本概念

    本文主要介绍linux基础概念介绍,对基本概念了解后,更好入门. 这里主要介绍一下几个概念 什么是linux GNU项目和自由软件基金会 linux发行版 什么是linux   也许大家都已经知道,L ...

  3. CI4框架应用一 - 环境搭建

    CI框架 (codeigniter)算是一个古老的框架了,由于在工作中一直在使用这个框架,还是比较有感情的.我对CI的感觉就是,简单易用,学习曲线平滑,对于新手友好. 目前CI框架已经更新到CI4了, ...

  4. 002_go语言的值类型

    代码演示: package main import "fmt" func main() { fmt.Println("go"+"lang") ...

  5. 基于Asp.net Core 3.1实现的Redis及MemoryCache缓存助手CacheHelper

    这几天在面试,这个关于Redis缓存的博客一直没空写,今天总算有点时间了. 从很久很久之前,我就一直想学Redis了,反正看到各大招聘网上都要求Redis,不学就太落后了. 一开始我是按微软官网文档那 ...

  6. drop blocks

  7. Pandas和常见数据处理小模块

    文章目录 前言 Pandas部分 根据某一列找另一列 根据条件变换每一列 按照标签保存为DataFrame 数据处理 切分数据集和测试集 其他 计时 前言 pandas 确实很好用, 但是网上的教程参 ...

  8. elementUI 表单清空问题

    在使用表单的清空方法时,我们需要注意几个问题: 1.我们需要为每个form-item加上prop属性,要不然无法清空(大部分的问题就是出在这) 2.resetFields()方法是重置表单,重置为默认 ...

  9. YAML简要入门

    这是一篇简单的YAML入门教程,目的是让你知晓什么YAML,以及YAML的基础语法.方便接下来学习如何使用Golang解析YAML.如果想获得更多YAML的知识,请查看http://yaml.org ...

  10. MQC集群配置错误

    这个错误说明配置里面,MQC环境配置错了 运行war包时会读到本地的配置system-config.propertites文件