在和不少比较上进的初级程序员打交道的过程中,我们总结出了一些能帮到合格程序员尽快进阶的经验,从总体上来讲,多学、多实践不吃亏。本文来是从 java web轻量级开发面试教程从摘录的。

1  哪些知识点可以延后了解

在Java Core方面,下表中的知识点你可以不学习或者到用的时候再学习。

知识点

学习的时机

界面开发方面的知识,比如Swing

Java主要用在Web方面,很少有项目会用到这些UI部分的知识点。大家可以等实际用到时再学习

Socket编程方面

可以先了解概念,等有项目需求时再学习

Applet方面

很少用,等有项目需求时再学习

虚拟机方面

虚拟机很重要,因为能对性能调优产生立竿见影的效果。不过这得靠技术积累,所以建议有至少2年相关工作经验后再学习,刚开始时,可以先了解概念和相关的基本内存管理知识点

在Web方面,建议大家先了解一整套框架,别过早地钻入某个方面的知识点,比如大家可以先通过Spring MVC+Hibernate(甚至是JSP+Servlet+JavaBean)搭建一个包括基本的前端页面+MVC 架构+后台代码+数据的Web小项目(比如学生管理系统),先了解基于Web框架开发的一整套知识体系,随后再不断深入了解各Web组件的API等细节。

一般来说,在开始阶段,下表所示的Web知识点可以延后学习。

知识点

学习的时机

JSP内嵌对象

可以先大致了解概念和基本的用法,没必要刚开始就深入了解具体内嵌对象的API

Java Scrip、CSS、DIV等前端知识

如果不是走前端路线,在刚开始接触Web开发时,这些前端技术可以不必过多关注

2  大学阶段的实习经验能帮到你

一般公司在筛选候选人的简历时,一个非常重要的考查要点是相关经验的工作年限。说一个典型案例,某公司要招高级程序员,需要有3年左右经验,三个候选人都是毕业1年半的程序员,但其中一位在大三开始有1年实习经验,结果就他获得了技术面试的资格。

这种工作经验外加实习经验凑满年限要求的案例不在少数,对于刚毕业的多数大学生来说,一般商业项目经验的工作年限都比较少,这个时候,是否有实习经验直接决定了是否能有面试机会甚至关系到是否能找到合适的工作。

目前大多数的软件公司在筛选简历时,对于工作年限小于1年或者没经验的简历,如果没有其他额外的加分项(比如海归或拿过编程大奖或英语非常好),一般会直接过滤,更何况候选人的学校还不是985或211学校。

毕竟,一个好学校的招牌确实能证明毕业生的平均能力很强,但这种证明力未必要比直接的工作经验来得更有效。

我们见过一些本科毕业生的简历,他们天真地把毕业设计项目(诸如图书馆管理系统或者学籍管理系统等)和一些实训项目(培训学校的教学项目)写到简历中。要知道商业项目(需要靠这个挣钱)和学习项目是两回事,侧重点也不同,所以公司只看重商业项目,一些学习项目的作用充其量只能证明你在这方面有过了解。

所以给大家的建议是,在不影响学习和毕业的前提下,尽早到一些公司去实习,哪怕钱很少加班多也要去。一方面可以通过实战提升自己的专业能力,另一方面,能给自己提升用钱买不到的商业项目工作年限。

3  刚开始的1到3年,找个专注的方向

这里的专注有两个含义:

第一,得专注地从事软件相关的行业。我们见过不少简历,工作经验确实有3年(甚至更多),但是在简历中堂而皇之地写明,有1年多是从事非软件行业的,比如做硬件、做维护,甚至做和计算机专业无关的销售等,而编程相关的经验相对来说很少,那么这些简历中的相关工作年限只能扣除非编程经验的年限。

第二,需要在工作的前3年内,给自己制定一个大发展方向,是数据库管理和优化方向,或前端,或后端,或测试,或大数据等,换工作也以这个方向为前提。

比如某公司要找个做Java后端工作年限5年的人,但某份简历中,虽然也有5年经验,但前2年是偏重前端,第三年做测试,后2年才是Java,那么相关后端经验也只能按2年算。

这里想请大家注意的是,你可以多充实自己,多学习各方向的知识点,但一定要在一个方面(比如最近比较流行的是大数据)钻进去,让你在这方面拥有较多的项目实践经验。否则,假设你工作年限也达到资深的标准了(3年以上),但你在换工作的时候,会发现虽然你能去参加很多类型的面试,但每个方面你都没法证明自己是资深者(面试官自有一套甄别资深者的方式,而且有些问题一定是得做了很多项目才能回答出来,所以千万别有任何蒙混过关的想法)。

4  常学习、多实践的人工资涨得快

虽然在前文里给大家列了些别人的经验,但对于任何程序员来说,弯路一定会走,本书的宗旨是让大家少走点弯路。

怎么才能少走弯路(或者说早些从弯路上回头)?答案只有学习和实践。

比如某好学者一个月额外学习时间是40小时(平均每工作日学习1小时,每周末学习5小时,一个月算4周),目前一般的学习效率是70%左右,毕竟你不能保证你看的知识点一定有用,而且也不能保证你一定能准确地理解学到的知识点,那么算下来一个月的有效学习时间只有28小时,这和在线游戏里的练级时间一样,时间越长,你的等级也就越高,工资也就越高。

给大家讲些真金白银的例子,按2017年的行情,工作经验满3年的平均工资在12000元左右,上不封顶,看能力,我们见过较高的有15000元左右。问下来这批人大概每周的学习时间在30小时(也不算多)。我们也了解过不少工资在平均线(12000元)以下的原因,虽然和公司种类(比如外企创业公司或者互联网公司)行业(比如证券金融)等其他因素有关,但学习时间少也是相对重要的因素,毕竟如果你能力强,找到一个工资高的工作的机会就大。

根据实践经验,讲述些学习Java web能少走的弯路,内容摘自java web轻量级开发面试教程的更多相关文章

  1. 如何用比较快速的方法掌握Spring的核心——依赖注入,Java web轻量级开发面试教程 读书笔记

    我们知道,Java方面的高级程序员一定得掌握Spring的技能,其中包括Spring 依赖注入(IOC),面向切面(AOP),和数据库的整合(比如和Hibernate整合或声明式事务等)以及Sprin ...

  2. 面试时,当你有权提问时,别客气,这是个逆转的好机会(内容摘自Java Web轻量级开发面试教程)

    前些天,我在博客园里写了篇文章,如何在面试中介绍自己的项目经验,收获了2千多个点击,这无疑鼓舞了我继续分享的热情,今天我来分享另外一个面试中的甚至可以帮助大家逆转的技巧,本文来是从 java web轻 ...

  3. Java web轻量级开发面试教程的前言

    本文来是从 java web轻量级开发面试教程从摘录的. 为什么要从诸多的Java书籍里选择这本?为什么在当前网络信息量如此大的情况下还要买这本书,而不是自己通过查阅网络资料学习?我已经会开发Java ...

  4. java web轻量级开发面试教程

    最近面试java后端开发的感受:如果就以平时项目经验来面试,通过估计很难——再论面试前的准备 在上周,我密集面试了若干位Java后端的候选人,工作经验在3到5年间.我的标准其实不复杂:第一能干活,第二 ...

  5. java web面试技巧,数据库面试,java web轻量级开发面试教程

    我最近看到一本比较好的讲java web方面面试的书,java web轻量级开发面试教程. 其中不仅用案例和视频讲述了Spring MVC,Hibernate, ORM等方面的技巧,而且还实际讲到了面 ...

  6. java 面试,如何提升自己的实力,摘自 java web轻量级开发面试教程

    本内容摘自 java web轻量级开发面试教程 其中有一段讲述到了实习经验对找工作的帮助 1.2.2大学阶段的实习经验能帮到你 一般公司在筛选简历时,一个非常重要考察的要点是相关经验的工作年限,说一个 ...

  7. (java web后端方向)如何让你的简历为你争取到更多的面试机会,内容来自java web轻量级开发面试教程

    我们在做培训时,会发现一个不合理的情况,一些程序员能力不错,在公司里也是技术牛人,但发出去的简历往往会石沉大海,没有回复.对于刚毕业的大学生或工作年限在2年之内的程序员,这个情况会更严重. 这种情况下 ...

  8. java web轻量级开发面试教程摘录,java web面试技巧汇总,如何准备Spring MVC方面的面试

    本内容摘自 java web轻量级开发面试教程 https://baike.baidu.com/item/Java%20Web%E8%BD%BB%E9%87%8F%E7%BA%A7%E5%BC%80% ...

  9. java web轻量级开发面试教程内容精粹:哪些简历得不到面试机会

    看到一本较好的实践性比较强的书,java web轻量级开发面试教程,里面的一些内容很有实践意义. 问题点 很难获得面试机会的原因 学历不符,比如要求是本科以上,但学历是大专 学历是硬指标,所以达不到学 ...

随机推荐

  1. 利用 bat 批量处理命令实现手动控制mysql /Oracle 服务的开启和关闭

    利用 bat 批量处理命令实现手动控制mysql /Oracle 服务的开启和关闭 因为最近在学习数据库的知识,主要学习的是oracle 数据库,然而好巧啊,java也是在学习,我们老师现在要我们做一 ...

  2. 2017阿里云双11-云服务器ECS优惠活动最强解读和购买指南

    本站之前介绍了<爆款云服务器,限时2折起>,这其实是阿里云双11之前的预热活动:四款低配的机型,二折给用户(每个用户限购一台),非常的实惠,有很多阅读了本站文章的用户都一次性购买了三年的. ...

  3. sql: 左连接 和内连接区别联系

    select * from (select rowtemp.*, rownum rownumtemp from (select u.*, UA.USR_INFO_ID USR_INFO_ID, UA. ...

  4. Java中Httpsession是如何实现的?

    HTTP协议(http://www.w3.org/Protocols/)是“一次性单向”协议. 服务端不能主动连接客户端,只能被动等待并答复客户端请求.客户端连接服务端,发出一个HTTP Reques ...

  5. c#中的Out, params,ref 细说并沉淀

    1. Out,params,ref之前先记录平时用的最多的按值传递参数的情况,当然默认情况下参数传入函数的默认行为也是按值传递的. 1: //默认情况下参数会按照值传递 2: static int a ...

  6. update and的坑

    开发那边抛出个有意思的问题,下面的现象如何解释呢? mysql> select * from A; +------+------+ | t1 | t2 | +------+------+ | 1 ...

  7. 谈谈如何用eoLinker管理各类API接口及分享API接口管理小技巧教程

    在前后端分离的开发模式下,前后端往往需要接口文档来进行交互.我的上一篇随笔中已经写到用传统的文档写接口时,由于需求经常变动,接口文档也会随之变动.一开始,某接口信息已经写入文档,但后期因为需求变动,发 ...

  8. java-基础-泛型

    java泛型通配符问题.   java中的泛型基本用法参考<java编程思想>第四版 p.353 java泛型中比较难理解的主要是类型擦除和通配符相关.   1.类型擦除 在编译期间,类型 ...

  9. boot之mybatis

    特别注意,此种方法和starter不兼容,我用了两个方式混蛋,发现跑不起来! spring: datasource: driver-class-name: com.mysql.cj.jdbc.Driv ...

  10. shell的逻辑运算符

    一.逻辑运算符 逻辑卷标 表示意思 1. 关于档案与目录的侦测逻辑卷标! -f 常用!侦测『档案』是否存在 eg: if [ -f filename ] -d 常用!侦测『目录』是否存在 -b 侦测是 ...