自学java,如何快速地找到工作
本人最近一直在帮零基础的java开发者提升能力和找工作,在这个过程中,发现零基础的java程序员,在自学和找工作时,普遍会出现一些问题,同时在实践过程中,也总结出了一些能帮零基础java开发尽快提升能力和尽快找工作的经验。在本文里,就将围绕零基础java开发自学和找工作这个过程,给出一些相关的建议。
先说下初级java开发在学习中普遍遇到的问题。
1 初学者往往会严格按照书本上的内容学,从java核心进阶到数据库再学spring boot。这本身没错,但书上很多技能,比如多线程和设计模式等,在找第一份工作的时候用不到,也就是说,会用宝贵的时间学没用的技能。
2 初学者在学习的时候过多关注语法,比如关注spring boot程序里诸多API的作用,恨不得每个参数的含义和取值都去搞明白。事实上,在开发过程中,往往会重用现有的方法和模块,然后通过修改,快速完成一个功能。也就是说,不用过多关注细节,而要关注流程。
3 初学者不知道学到什么程度可以去找工作,所以不少初学者会根据网上的提示,学spring boot,junit等各种组件,redis等各种中间件,还有linux命令等。网上的资料太多,学好了一定能干活,但事实上,初学者只要学到最基础的spring boot+JPA增删改查技能,就可以去干活,其他的可以在找到第一份工作后再学。
4 这是最重要的一点,初学者的面试技能严重脱节,其结果是,明明掌握了最基本的开发技能,但由于简历没写好,面试不知道如何准备,所以没法在面试中很好证明自己的实力,甚至没法用简历为自己争取到最基本的面试机会。也就是说,在学习技能的同时,更要准备面试,甚至准备面试的重要性要比学技能更重要。
然后说下java初级开发在学到什么程度以后可以去找工作。
1 能运行通一个spring boot的项目,请注意这里不是要求初学者能从零开始开发出一个项目,而是能根据提示,跑通一个现成的Spring boot项目。
这个项目的业务不限,甚至只包含很少的业务逻辑也不要紧。前端页面不限,毕竟是要找后端的工作。但是,初学者需要能够搭建数据库环境,配置全项目参数,并让代码跑起来,同时能根据其中的流程讲清楚spring boot访问操作数据库的流程。
2 项目里的各种语法,不要求能当场看懂,但对于不熟悉的语法或api,能通过查询资料很快地理解含义,这就是干活的基本标准。
3 spring boot项目运行启动后,能通过url请求拿到结果,在发出url请求后,这个请求经过了哪些模块,是怎么访问的数据库,然后怎么返回,处理中出现了异常怎么办,这套流程需要搞明白。
其实学到这种程度,就可以去找工作了。不少朋友可能会质疑我这个说法,他们可能会说,还要去学各种组件,比如redis等,或者是Spring cloud alibaba组件。其实他们说的没错,但其他技能属于java初学者找工作的加分项,而不是必选项。
一方面,可以在面试过程中精确地了解当前城市当前阶段面试官会问哪些(其他分布式组件等)问题,这样能精准准备,这要比脱离面试自己闷头继续学,效率不知道高多少,另一方面,大多数公司对初级开发的要求,还真是增删改查,让初学者做分布式组件的活,换谁都不放心。
也就是说,初学者在学到上文提到的程度,即会spring boot增删改查的技能后,不用再继续学,而应当通过面试,缺啥补啥精确地学。这样说下来,从小白学到会spring boot增删改查,估计三个月都嫌多,我的学生一般1到2个月就能学会,当然我会辅导他们,但如果单凭自学,2个月应该也够了。
学好基本的spring boot+jpa技能后,应当立即准备简历,准备面试。简历该怎么准备?
1 在简历上写明你熟悉spring boot增删改查技能,然后尽可能多地写上你熟悉的技术,比如logback,redis等。
2 写上你做过的,或者是你运行通过的项目,在项目里,写清楚这个项目里用过的技术。
这样,当面试官看到这份简历时,至少会给你面试的机会。但我见过有些简历,上面只写了熟悉的技术没有写项目,或者在写项目时只列了项目需求和业务点,没有写用到的技术,这些简历基本上一般不会有面试机会。
用简历争取到面试机会以后,后面是准备面试,对于初学者来说,需要准备如下的说辞。
1 结合项目,说明spring boot实现增删改查流程的相关技术,包括注解,api和配置文件等。
2 背题,被java等等题目。
在上述两个准备要点里,结合项目说明开发技能的重要性要远高于背题,基本上,只要能证明这个项目你做过(运行通的相当于做过),同时里面的技术,比如spring boot注解,jpa注解等,你能回答个大致,基本上就能找到一个java开发工作。
当然我在辅导我学生面试的时候,哪怕是初学者,我也会教他们若干亮点说辞,比如数据库性能调优,适合零基础的底层源码分析以及oom(或其他类型问题)问题的结局方法。
还有一点,刚开始面试时,一定会说不好项目,而且面试问题回答不好,这是很正常的,在这个阶段,一定好复盘,比如结合露馅的点优化项目技术说辞,哪个方面的问题没回答好,继续背题,但千万别什么都不准备,就去赶下一场面试。这也是我上文提到的,学到最基础的技能后就要通过面试来找方向,如果不去面试,自己想象的是学习方向和学习技能大多是不对的,这样就白学的。相反,在掌握基本的Spring boot+jpa增删改查的技能后,再去面试,一定能很快地找到自己的欠缺点,然后缺啥补啥。
经过2,3场面试后,初学者应该能掌握基本的面试技巧,后面的面试应该就可能成了。但是,初学者在找工作时,应当注意如下的要点。
1 先找小公司,如果你感觉你的能力一般,甚至可以先找外包公司。怎么找这类公司,直接去问猎头,怎么找到猎头?到招聘网站更新简历,猎头会找你。
2 直接说找工作,别说找实习,因为实习是暂时的,一般公司都希望找稳定的。
3 通过多场面试的练习,再结合背题,可以确保在后面的面试中,能回答出大部分的问题,也就是说,面试有希望通过。在这种前提下,管公司要个不低于平均水准的工资,比如当下零基础的初级开发,一般能给到7k,你就要7k,别少要,否则人家反而会怀疑你的能力。
至于入职后,哪怕公司规模再小,或者哪怕项目是外派的,只要有了实践的机会,技术就能飞快地提升,相比于通过自学提升技术,提升的速度何止是一日千里。
总之,哪怕是零基础通过自学找工作,也有成功的经历,经我手辅导成功的案例就不少,但方法一定要得当,所谓会者不难。所谓方法得当就如上文所说,学到最基础的spring boot增删改查程度后立即通过面试精确提升。否则的话,估计学的时间再长也未必能找到工作。
最后祝广大java程序员都能找到心目中的工作,而且早日实现薪资和技术的双丰收。
这是我的公众号,其中包含了大量面试文章,同时我自己出了多本Python和Java方面的书籍,会定期在公众号里发书的电子版。请大家关注下我的公众号,谢谢了。


自学java,如何快速地找到工作的更多相关文章
- 自学java如何快速地达到工作的要求?
自学java如何快速地达到工作的要求,是很多初学者都比较关心的问题,对于初学者来说,盲目自学不但不能快速入门,还会浪费大量的时间. 今天知了堂就来分享自学Java如何快速达到找工作的要求. 1.自学J ...
- 自学java,学多久可以自己找到工作?
先以肯定的语气说明一下自学Java,多久可以找到工作: 按照目前Java的体系来说,Java的几个重点在于Javase.数据库.Spring全家桶系列的框架.而其他的在Java体系之内,会基础的操 ...
- 自学java能不能找到找到一份java工作。
关于自学Java能不能通过社招找到一份互联网公司Java开发的工作,有无数的人问出这样的问题,答案没有标准的,只能从概率去考虑.有的人可以,有的人不可以,有的人自学就业的概率就是高,有的概率就是低. ...
- 农民工自学java到找到工作的前前后后
我是一名地地道道的农民工,生活在经济落后的农村,有一个哥哥和一个弟弟,父母都是地道的农民,日出而作,日落而息,我从小到大学习一直很好,从小学到高一都,成绩在全级一直名列前茅,这样我也顺利了考上省的重点 ...
- 自学Java,需要掌握什么内容才能找到满意的工作?
首先,这个问题主要问:自学Java编程技术,如果才能找到一份Java编程的工作.按照现在的招聘标准来看,无论你去哪个公司面试,你只需要满足他们公司的需求就可以. 找到一份Java编程工作需要掌握的内容 ...
- 一个农民工自学java找到工作的励志故事
<!-----------------------------------------------------------------------------摘自网络-------------- ...
- 好程序员web前端分享前端学习路线自学如何找到工作
好程序员web前端分享前端学习路线自学如何找到工作,自学能不能学会WEB前端并且找到WEB前端开发岗位的工作取决于自身条件,如果基础好,自律性强那么将会容易很多,还有就是自学最难克服的并不是知识点,而 ...
- Javaee需不需要培训?培训完可以顺利找到工作吗?
Javaee需不需要培训?培训完可以顺利找到工作吗? 在IT行业中Java以它通用性.高效性.平台移植性和安全性遍布各个领域,它的火热也给IT市场发展带来一定影响,随着Java技术的广泛运营,企业对J ...
- 如何让一个Java新手快速入门?
问题中问到如何让java新生快速入门,既然想快速入门的话那最简单粗暴的方法就是多看视频,加上跟着视频敲代码,刚开始可能不知道是什么意思,敲得多了就慢慢知道是什么意思了. 刚开始建议在网上找那种结合自己 ...
随机推荐
- ping (网络诊断工具)
Ping是Windows.Unix和Lnix系统下的一个命令,ping也属于一个通信协议,是TCP/IP协议的一部分,利用Ping命令可以检查网络是否连通,可以很好地帮助我们分析和判定网络故障.应用格 ...
- Vue.js 学习
一,Vue.js 介绍 Vue 是一套用于构建用户界面的渐进式javascript框架,与其它大型框架不同的是:Vue被设计为可以自底向上逐层应用.Vue的核心库只关注视图层,不仅易于上手,还便于与第 ...
- shell脚本采集系统cpu、内存、磁盘、网络信息
有不少朋友不知道如何用shell脚本采集linux系统相关信息,包括cpu.内存.磁盘.网络等信息,这里脚本小编做下讲解,大家一起来看看吧. 一.cpu信息采集 1),采集cpu使用率采集算法:通过/ ...
- 【Linux】【Shell】【Basic】条件测试和变量
bash脚本编程 脚本文件格式: 第一行,顶格:#!/bin/bash 注释信息:# 代码注释: 缩进,适度添加空白行: ...
- View的简单说明
一)三个结构体:CGPoint.CGSize.CGRect 1. CGPoint struct CGPoint { CGFloat x; CGFloat y; }; typedef struct CG ...
- 【论文笔记】Modeling User Exposure in Recommendation
Modeling User Exposure in Recommendation [论文作者]Dawen Liang, David M. Blei, etc. WWW'16 Columbia Univ ...
- secret_file
拿到题目例行检查,进入main函数 这个逆向有些复杂,程序首先让我们像dest输入256个字符,我们可以看到关键的strcmp(v15,v17),若相等则执行poppen poppen这个函数有额外的 ...
- Google Earth Engine 中的位运算
Google Earth Engine中的位运算 按位运算是编程中一个难点,同时也是在我们后续处理影像数据,尤其要使用影像自带的波段比如QA波段经常会用到的一个东西.通过按位运算我们可以筛选出我们想要 ...
- Spring核心原理分析之MVC九大组件(1)
本文节选自<Spring 5核心原理> 1 什么是Spring MVC Spring MVC 是 Spring 提供的一个基于 MVC 设计模式的轻量级 Web 开发框架,本质上相当于 S ...
- 四、Uniapp+vue+腾讯IM+腾讯音视频开发仿微信的IM聊天APP,支持各类消息收发,音视频通话,附vue实现源码(已开源)-会话好友列表的实现
会话好友列表的实现 1.项目引言 2.腾讯云后台配置TXIM 3.配置项目并实现IM登录 4.会话好友列表的实现 5.聊天输入框的实现 6.聊天界面容器的实现 7.聊天消息项的实现 8.聊天输入框扩展 ...