架构师,我们程序员打怪升级的主要方向,它不像某些技能报个培训班就可以获得。胜任架构工作需要具备许多技能,如果想尽快转型升级至架构师,那你必须在日常工作中有意识地储备这些技能。网络上有不少架构师技能图谱,但高质量的很少,大部分都是东拼西凑出来的,脉络不够清晰,层次不够分明,杂乱无章,缺乏逻辑,就像拿着错乱的武学秘籍练功,练不成真本领还是小事,就怕走火入魔、浪费时光。




俗话说:一口吃不成胖子。从程序员到架构师也无法一蹴而就,它是一个循序渐进、稳步提升的进阶过程,每个阶段有每个阶段需要掌握的技能,多项技能之间还存在先后顺序,既有硬技能还有软技能。如果以硬技能为例,我们可以将其分解成下列几个维度:

*

从职位晋升的角度看,程序员都要历经初级开发工程师、中级开发工程师、高级开发工程师这三个阶段才能进阶至架构师,此后还有架构专家、高级架构专家等职位,再往上就是首席架构师、首席技术官。

*

从代码规模的角度看,程序员都是从编写函数、类开始起步的,再逐步负责单个模块、子系统、系统、平台等,代码规模从小到大,关联关系从内到外,复杂度变得越来越高,往上有系统群、生态圈等。

*

从技术堆栈的角度看,程序员入行只要懂某门编程语言就可以了,进阶时需要钻研不同编程语言、开发框架、应用容器、语言运行时、数据库、操作系统、网络协议等,这样才有能力把握各种类型的系统。

*

从设计方法的角度看,程序员从面向对象设计开始起步,再通过常用设计模式来优化多个类之间的关系,进而钻研领域驱动设计用于分析建模,再往上就是架构设计,包括应用架构、数据架构和系统架构等。

除上述几个维度之外,我们还要跨过性能调优这道门槛,熟悉 HTTP
请求从客户端到服务器、数据库的全流程,掌握基础的压力测试、性能监控等方法,分析定位解决各种性能问题,积累消息、事务、调度、缓存、检索等各类中间件的使用经验,熟悉各种主流的应用安全机制,掌握分层、SOA、微服务、Serverless
等常见架构风格,熟悉分布式系统满足性能、扩展性、可用性、可靠性等要求的解决方案等。


古语云:先为力胜,其后智胜,其后道胜。硬技能,是我们程序员的立身之本,在战场上厮杀,如果没有过硬的功夫,我们很容易小命不保。但光有硬技能只能算个武夫,想要成为带兵打仗的将帅,还要配备软技能。从程序员到架构师,知识体系越来越广,系统规模越来越大,内外干系人越来越多,这都要求我们持续提升学习、沟通和管理等通用能力,以及通过写作、演讲、培训、咨询等途径打造非职权影响力。


技能图谱,也可以称为技能树,它描绘了胜任某个岗位工作所要掌握的技能。从程序员到架构师的进阶过程,就像是用时间精力浇灌培植一棵树,让小树苗逐渐长成参天大树,先有主干,后有枝叶,待到枝繁叶茂就能开花结果了,也就是说等到架构师所需技能全都储备好了,那我们就有信心胜任新岗位工作了。


近期老兵哥准备结合个人真实的成长经历,梳理从程序员进阶到架构师不同阶段所需储备的核心技能项,讲解每项技能的应用场景、价值和关键模型,介绍获取每项技能可以参考的资料书目等,最后描绘一棵脉络清晰、层次分明的技能树,加速打怪升级的进程。对该主题感兴趣的小伙伴,可以关注老兵哥的博客,我会陆续更新相关内容。今天先分享到这里,如果你觉得有价值,麻烦动动手指 
转发 给其他需要的小伙伴。另外,老兵哥我后续还会分享职业规划、应聘面试、技能提升、影响力打造等经验,欢迎 关注 本博客或歪信公主号 「 IT老兵哥 」!



关注「 IT老兵哥 」,赋能程序人生!

友情链接
KaDraw流程图
API参考文档
OK工具箱
云服务器优惠
阿里云优惠券
腾讯云优惠券
华为云优惠券
站点信息
问题反馈
邮箱:[email protected]
QQ群:637538335
关注微信