Java架构师的基本能力
Coder_Boy_ 人气:0总体而言,架构师负责软件领域的顶层设计。架构师需要根据公司的发展,规划企业未来若干年的架构,制定可落地的架构方案,解决技术难题,做技术选型与攻关,落地具体的架构。优秀的架构师既能做架构方案,也能写具体的架构代码。
架构师要求比较高,要有架构的广度、深度,需要掌握一系列的架构技术栈,要求有架构实战经验,要有很强的系统分析、系统架构、系统设计,业务分析的能力
首先要有架构师的思维,对分布式、高并发、高性能、高可用、可扩展、松耦合、高内聚、可复用、系统边界、安全等方面有深刻的理解 。
技术面要广,熟悉架构技术栈,比如:熟悉微服务,缓存,分布式消息中间件,分布式任务中间件,数据层中间件,分布式监控中间件,网关中间件,分布式配置中心等等,并不是所有的技术栈要非常精通,但重要的技术,一定要掌握得非常深 。
掌握好uml,提升个人系统分析、系统架构、系统设计、画业务架构图、技术架构图、写架构方案等方面的能力 。
有一定的技术广度,做技术选型是从技术的使用场景,优缺点等方面综合评估的。例如很多企业用RocketMQ和kafka,大数据基本100%选kafka.
业务架构师与基础架构师区别
对于java程序猿而言,架构师分为业务架构师,基础架构师两大类,从高级开发转成业务架构师,难度小,出成绩快。业务架构和基础架构有70%是一样的,那就是都要求有架构能力,剩下的30%是业务架构要求熟练掌握业务,制定架构方案,架构落地,基础架构则是100%要求纯技术。短期而言,看似基础架构更风光,其实不然。业务架构发展前景更好一些,因为35岁以后,拼的是综合能力,不再是纯架构能力。业务架构要求有更好的沟通能力,架构规划,架构落地能力,一定的行业业务背景,甚至管理能力,所以从业务架构更容易做到技术总监或cto。如果一直做基础架构,那么可能是首席架构师。一般的架构老司机是业务架构,基础架构通吃的,好就业。
如何做技术选型?
技术选型是个能力活儿,架构师经常做技术选型,会出有答案的选择题,有几种方案,给到技术高管或者开发团队。而不是一上来就是写架构代码。失职的架构师是给技术领导或者技术团队出问答题,长期出问答题,基本可以走人了。架构师要有一定的架构功力,会给领导或技术团队出选择题,总有一款技术适合的,比较每一种技术(方案)的优缺点,技术领导或者技术团队会很喜欢的,以技服人。架构思路一般是 :问题(背景)--》技术调研(选型)---》规划(方案)---》落地(撸代码),任何架构或者技术,都要解决问题的,要有价值。
总结
本篇文章就到这里了,希望能够给你带来帮助,也希望您能够多多关注的更多内容!
加载全部内容