粉丝求助:JAVA程序员,4年了,很迷茫,希望前辈可以给指出一个技术路线和需掌握的知识技能树;

路线

Java程序员未来的路线无非就是︰项目经理,产品经理,技术经理,开发总监,架构师,DBA,甚至是售前,要么就是洗手不干了,一般工作了四到五年了还很迷茫的朋友,大多是在公司不停的复制粘贴,再复制再粘贴的过程,基本上没机会去设计整个(部分)系统,也不会去设计数据库,要么就是系统就百八十人在用,也不考虑性能,代码堆完就OK了。每天的工作一样,基本上都在混日子,想跳槽跳出去工资也涨不了多少,年纪轻轻的就处于养老状态了。

跳槽

===

我是一直鼓励别人跳槽的,人嘛,年轻的时候就得折腾,当在A公司学习不到新东西了,那么赶紧往B公司跳,小公司往大公司跳,传统软件企业往互联网企业跳,多见些新的东西,对自己是有好处的。

技能

关于技能树,我觉得其实不重要,如果你工作五年了还是和人家讨论,我会用
Spring,SpringVMC,mybatis等,是不是太掉身价了?会用这些东西,和会用word,excel一样,本质上是一样的,只是一个工具,仅此而已,我们去学习这些东西,不是要学怎么用,而是要学人家为什么这么设计,有什么好处,底层原理是什么等等。

程序=数据结构+算法;所以数据结构是一定要看的,看了数据结构以后,基本上就会举一反三了,数据结构本身是和语言无关的,让你的思维不再受语言本身所控制,甚至可以把数据结构的知识扩展到数据库的层面。虽然表面上我们是叫Java程序员,其实工作中,无一不和数据库打交道,Java其实只是一座桥梁,连接了用户(客户端)和数据库,学习数据库不是说会增删改查就行了,而是要去学习怎么去写SQL性能更好,如何设计方便查询,方便以后扩展,而不是每次需求有一点变动就去频繁的修改数据库表结构等。更不用说什么数据库的四大特性︰原子性、一致性、隔离性、持久性这些了,事务这些就更不用说了。

再然后就是高并发,多线程这些东西,想进大厂( BATMJJ),这些东西说不出个所以然了,基本上是没戏的。

JDK源码不要求所有的都看—遍,但常见的类如∶
String,StringBuffer,List,ArrayList,HashMap,TreeMap,LinkedHashMap等你得看个两次三次吧。

JVM相关的知识,也是要去学习的,毕竟我们写的Java程序是跑在JVM上,要完整的理解Java,这方面的知识是必不可少的。
记住一点,基础决定上层建筑。基础一定要打牢。然后就是面临转型了,不管是项目经理/产品经理,技术经理,开发总监,还是架构师,DBA,选择自己喜欢的一个方向去吧。基础扎实了,成功只是一个时间问题。

推荐阅读:

程序员自学的七条路(思路版)

价值2W多的职业规划,你确定不来白嫖一次吗?

24岁60万年薪简历分享,程序员达到50W年薪需要哪些技能?

看完三件事❤️

========

如果你觉得这篇内容对你还蛮有帮助,我想邀请你帮我三个小忙:

点赞,转发,有你们的 『点赞和评论』,才是我创造的动力。

关注公众号 『 Java斗帝 』,不定期分享原创知识。

同时可以期待后续文章ing

最后请加油,祝成功。

你可能感兴趣的