Java工程师进阶系统架构师

Java工程师进阶系统架构师

个人有三年多近四年的开发经验,突然有一天开始对自己的职业生涯开始变的迷茫了,之前从事的工作是一种日复一日码农的生活,不管是生活还是工作给自己的感觉都是在不断地重复,毫无激情可言,所以开始思考未来该如何,因为技术栈比较丰富属于全栈工程师,然后就开始思考是不是还有别的进步空间,然后就了解到了系统架构师 ,刚开始我对系统架构师的概念是非常模糊的,其实到现在我都不敢说彻底了解的系统架构师 的职责,先说说此时此刻对系统架构师 的概念吧。
系统架构师 在技术层面上需要精通分布式,Nginx或者是F5,微服务,缓存,持久化,消息队列,他需要熟悉所有这些技术细节里的最常用的解决方案,不能有遗漏,也不可以过度设计,他决定的不是他一个人喜欢的风格,他决定的就是整个团队,在项目死亡之前都必须遵循的规范,现在的团队成员,和未来的团队成员,都必须遵循的体系,他是团队的灵魂,是制定规范的人。
没有不懂业务的架构师,所有的架构,都依赖于业务。所有的架构师,也必须要去写业务代码,不把自己设计的东西,用在真正的项目里,恐怕他们自己都不会知道,这种架构设计的合理性在哪里。所以系统架构师 在业务层面上需要把业务梳理透彻,将每个需求点梳理出来,确定业务场景,在全盘考虑的基础上选择最优的技术框架。
给我的感觉就是一个多个工种的集合体,从需求开始,系统的结构,选用技术、框架,整个系统的安全,可能遇到的问题也需要预先考虑,甚至还需要修复开源软件(框架)的Bug。

需要掌握的技术

知道了这些之后我就开始有意识的丰富自己的技术栈,前端的多种js框架,后端的语言,对应的开源框架,持久化的多种方式,服务器端的运维技术等,但接触这些仅仅是一点微不足道的前期积累罢了,学的东西越多,问的为什么就越多,越感觉到自己的渺小,感觉自己之前定下的架构师目标越来越远了,只能不断地给自己打气让自己从容一些。
同行者们,我们一起加油,在这个数字组成的世界里我们鹰击长空。

我自己梳理了一些需要急需掌握的知识点:
框架源码部分: 阅读Spring核心源码、阅读Mybatis核心源码、23种设计模式在源码中的应用
并发部分: JMM内存模型、并发锁及AQS源码、JUC核心类及CAS底层源码、并发线程池核心源码、Fork/Join并发框架
分布式部分: 分布式协调框架Zookeeper、分布式缓存Redis与Mongodb、消息中间件RabbitMQ,RockerMQ,Kafka 、分库分表ShardingSphere与Mycat 、分布式通讯中间件Netty 、分布式搜索引擎Elasticsearch,Logstash,Kibana
性能调优部分: MySQL性能调优 、JVM性能调优、Tomcat性能调优、Nginx性能调优
微服务部分: SpringBoot核心源码、SpringCloud Alibaba核心源码、SpringCloud Netfix核心源码、虚拟容器Docker与K8S、Service Mech
系统、工具部分: Linux系统、Maven项目管理工具、Git 分布式版本控制系统、Jenkins 自动化部署工具

我会持续分享自己进阶系统架构师的心路历程,有感兴趣的可以关注,大家一起共同成长。

猜你喜欢

转载自blog.csdn.net/baidu_41847368/article/details/106940232