在行情一般的情况下,就说说23级应届生如何找java工作

Java应届生找工作,不能单靠背面试题,更不能在简历中堆砌和找工作关系不大的校园实践经历,而是更要在面试中能证明自己的java相关商业项目经验。其实不少应届生Java求职者不是说没真实Java项目经验,而是不知道怎么挖掘,总之当下,应届生求职java,没真实项目,难度会增大。

一、 应届生找Java工作的常见误区

先说下不少应届生在找Java工作时的一些认知误区以及实际情况。

1 不是谁技术好,谁实习经验长,谁背的面试题多,谁就能找到好工作。事实上,Java应届生应当在简历上写清楚尽量多的java商业项目经验,这样的简历才会得到更多的面试机会。在这个基础上,还要在面试中证明自己足量的商业项目经验以及掌握必要的技术,这样就能更好地找到工作。

2 虽然说,校招java程序员时,未必要求应届生有java真实的项目经验,事实上大多数的应届生在投简历和面试阶段,都只能证明自己的学习项目经验,但如果应届生求职者能证明自己的商业项目经验,一定能产生代差优势。

3 这点其实说得有些悲观,java应届生,如果学历是本科,学校是一本,刚毕业就进大厂的机会就能多些。如果学校是二本,那么进大厂不是说没可能,但可能性会大大降低。至于大专应届生,找工作的目标一般是仅限于小公司。

4 不少应届生朋友会在简历上,通过学校的课程,学习成绩,毕业设计项目或自学阶段的项目来证明自己的实力,但是面试官,尤其是好公司的面试官,在挑简历时首先看学校是不是一本或名校,然后再看商业项目经验。

所以可以这样说,如果学校一般,甚至学历是大专,如果只简历上写熟悉的技术,以及学过的课程,不展现商业项目的实习能力,简历过筛选这得靠运气,过面试也得靠海投。而不少211,985院校的java应届生,可能单靠学校和学历,就能超越不少一般学校的求职者。

在下文里,本人不想罗列一些Java面试八股文,因为这些哪怕背熟了意义也不大,就会从简历和面试这两个方面,讲讲java应届生的求职技巧。甚至,如果临近毕业,自己java技能感觉不熟,本人还给出了在短时间内弥补技能和面试说辞的技巧。

二、面试前如何高效准备Java技能

先说下,Java应届生找工作的两个要点是,第一能证明自己有半年(甚至更长)的实习经验,第二能证明自己至少能用spring boot开发项目

如果当下感觉自己spring boot技术不熟,千万别直接背八股文,也别轻易去github上去下载一个java项目来跑,更也别贸然去报个班,而是可以直接通过自学,先学会spring boot+数据库做增删改查业务的技能。这块要达到什么样的效果呢?

1 能建立一个spring boot项目,数据库可以用mysql,但其中建一个表就行。在spring boot项目里,需要写控制器层,service层和repo层代码,实现用spring boot框架实现增删改查的操作,当然在其中包含的必要的技术,比如注解或java语法,这些得掌握。

2 java核心语法层面,别系统学,就针对spring boot做增删改查业务的点,用到什么学什么。比如用到了集合,异常处理或类,基本上就遇到什么学什么。这好比是通过看英文文章来熟悉常用单词,这比单纯系统背单词,效果要好太多。

3 别全面去学分布式组件或spring cloud微服务技术,当然这块如果掌握最好,如果当下不掌握,在校阶段去学这些比较值钱的技术,未必能学好,而且在面试中也未必能证明自己在项目里用过。

其实上文给出的学习要求是比较低的,可能会有不少应届生朋友质疑,学太简单了未必能找到工会作。但本人更想说的是,第一,在项目里会用技术和在面试中证明自己会用技术,这是两回事,后者的难度是远小于前者的。第二,应届生在学习阶段,由于没有接触到真实项目,所以真会做太多的无用功。同时,结合下文的描述,大家能看到,其实学到上述这个程度,真能去找工作。

三、 应届生准备Java简历的实战要点

下面再说下应届生该如何写简历,其中的要点刚已经说了,尽量写上足够多的商业项目经验。这里需要额外说下,如果在简历中写课程成绩之类的,这其实很虚,如果写学习项目或毕业设计项目,这块意义也不大,但如果有编程方面的获奖经验或其它加分项,这倒可以写上。

商业项目是指,真正在实习公司里做过的项目,或者是用于挣钱的项目。其中包含的关键要素是公司或挣钱。商业项目该怎么写?

1 写上时间范围,这个项目所在的公司,以及项目名称,如果不是在公司里做的,写上能证明是商业项目的文字。同时写一些你做过的业务模块。

比如是,2022年2月到2022年10月,在上海xx公司实习,做了报销管理系统。本人做的是业务报销和信息录入模块。

再如,2022年2月到2022年10月,本人是帮教研室老师做了一个政府信息管理系统,这个项目是来自xx渠道,这个项目是挣钱的,本人拿到了xx收益。本人做的是信息录入和关键字查询等模块。

2 写用到的技术,技术不求多,因为不是靠技术来证明项目是商业项目。

比如是,用到了spring boot,jpa,mysql,logback,redis等。

3 这点很关键,要写些商业项目区别于学习项目的点,这些点最好还是你参与过或你知道。

比如是,这个项目里,本人是用junit做测试,用logback写日志,用jenkins部署,参与过部署到linux上的工作,同时本人还看过线上日志,排查过业务问题。

如果这个项目是能看得到摸得着的项目,比如是web项目或app项目,直接写到简历上,如果不是,那么可以写,这是个公司内部项目,对方客户已经上线。注意,商业项目会上线,学习项目一般没这个过程。

4 如果有分布式微服务方面的亮点可以加上,但应届生如果写明了商业项目,哪怕只用到spring boot增删改查技术,这比学习项目要强太多。

比如可以写,这个项目里,本人用到了redis做缓存,用kafka做消息中间件,解决过JVM问题。

从上文的描述里大家能看到,在简历中是通过多个方面来证明这是商业项目,但是别扩展写功能,别把简历这部分的项目描述写成是项目使用说明书,因为面试官不关心这个。

有些话本人不想说得太直接,不过,在面试中通过真实项目说出来的spring boot增删改查技术,其实效果和上文提到的,spring boot+单表的增删改查技术,其实两者是差不多的。求职者一方面需要说明其中包含的spring boot的处理流程,无非是从控制器到service到repo再到数据表,另一方面求职需要说明其中包含的注解。

至于前端技术,比如vue.js或android框架,当然熟悉最好,不熟悉的话,应届生面试时就一句话,“本人在这个项目里只做后端”,这就可以了,因为能有商业后端项目经验的应届生真不多。

四、 真实 Java项目长什么样?

简历上如果包含半年等的商业项目经验,其实真能争取到不少面试机会了,下面再说说应届生朋友该如何准备Java面试。

应届生朋友应该是通过介绍项目,来证明商业项目的真实性。由于商业项目是用于挣钱的,而且商业项目正是因为要从客户那边收钱,所以其在确定需求,开发,测试,部署和问题排查等方面,和学习项目存在很大的差异。Java应届生朋友,不仅应该从技术层面,更应该从项目开发的诸多细节,来证明自己做过商业项目

先可以说下真实项目的敏捷开发流程和常用的项目管理工具。

学习项目一般是从零跑通一个项目,只要能从前端发请求看到预期的效果,这个项目就算成了,但真实的项目一般会采用敏捷开发模式,哪怕是有些公司的田园敏捷开发模式,一般也是采用“迭代”开发的流程。

比如一个项目从开始做,到真实完成,假设需要半年,包含大概50个功能点,那么就会把这些功能点,均摊到6个开发周期,每个周期大概是一个月,这样每个月发布一次,把本月需要完成的功能点和本月修改掉的bug一起发布上线。

具体的,比如一个月有4周,会在第一周的前半周,和产品方或客户方谈好需求,一般这是项目经理主导做的,谈好以后分配任务给诸多程序员,分配任务时一般用jira来记录,当然如果发现bug了,也会用jira来记录bug。

开发前,一般会基于git的主分支(master或dev或current)上创建一个新分支,比如202210dev分支,诸多程序员在这个分支上开发,然后约定个开发结束时间,这样到了这个月的第三周结束后,这个开发分支上就包含了本次发布所需要的的代码,然后这个发布版本就会冻结住,冻结的意思是,发布的版本需要稳定,不能随便再向里面提交并合并代码,在此基础上测试人员就开始测试。

一旦测试人员测出问题,项目经理会做个评估,如果不影响本次发布,就会在下个周期里修改掉,如果影响很大,那么需要走“解封”流程,解开本次已经冻结住的git分支,修改后再冻结住。

这样到了本次迭代周期的发布日,一般是业务量比较少的时间点,比如周末凌晨,运维人员会把从git上拉下待发布的分支,用maven或各种工具打成jar包,然后通过jenkins工具,或干脆手动复制粘贴,放到linux环境上,再用java -jar命令启动,启动后开发和测试人员发现没问题后,本次发布就算成功,然后再开始下个为期一个月的开发周期,这样一直到本项目全部完成。

五、如何在面试中证明自己真做过java项目

所以求职者如果要证明自己的项目是真实项目,可以从如下若干个角度来准备说辞。

1 我们项目是用敏捷开发模式,然后大致叙述下开发周期,同时加一句,我们项目组,会每天开会讨论进度,如果有阻塞性的问题,或者技术问题,得赶紧提出来。

2 我们项目组用到了git和maven来管理代码和依赖包,同时看些git拉分支,合并代码和处理冲突的细节,也可以看下用maven打包以及创建公司私有仓库的做法。

3 我们项目是用jira来管理任务和bug,真实项目一般都用jira,所以哪怕是零基础的,jira未必要搭建,未必要实践,但需要了解下通过jira创建任务和创建bug的细节。

4 我接到开发任务后,一定会在开发分支,比如202210dev分支,在此基础上再创建一个我自己用的任务分支,比如202210dev001,其中001是任务号,在此分支上开发功能点。开发好以后,我会用junit写单元测试案例,也会用postman发请求,这个属于程序员自己要做的测试,当测试通过后,再提交到202210dev001分支上。

5 这里请注意,得说下代码review。我在202210dev001分支上的代码,得合并到202210dev这个发布分支,合并前,项目经理会指定其它开发者review我的代码,如果有功能或代码规范的问题,我会修改掉。测试人员如果发现我做的模块有功能问题后,会给我开个bug,一般也是用jira开,我会修,当然我把修改掉bug后的代码合并到发布分支前,依然需要经过code review这个过程。

6 我自己做好我的业务模块后,会用junit写测试案例,如果junit不熟悉可以不说,但一定要说用postman发请求测试。在版本发布的时候,我会留守在公司,遇到问题我会排查和解决。

应注意,上述提到的技术要点,哪怕对于零基础的应届生朋友,绝不是高不可攀,而是能通过一些简单的项目实践能掌握。

在商业项目里,开发者未必是全栈都做,而是只做后端开发,而且后端开发一定要加入很多细节。

在不少应届生朋友做的学习项目里,开发者其实是全包的,从前端到后端spring boot,再到建数据表,这些工作都要做。但在真实项目中,如果你的职责是后端代码,那么其实是无需关注前端的。

而且在项目组里,你其实真未必是从零开始做。比如你入职被分配到一个财务系统里,这个系统一定是开发到一定程度了, 所以你其实是无需参与表设计的工作,也无需参与搭建前端后端框架的事。你的事情其实就是用spring boot开发业务,在上文的基础上,你还可以用如下的说辞证明你做的是商业项目,而不是学习项目。

1 我只负责用后端开发,即用spring boot开发控制器,service和repo层,我这个接口是用@requestmapping来匹配前端请求,前端是html页面+vue。

2 我开发的api需要用swagger来展示接口,swagger其实不难,大家可以看下。在我开发的api里,要用logback写日志,以便排查线上问题。对应的,我每开发好一个接口后,要用junit来写单元测试案例,这里强烈建议大家学下junit,这不难,而且了解一下其中mock数据的动作。

3 我们的环境分测试环境和生产环境,其中生产环境就是对外提供服务的,但我们的代码开发好以后,会部署到测试环境,测试环境也是linux。一般学习项目甚至只在windows上开发,但真实项目一般分测试和生产两个环境。

4 我开发的时候,如果需要其它组提供接口,比如支付系统里要调用对账模块的api,那么我会和其它组的人沟通,对应地,对方组开发好以后,会用swagger来展示接口。这里你可以展示在项目开发中必不可少的沟通技能,相比之下在学习项目,一定没这个流程。

上述说辞对应届生朋友来说绝非难点,但是很多应届生是忽视的,所以如果应届生朋友用些时间学习并练习一下说辞,绝对能很好地证明自己做过商业项目。

在真实项目里,一定会遇到线上问题,你可以说下排查分析线上问题的细节。

这块大家可以说,收到告警信息后,可以通过vi命令,去观察linux上的系统日志,或者甚至可以直接从linux上把代码拉到windows,再用记事本来打开。或者是用postman发请求遇到问题,也直接去看日志。应届生朋友一般不会处理太难的问题,所以可以说解决过因参数不对导致的问题。

比如是业务问题,是参数不对,那么能根据日志上的告警信息,定位到具体的类和代码行,然后解决。再如,在日志里看到是空指针,然后也是定位到具体的类和具体的行,然后解决。

如果应届生能通过准备日志方面的说辞,证明自己排查过线上问题,那么也能很好地证明自己的商业项目经验。

六、 更可以通过引导,抛出事先准备好的素材

在准备好上述商业项目的说辞后,应届生朋友背些java八股文倒也不是不可以,不过一方面,java八股文资料太多,另一方面,如果在说好项目和相关的技术后,有些面试官问的八股文就会简单很多。所以这块八股文方面,本人不做展开。

👉👉​​​​​​​👉👈👈👈点击观看

随后在你介绍好真实项目以后,校招面试官大概率会问比较基础的问题,比如集合,异常处理或数据库索引等。被问及时,你要主动多说,比如问及finally和final的差别时,你说好以后,再说一句,我们项目做异常处理时就用finally,而且我们项目处理异常有一定的规范,规范点上文已经提到。

或者被问及,你们项目用什么数据库,怎么连数据库,你可以说,用mybatis连数据库,同时再说,我还知道索引和事务,然后展开说。

这样的话,你在展示商业经验后,外带通过这些准备好的说辞,一定是有算对无算,哪怕你真实没做过项目,哪怕你其实除了准备过的点以外对java很不熟,那么你过面试也不是不可能。

所以应届生朋友在找工作时,绝对应该是优先展示商业项目经验,外带通过积累亮点素材和主动引导。事实上,本人最近一直在帮一些应届生朋友做入职辅导,用的就是上述的一些经验。

这里容本人自夸一下,很多找本人的应届生之前是海投简历但很难收到面试机会,更别论去面试了,但经过本人辅导后至少能拿到面试机会,而且基本上能找到工作,后来他们甚至得考虑,自己能力一般,入职后如何过试用期。

七、 再聊聊应届生找java工作的薪资话题

其实应该这样说,应届生朋友如果能找到java工作,那么就能拿到当地比较普遍的薪资,这看似是正确的废话,但更可以这样理解。

1 比如在上海,23年对java应届生的行情是8k到12k左右,所以本科应届生不论Java技术掌握怎么样,只要能过Java面试,就能拿到这个薪资。

2 但如果应届生Java能力一般,无法过面试,那么哪怕是降价要5k薪资,对方公司也不会录用。

3 还是这句话,java应届生能拿多少薪资,和本身所掌握的java技术关系不大,是由学校,学历,能证明出的java真实项目的时长以及面试时能展示的java技能决定的,说穿了一方面看学校,另一方面看面试。所以不少应届生朋友希望通过多学技术从而拿到高薪,这不大现实,毕竟学技术是一方面,展示真实项目经验是另一方面,而面试的表现则再是一个方面。

4 应届生朋友如果只背八股文,只去看技术,不去准备面试技巧,哪怕找到工作,薪资估计也会被低估,甚至还很难找到工作。

八、 粉丝福利

我是浮生,一个工作十四年经验的Java程序员!

最近很多同学问我有没有java学习资料,我根据我从小白到架构师多年的学习经验整理出来了一份50W字面试解析文档、简历模板、学习路线图、java必看学习书籍 、 需要的小伙伴 可以关注我
公众号:“ 灰灰聊架构 ”, 回复暗号:“ 321 ”即可获取

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/636303.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

windows下redis使用教程

创建临时服务 redis-server.exe redis.windows.conf启动客户端 验证 # 使用set和get命令,对Redis数据库进行数据存储和获取,如下图所示 config get *创建永久服务 关闭临时服务的cmd窗口,输入以下命令 redis-server.exe --service-insta…

如何在文件夹中打开 powershell

在一个文件夹中,我们只要 按住 shift 然后在空白处右键鼠标就可以看到这个命令了

求职中遇到的性格测试

怎样才能不被刷? 最主要的就是自己的性格特征跟当前应聘的岗位是否相符合,这个符合程度越高,通过率自然也就越高。正规的做法都有一个岗位模型,也叫岗位胜任力模型。 以大五人格测试为例,完整版包含30个性格维度,从…

Python爬虫IP池

目录 一、介绍 1.1 为什么需要IP池? 1.2 IP池与代理池的区别 二、构建一个简单的IP池 三、注意事项 一、介绍 在网络爬虫的世界中,IP池是一个关键的概念。它允许爬虫程序在请求网页时使用多个IP地址,从而降低被封禁的风险,提高…

【C++干货铺】C++11新特性——lambda表达式 | 包装器

个人主页点击直达:小白不是程序媛 C系列专栏:C干货铺 代码仓库:Gitee 目录 C98中的排序 lambda表达式 lambda表达式语法 表达式中的各部分说明 lambda表达式的使用 基本的使用 [var]值传递捕捉变量var ​编辑 [&var]引用传递捕…

【C语言编程之旅 6】刷题篇-for循环

第1题 解析 思路&#xff1a; 两个循环进行控制 外层循环控制打印多少行 内部循环控制每行打印多少个表达式以及表达式内容&#xff0c; 比较简单&#xff0c;具体参考代码 #include <stdio.h> int main() {int i 0;//控制行数for(i1; i<9; i){//打印每一行内容&am…

JUC并发编程知识点总结

JMM Java内存模型规定所有的变量都存储在主内存中&#xff0c;包括实例变量&#xff0c;静态变量&#xff0c;但是不包括局部变量和方法参数。每个线程都有自己的工作内存&#xff0c;线程的工作内存保存了该线程用到的变量和主内存的副本拷贝&#xff0c;线程对变量的操作都在…

手把手教你如何搭建性能测试环境

前言 在进行性能则试前&#xff0c;需要完成性能测试的搭建工作&#xff0c;一般包括硬件环境、软件环境及网络环境&#xff0c;可以要求配置和开发工程师协助完成&#xff0c;但是作为一个优秀性能测试工程师&#xff0c;这也是你的必备技能之一。 性能测试环境与功能测试环…

常用排序算法总结(直接插入排序、选择排序、冒泡排序、堆排序、快速排序、希尔排序、归并排序)

目录 一. 直接插入排序 二:选择排序 三:冒泡排序 四.堆排序 五:希尔排序 六:快速排序(递归与非递归) 七.归并排序(递归与非递归) 一. 直接插入排序 &#x1f31f;排序思路 直接插入排序的基本原理是将一条记录插入到已排好的有序表中&#xff0c;从而得到一个新的、记录…

【白皮书下载】GPU计算在汽车中的应用

驾驶舱域控制器 (CDC) 是汽车 GPU 的传统应用领域。在这里&#xff0c;它可以驱动仪表板上的图形&#xff0c;与车辆保持高度响应和直观的用户界面&#xff0c;甚至为乘客提供游戏体验。随着车辆屏幕数量的增加和分辨率的提高&#xff0c;对汽车 GPU 在 CDC 中进行图形处理的需…

Spark On Hive配置测试及分布式SQL ThriftServer配置

文章目录 Spark On Hive的原理及配置配置步骤在代码中集成Spark On Hive Spark分布式SQL执行原理及配置配置步骤在代码中集成Spark JDBC ThriftServer 总结 Spark On Hive的原理及配置 Spark本身是一个执行引擎&#xff0c;而没有管理metadate的能力&#xff0c;当我们在执行S…

Jenkins环境配置篇-更换插件源

作为持续集成的利器 Jenkins 已经得到了广泛地应用&#xff0c;仅仅作为一个工具&#xff0c;Jenkins 已然有了 自己的生态圈&#xff0c;支持其的 plugin 更是超过 1300。在实际中如何使用以及如何更好地使用 jenkins&#xff0c;一直是大家在实践并讨论的。本系列文章将会从如…

Beego之Beego快速入门

1、beego快速入门 1.1 新建项目 新建一个项目&#xff1a; [rootzsx src]# bee new quickstart 2023/02/19 15:55:50.370 [D] init global config instance failed. If you do not use this, just ignore it. open conf/app.conf: no such file or directory 2023/02/19 1…

接口自动化框架搭建-写在前面

从今天开始&#xff0c;我将带领大家一起学习接口自动化框架的搭建&#xff0c;在学习之前&#xff0c;我们先了解搭建一个接口自动化框架需要具备哪些知识&#xff0c;应该做哪些准备工作 测试开发工程师的入门条件 近几年比较流行测试开发岗位&#xff0c;很多小伙伴都不知…

消息队列介绍

什么是 MQ MQ(message queue)&#xff0c;本质是个队列&#xff0c;FIFO 先入先出&#xff0c;只不过队列中存放的内容是 message 而已&#xff0c;还是一种跨进程的通信机制&#xff0c;用于上下游传递消息。在互联网架构中&#xff0c;MQ 是一种非常常 见的上下游“逻辑解耦…

SpringBoot 项目中后端实现跨域的5种方式!!!

文章目录 SpringBoot 项目中后端实现跨域的5种方式&#xff01;&#xff01;&#xff01;一、为什么会出现跨域问题二、什么是跨域三、非同源限制四、Java后端 实现 CORS 跨域请求的方式1、返回新的 CorsFilter(全局跨域)2、重写 WebMvcConfigurer(全局跨域)3、使用注解 (局部跨…

实战纪实 | 某配送平台zabbix 未授权访问 + 弱口令

本文由掌控安全学院 - 17828147368 投稿 找到一个某src的子站&#xff0c;通过信息收集插件wappalyzer&#xff0c;发现ZABBIX-监控系统&#xff1a; 使用谷歌搜索历史漏洞&#xff1a;zabbix漏洞 通过目录扫描扫描到后台&#xff0c;谷歌搜索一下有没有默认弱口令 成功进去了…

LeetCode:206. 反转链表

力扣链接 算法思想&#xff1a;由于单链表是单向的&#xff0c;想要对当前元素进行操作&#xff0c;需找到前一个元素。本题利用双指针&#xff0c;初始pre指针指向NULL&#xff0c;cur指针指向head.再对局部翻转之前&#xff0c;先把下一个结点存到temp指针中。当进行完如下代…

构建中国人自己的私人GPT

创作不易&#xff0c;请大家多鼓励支持。 在现实生活中&#xff0c;很多人的资料是不愿意公布在互联网上的&#xff0c;但是我们又要使用人工智能的能力帮我们处理文件、做决策、执行命令那怎么办呢&#xff1f;于是我们构建自己或公司的私人GPT变得非常重要。 先看效果 他的…

YOLOv8全网首发:新一代高效可形变卷积DCNv4如何做二次创新?高效结合SPPF

💡💡💡本文独家改进:DCNv4更快收敛、更高速度、更高性能,与YOLOv8 SPPF高效结合 收录 YOLOv8原创自研 https://blog.csdn.net/m0_63774211/category_12511737.html?spm=1001.2014.3001.5482 💡💡💡全网独家首发创新(原创),适合paper !!! 💡💡💡…