从毕业到现在已经快4年啦,一直在Java的WEB开发行业混迹。我不是牛人,但是自我感觉还算是个合格的程序员,有必要写下自己将近4年来的经历,给自我以提示,给刚入行的朋友提供点参考。
貌似这一点适应的行业最广,但是我可以很肯定的说:当你从事web开发一年后,重新找工作时,才会真实的感受到这句话。
工作第一年,往往是什么都充满新鲜感,什么都学习,冲劲十足的一年;WEB行业知识更新特别快,今天一个框架的新版本,明天又是另一个新框架,有时往往根据项目的需要来不断学习新东西;所有,很多时候感觉,自己用过的东西真多呀!但是真正深入研究的东西却不多。
面试,是跳槽后第一个需要面对的问题;而且不同公司面试的着重点不同;但是却有一个共同点:Java基础是必考的。工作第一年,可能问你String对象创建的理解,常用的框架是什么等等;工作第二年,就问你Java内存分配机制是什么,类是如何加载的等等;第三年,就问你常用的设计模式是什么,你在工作中充当什么角色,怎么独立完成一个模块等等;
可以看出------这是一个典型的程序员的成长过程:
使用Java---->深入理解Java积累经验------>独立设计分析能力------>独当一面的多面手!
因此,必须学习:
列举一些技术
比如对集合类,并发包,IO/NIO,JVM,内存模型,泛型,异常,反射,等有深入了解,最好是看过源码了解底层的设计。比如一般面试都会问ConcurrentHashMap,CopyOnWrite,线程池,CAS,AQS,虚拟机优化等知识点,因为这些对互联网的企业是绝对重要的。而且一般人这关都过不了,还发闹骚说这些没什么用,为什么要面试。举一例子,在使用线程池时,因为使用了无界队列,在远程服务异常情况下导致内层飙升,怎么去解决?你要是连线程池都不清楚,你怎么去玩?
1. 数据库再举一例,由于对ThreadLocal理解出错,使用它做线程安全的控制,导致没能实现真的线程安全。所以作为一个拿两万的JAVA程序员这点基础是要有的。最常用的是Oracle了(当然银行项目等需要DB2等),熟练掌握使用存储过程,触发器等;
2. UML
项目中经常要写文档,项目经理的基本功,程序员走向设计的基本功;
3. 设计模式
这个建议多看吧,在阅读源码中体会;
4. linux系统
需要掌握常用的linux命令------部署在windows操作系统上的项目很少吧。
其他就不多说了,大家可以补充。
学习上,兴趣是最大的老师;项目驱动也是不错的选择,总之,不学习不行。
5.现今面试基本都会问到这些:多线程 、高并发 、IO、 NIO、 分布式、 JVM原理与调优 、各种框架(源码级别)、 SQL性能优化、 搜索引擎、 规则引擎、集群、 负载均衡、 Tomcat性能优化、 Nginx、 RabbitMQ、 Redis、 Memcache、 MongoDB、 AngularJS、 Activity工作流、 WebService、 Https、网络通信、Linux还有各种设计模式。
所以为了将来不被问倒,那就需要现今的努力学习,增强自己的力量。
下面分享的是本人四年来收集整理的学习线路图。对于想要提升自己,对自己未来迷茫的Java工程师们,如需要这些架构路线图,以及我们整理的一些架构师精讲资料,可以转发关注我,然后私信‘架构’即可获取哦,涉及的知识点(Dubbo、Redis、设计模式、Netty、zookeeper、Spring cloud、分布式、高并发等架构技术)。
1、源码阅读
作为程序员,阅读源码能使我们更加的理解提升。
Spring源码
MyBatis源码
2、分布式架构
对于现在互联网公司,分布式是我们需要掌握的。
分布式架构
3、团队开发工具
一个好的开发工具能让团队效率提升十倍。
团队协作开发
4、微服务架构
微服务现在是非常火的主流技术,如果我们没掌握,那么升职加薪也没底气。
微服务架构
5、设计模式
对于我们程序员来说,常见的设计模式是编码必备,掌握了它我们会变得更强。
设计模式
6、并发编程
对于我们来说,从架构设计,到应用层调优,再深入了解底层原理,扎实的Java基本功才能让自己变为扫地神僧:
并发编程
以上就是本次笔者分享的技术学习路线图。对于想要提升自己,对自己未来迷茫的Java工程师们,如需要这些架构路线图,以及我们整理的一些架构师精讲资料,可以转发+关注我,然后私信‘架构’即可获取哦,涉及的知识点(Dubbo、Redis、设计模式、Netty、zookeeper、Spring cloud、分布式、高并发等架构技术)。
转发,转发,转发后私信才可获取哦。
精讲架构视频资料获取方式 转发 转发 转发 关注我私信回复“架构”即可领取
最后的话
为什么某些人会一直比你优秀,是因为他本身就很优秀还一直在持续努力变得更优秀。而你是不是还在满足于现状且内心在窃喜?“对于程序员来说,如果哪一天开始他停止了学习,那么他的职业生涯便开始宣告消亡。”所以行动起来,学习起来!