工作已经8年有余,这8年里特别感谢技术管理人员的器重,以及同事的帮忙,学到了不少东西。这8年里走过一些弯路,也碰到一些难题,也受到过做为一名开发却经常为系统维护和发布当救火队员的苦恼。遂决定梳理一下自己所学的东西,为大家分享一下。
对于开发1-5年的程序员,先简单点,问自己几个问题:
-
你工作几年了,你愿意一直和新入行的新手一样就是个简单的程序员吗?
-
你愿意一直写代码,而不关心其他吗?
-
一个项目的前期需求,设计,后期部署维护,领导找到你,你说咱搞不定,行吗?
程序员不是敲代码的机器。第一年太多东西不懂,你可以一切听从老大的安排,敲敲代码,看看数据库,测试自己和别人的代码;
但是第二年,你还希望这样吗?不可能的,一年的经验你完全可以入行了,是时候该学习怎么进行需求分析,怎么设计数据库,怎么写各类文档,怎么写更好的代码?这是高级程序员的要求!
高级程序员的标配是什么? 月入30K!
什么是高级程序员?
具有分析设计能力,能进行技术攻关,而且具有某行业深厚背景的程序员!
一个项目立项后,你要积极的参与到前期设计中,跟老同志们一道思考分析问题,学习经验!OK,你这就成长啦!
空闲时一定记得要多学习,任何行业从业者都需要不断学习,只有更高效率的工作,才能创造更高的价值。特别是对于程序员来说,一不小心就有可能更不上时代的步伐,天天互联网寒冬,其实哪有什么寒冬,只是懒惰者的托词而已! 不主动学习,等待你的,只有被淘汰!
30K对应的层级分别是什么?
30K的月薪在BAT等一线大厂实在太普遍了,一般是高级工程师和资深工程师的职位,在阿里是p6~p7左右,在百度是t5左右,腾讯是t2-3左右,在京东是t3-1,美团是p6左右,其他的我不了解。
那么我们开发1-5年的Java程序员, 应该学习哪些知识实现跳槽涨薪?
文章篇幅有限,这份Java程序员进阶指南文档资料可提供完整的pdf版,需要的朋友三连之后私信我 “666”或者看下方免费获取。
一、Java筑基(基础)
1.Tomcat
2.Mysql
-
MySQL体系结构和存储引擎
-
InnoDB存储引擎
-
索引与算法
-
锁
-
事务
-
性能调优
3.设计模式
-
24种设计模式与6大设计原则
4.并发编程
-
Java线程
-
线程池
-
生命周期
-
阻塞队列
-
CAS
-
AQS
5.JVM
-
线程
-
JVM内存区域
-
JVM运行时内存
-
垃圾回收与算法
-
GC
-
IO/NIO
-
类加载机制
6.Netty
-
Netty原理
-
Netty高性能
-
NettyRPC实现
-
RMI实现方式
-
Protoclol Buffer
-
Thrift
二、开源框架(SSM框架)
1.Spring
-
Spring特点、核心组件、常用模块、主要包、常用注解、第三方结合
-
Spring IOC、AOP
2.Spring MVC
3.Mybatis
三、微服务架构
1.Dubbo
-
基于XML配置实现
-
Dubbo注册中心
-
Dubbo扩展点加载机制
-
Dubbo启停原理解析
-
Dubbo远程调用
-
Dubbo集群容错
-
Dubbo扩展点
-
Dubbo高级特性
-
Dubbo过滤器
-
Dubbo注册中心扩展实践
-
Dubbo服务治理平台
-
Dubbo未来生态
2.SpringBoot
-
Spring Boot入门
-
配置文件
-
日志
-
Web开发
-
Docker
-
SpringBoot与数据访问
-
启动配置原理
-
自定义starter
3.SpringCloud
四、分布式
1.分布式限流(Nignx+Zookeeper)
2.分布式缓存(Redis+MongoDB+Memcached)
3.分布式通讯(RabbitMQ+RocketMQ+Kafka)
五、性能优化
1.Java性能调优
2.Mysql调优
3.JVM调优
4.Tomcat调优
总结:
我认为,只有弱者才会说'程序员30之后工作不好找"、"程序员30岁之后就要转行了" s
这个时代,技术技术日新月异是不假,但是说“程序员到了一定年龄在创造力和学习能力上都难以跟上年轻的一代"这真的是扯淡。
以上资料有需要的朋友直接扫描下方来免费获取!