一般来说技术团队的金字塔顶尖往往是技术最牛的人做架构师(或TL)。所以架构师在广大码农中的占比大概平均不到 20%。而架构师也可以分为初级、中级、高级,江湖上真正高水平的架构师就更少了。
所以,80%的Java程序员干上许多年,还是做不了架构师,只剩下20%才有可能成功踏入架构师的门槛,正在辛苦工作的程序员们,你有没有下面几种感觉?下面和千锋广州小编一起来看看吧!
① 我的工作就是按时完成领导交给我的任务,至于代码写的怎样,知道有改进空间,但没时间去改进,关键是领导也不给时间啊。
② 我发现我的水平总是跟不上技术的进步,有太多想学的东西要学,Swoft用的人最近比较多啊,听说最近Swoole比较火,还有微服务,听说PHP又更新了……
③ 我发现虽然我工作5年了,除了不停的Coding写业务代码,Ctrl+c和Ctrl+V更熟练了,但编码水平并没有提高,还是一个普通程序员,但有人已经做到架构师了。
④工作好几年了,想跳槽换个高薪工作,结果面试的考官都问了一些什么数据结构,什么垃圾回收,什么并发架构、协程编程之类的东西,虽然看过,但是平时用不着,看了也忘记了,回答不上来,结果面试官说我基础太差……
如果有以上问题,那么你绝对进入学习误区走了弯路;如果我们要成为架构师,我们自己要面临的三大问题:
我在这里给那些想达到这个高度甚至想往架构师发展的程序员提供一份进阶路线图,主要针对2到5年及以上工作经验的Java开发人员,从广度到深度架构图还比较全面的,里面的技术包涵了Java高并发、微服务、源码分析、源码分析、高性能、分布式等技术,这些也是目前互联网企业比较常用的技术,那么来详细看看。
一:常见模式与工具
学习Java技术体系,设计模式,流行的框架与组件
—— 常见的设计模式,编码必备, Spring5,做应用必不可少的最新框架,MyBatis,玩数据库必不可少的组件......
二:工程化与工具
工欲善其事必先利其器,不管是小白,还是资深开发,玩Java技术体系,选择好的工具,提升开发效率和团队协作效率,是必不可少的:
Maven,项目管理
Jenkins,持续集成
Sonar,代码质量管理
Git,版本管理
三:分布式架构
高并发,高可用,海量数据,没有分布式的架构知识肯定是玩不转的:
分布式架构原理
分布式架构策略
分布式中间件
分布式架构实战
四:微服务架构
业务越来越复杂,服务分层,微服务架构是架构升级的必由之路,Java技术体系,和微服务相关的技术有哪些呢?
微服务框架
Spring Cloud
Docker与虚拟化
微服务架构
五:性能优化
任何脱离细节的ppt架构师都是耍流氓,向上能运筹帷幄,向下能解决一线性能问题,Java技术体系,需要了解:
性能指标体系
JVM调优
Web调优
DB调优
六:底层知识
从架构设计,到应用层调优,再深入了解底层原理,扎实的Java基本功才能让自己变为扫地神僧:
内存模型
并发模式
线程模型
锁细节
七:项目实战
无需赘述,如果没有实战经验,如何成为一名架构师?
能掌握以上技术这些人必然具备在技术上独当一面的能力并且清楚自己未来的发展方向,从一个Coder逐步走向CTO或是架构师,成为项目组中不可或缺的人物,你掌握了以上的几点呢?
留言与评论(共有 0 条评论) |