毕业3年,Java程序员年薪拿到20万,是怎么做到的?

我15年专科毕业,到今已有3个年头。期间入职过两家公司。

很多次学习技术,都是走到临门一脚,然后就没有往下了。我和大牛之间的差距就是,别人看完了源码,而我只是会用。

这是我20170412做的一次笔记,最后记住就是有多少种设计模式

系统的了解一下, 是这样的。

然后这样的

有幸阅读了《刻意练习》这本书,收获的3大技巧

第一步:走出舒适区

第二步:寻找导师

第三步:刻意练习

Java程序员学习要求:

分布式、Spring MVC、Spring Boot、Spring Cloud、ZooKeeper、Kafaka、Redis、MQ。

基本就是两招:

1. 用到哪块学通哪块,要学精还是有难度的,第一二次上够用就行,任何知识都架不住多用啊,第三次之后逐一吃透即可。(不要急,也不要求多,这就是我的心态)

2. 多买一些基础书籍,我一般喜欢多看数目录,选择其中看不懂的反复读。

现在最主要的是吸收JAVA的思想和深度理解JAVA企业开发的优势和弊端。

临渊羡鱼,不如退而结网

第一家是为"用友"集团做ERP外包的软件公司。那时候,对于大部分专科生来说,毕业不失业,那就算走上正轨了。

这样从事ERP开发的公司,已经有了一套自己成熟的大型软件框架系统。自己在校了解学习的spring,hibernate等框架并没有得到实践的机会。反而因为数据库SQL的通用性,被安排了一份根据报表需求,专门写SQL的工作,就这样入职培训1个月后,顺利上岗。

那会儿自己只会"select * from emp",能用到分组查询"group by" ,就感觉很深入了。可是,甲方的需求不可能这么简单,各种复杂查询"啪啪啪"得打脸。没有人带,没有人问,面对项目负责人每天的怒骂,只能自己上网搜资料。磕磕绊绊,解决了连表查询,多字段排序,去重,合并等,感觉自己能力增长了不少,有点小膨胀,开始想"我要打十个!!"。甲方没有辜负我的内心想法,顺利完成前几个任务后,工作量开始陡然变大。之后的2个月,每天联系甲方的经理,了解业务;询问老同事,查询数据字典,了解字段含义,就这样,完成了人生工作里第一个项目。

回想这段工作经历,我觉得我最大的收获就是:学会了自己尝试解决问题的能力,而不是面对问题,变得不知所措。虽然效率不理想,但迈出了第一步。如果再深入总结一下,不足之处还有很多。比如:当自己的技能不能胜任工作需求,除了第一时间,学习关键技能(可以向人请教,上网查找),完成工作需求。还应该在课后系统的回顾一下知识点。比如买本书,把基础示例上机敲一遍,我相信,对已经会的内容,你会有新的认识。而不会的,将加入你的技能树中。

之后团队(10来个人)领导内部斗争,拉帮结伙,每天上班并没有很多的工作。我对比一起出来的小伙伴的情况,认为自己的能力和薪资都不会有提高,在入职6个月时,提出了离职。

第二家公司是一家创业小公司(12个人左右),但是公司偏硬件(嵌入式开发:电路板设计,生产,配套驱动等全做),为之服务的软件也是以.NET为主。他们招我进去的职位是java开发工程师,算是填补了web开发方面的空白,在这家公司一直任职到现在。

入职后,先是接手了一个小型Java SE就能做的server项目,同时使用的数据库也从上一家的Oracle变成了MySQL。该项目技术点有基本io,线程,jdbc,JNA(连接硬件c++库),WebService(与C#端做RPC通信)。这个项目同样,没有人交流询问,因为他们也不懂。查询资料期间了解到了CSDN,博客园,开源中国等知名网站。经过一个半月,第一个小版本联调成功,当时成就感满满,跑了大半年几乎没问题。

接下来一直做的都是WEB开发的项目,从简单的前端页面到后台应用服务,都由自己完成。因为业务原因,都是类似的"XXX管理系统"。几个项目上线后根据客户需求,一直在维护。接连几个项目上线,并没有发生什么问题,让我在公司也得到了一份肯定。而我那段时间也安于现状,每天过着"三点一线"式的生活。今年年初,我渐渐意识到了问题。

由于公司业务和当下流行的互联网技术(高并发处理,分布式处理等)完全不搭,且"XXX管理系统"这样的软件同时使用的人数不多,并发访问这种问题几乎没有。一方面,自己平时会浏览CSDN这样的网站,"高并发","虚拟化","XX解决方案"这样高大上的文章点进去,发现自己看不懂的,有些关键词都不了解。一方面,自己回顾自己掌握的技术,也仅仅是SSM和数据库的使用。对linux,虚拟机,版本控制,工程化管理,nosql,集群等根本没有很多深入的认识,再次放大了危机感。

我认真思考了所面临的问题,决定静下心,放下那种"着急"的感觉,从头开始学习。从《Java技术核心-基础知识》开始查漏补缺,结束以后开始看Java Collection框架,自己翻源码,使用uml工具画继承图。从最简单的ArrayList开始,带着网上的结论"ArrayList内部维护的是数组"的结论,看每一个方法的实现原理。看着自己明白了以前不曾去想的实现原理,也拾起了信心。接下来通过学习tomcat的实现过程,对servlet有了进一步的认识。

一次偶然的机会,在网上看见了小马哥的《理解Java内省机制》。内省?是什么?当时的我一脸懵逼,难道之前的java白学了?点进去一看,哇,原来除了反射,java还有这种机制!也正是这次,小马哥那种三言两语就能将复杂原理说清楚的能力,让我再次认识了java!期间从NIO,到手写IOC。虽然自己会使用,但每一次都有新的收获!

那如何学习才能快速入门并精通呢?

当真正开始学习的时候难免不知道从哪入手,导致效率低下影响继续学习的信心。

但最重要的是不知道哪些技术需要重点掌握,学习时频繁踩坑,最终浪费大量时间,所以有一套实用的视频课程用来跟着学习是非常有必要的。

为了让学习变得轻松、高效,今天给大家免费分享一套阿里架构师传授的一套教学资源。帮助大家在成为架构师的道路上披荆斩棘。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏我是攻城师

新浪网/系统架构师饶琛琳:那一年,我毕业了

3434
来自专栏腾讯NEXT学位

10个妨碍进步的前端学习方式

3515
来自专栏编程

手持 Python 利剑,一路向前

学习 Python 课程究竟有什么用?Python 课程学员假牙运用课程所学,在工作中设置自动化检验脚本,为团队排除 bug 规避风险。「最难受的时候再坚持一下...

20410
来自专栏Web行业观察

前端工程师的未来在哪里?

前端工程师首先是个程序员,其次也是个软件工程师,他们工作在离用户最近的地方,负责人机交互和用户体验,虽然叫“前端”,但其实他们的工作边界其实已经很宽了。

933
来自专栏Java架构

Java程序员月薪达到三万,需要技术水平达到什么程度?

1989
来自专栏数据库新发现

拉里·埃里森亲自支招,数据库自动化之后,DBA何去何从?

作者:eygle |English 【转载时请标明出处和作者信息】|【恩墨学院 OCM培训传DBA成功之道】 链接:http://www.eygle.com...

1543
来自专栏AI科技评论

开发 | 2017数据库大趋势:PostgreSQL最受关注

AI科技评论消息,近日,国外知名 IT 技术媒体 Jaxenter 进行了数据库观点调查,对开发者眼中数据库领域最热门的话题、最热门的数据存储以及处理工具进行统...

36012
来自专栏非著名程序员

Java程序员月薪达到三万,需要技术水平达到什么程度?

1555
来自专栏架构专栏

在一线城市做Java开发如何月薪达到两万,需要技术水平达到什么程度?

有人回答说这只能是大企业或者互联网企业工程师才能拿到。也许是的,小公司或者非互联网企业拿两万的不太可能是码农了,应该已经转管理。还有区域问题,这个不在我的考虑范...

2211
来自专栏Java架构解析

什么水平的java工程师月薪3万起?

什么水平的java工程师月薪3万起?首先java基本功需要具备,所谓的基本功,不是简单的能写出代码,除了能写出来之外还要,在代码质量上面需要具体一定体现,比如对...

2740

扫码关注云+社区