小团队一般 10 人左右,其中常常是技术最牛的人做架构师(或TL)。所以,架构师在广大码农中的占比大概平均不到 10%。而架构师也可以分为初级、中级、高级三档,江湖上真正高水平的软件架构师就更少了。
所以,大部分(超过九成的)码农干上许多年,还是做不了架构师,这是什么原因造成的呢?
码农分为真的能写代码的,以及自认为能写代码的。
真的能写代码的码农又分为自认为写的不错的,以及真的还不错的。
真的能写不错代码的码农又分为会钻研会不断优化的,以及安于现状的。
会钻研的码农又分为喜欢广度了解新技术蜻蜓点水的,以及深入钻研用到知识的。
了解广度的码农又有少部分愿意深入某些技术,喜欢深入研究的又往往缺乏广度知识。
极少深度广度都关注的码农又分为为技术而技术和为业务而技术的。
纯为技术而技术的码农在国内的软件行业需求太少,且需求的往往不是应用软件领域了。
为业务而技术的深度广度都了解的码农,又需要有良好的沟通能力。
而沟通好的,又有一部分当PM去了。
然后剩下的,又有一部分慢慢脱离实际开发(不再做任何实现)或者开始依靠拿各种中间件搭积木来作为“架构”手段。
除去这些,剩下对业务有一定了解,对技术广度上有多种涉猎,深度上对部分技术研究彻底,还有很重要的一点,考虑问题足够细致全面。
细致全面善于沟通,技术上深度广度都没问题, 又喜欢这个工作,还会不时做底层实现,从业务和开发两个角度出发,搭出“架构”来是为了开发效率,为了运行效率,为了开发质量,为了业务灵活和运行稳定,为了维护方便等等这样的人,个人认为可以称为“架构师”。
总之,成为架构师,不仅仅是工作上的简单积累,更需要主动接纳工作外的大量知识,同时,对性格上对于非技术能力上也有一定的要求,不仅如此连思维方式都很重要,外加职业发展中又有很多岔路,最后走到架构师这根树枝上的就寥寥可数了。
如果你想要往架构师的方向发展的话,那或许你可以看一下我分享给你的这份进阶路线图, 主要针对2到5年及以上工作经验的Java开发人员 ,里面的技术包涵了 Java高并发 、分布式 、微服务、源码分析、高性能 等技术,这些也是目前互联网企业比较常用的技术,那么来详细看看。(图片可以保存)
学习Java技术体系,设计模式,流行的框架与组件
常见的设计模式,编码必备
Spring5,做应用必不可少的最新框架
MyBatis,玩数据库必不可少的组件
工欲善其事必先利其器,不管是小白,还是资深开发,玩Java技术体系,选择好的工具,提升开发效率和团队协作效率,是必不可少的:
Maven,项目管理
Jenkins,持续集成
Sonar,代码质量管理
Git,版本管理
高并发,高可用,海量数据,没有分布式的架构知识肯定是玩不转的:
分布式架构原理
分布式架构策略
分布式中间件
分布式架构实战
业务越来越复杂,服务分层,微服务架构是架构升级的必由之路,Java技术体系,和微服务相关的技术有哪些呢?
微服务框架
Spring Cloud
Docker与虚拟化
微服务架构
任何脱离细节的ppt架构师都是耍流氓,向上能运筹帷幄,向下能解决一线性能问题,Java技术体系,需要了解:
性能指标体系
JVM调优
Web调优
DB调优
以上是自己收集总结的Java架构技术图谱,自己因为比较喜欢技术,所以收集了一些Java高并发、分布式、JVM、spring、源码分析和kafka等架构技术资料,如果你也对技术感兴趣可以来我的Java后端技术群( 436456239 ),可以到群里来下载这些资料,这段时间正值面试期,欢迎大家进群讨论与学习。
长按扫码加群: 436456239 ,免费领取资料
↙点击“阅读原文”查看更多精彩内容