从程序员到架构师,有捷径吗?
架构师,我们程序员打怪升级的主要方向,它不像某些技能报个培训班就可以获得。胜任架构工作需要具备许多技能,如果想尽快转型升级至架构师,那你必须在日常工作中有意识地储备这些技能。网络上有不少架构师技能图谱,但高质量的很少,大部分都是东拼西凑出来的,脉络不够清晰,层次不够分明,杂乱无章,缺乏逻辑,就像拿着错乱的武学秘籍练功,练不成真本领还是小事,就怕走火入魔、浪费时光。
俗话说:一口吃不成胖子。从程序员到架构师也无法一蹴而就,它是一个循序渐进、稳步提升的进阶过程,每个阶段有每个阶段需要掌握的技能,多项技能之间还存在先后顺序,既有硬技能还有软技能。如果以硬技能为例,我们可以将其分解成下列几个维度:
从职位晋升的角度看,程序员都要历经初级开发工程师、中级开发工程师、高级开发工程师这三个阶段才能进阶至架构师,此后还有架构专家、高级架构专家等职位,再往上就是首席架构师、首席技术官。
从代码规模的角度看,程序员都是从编写函数、类开始起步的,再逐步负责单个模块、子系统、系统、平台等,代码规模从小到大,关联关系从内到外,复杂度变得越来越高,往上有系统群、生态圈等。
从技术堆栈的角度看,程序员入行只要懂某门编程语言就可以了,进阶时需要钻研不同编程语言、开发框架、应用容器、语言运行时、数据库、操作系统、网络协议等,这样才有能力把握各种类型的系统。
从设计方法的角度看,程序员从面向对象设计开始起步,再通过常用设计模式来优化多个类之间的关系,进而钻研领域驱动设计用于分析建模,再往上就是架构设计,包括应用架构、数据架构和系统架构等。
除上述几个维度之外,我们还要跨过性能调优这道门槛,熟悉 HTTP 请求从客户端到服务器、数据库的全流程,掌握基础的压力测试、性能监控等方法,分析定位解决各种性能问题,积累消息、事务、调度、缓存、检索等各类中间件的使用经验,熟悉各种主流的应用安全机制,掌握分层、SOA、微服务、Serverless 等常见架构风格,熟悉分布式系统满足性能、扩展性、可用性、可靠性等要求的解决方案等。
古语云:先为力胜,其后智胜,其后道胜。硬技能,是我们程序员的立身之本,在战场上厮杀,如果没有过硬的功夫,我们很容易小命不保。但光有硬技能只能算个武夫,想要成为带兵打仗的将帅,还要配备软技能。从程序员到架构师,知识体系越来越广,系统规模越来越大,内外干系人越来越多,这都要求我们持续提升学习、沟通和管理等通用能力,以及通过写作、演讲、培训、咨询等途径打造非职权影响力。
技能图谱,也可以称为技能树,它描绘了胜任某个岗位工作所要掌握的技能。从程序员到架构师的进阶过程,就像是用时间精力浇灌培植一棵树,让小树苗逐渐长成参天大树,先有主干,后有枝叶,待到枝繁叶茂就能开花结果了,也就是说等到架构师所需技能全都储备好了,那我们就有信心胜任新岗位工作了。
近期老兵哥准备结合个人真实的成长经历,梳理从程序员进阶到架构师不同阶段所需储备的核心技能项,讲解每项技能的应用场景、价值和关键模型,介绍获取每项技能可以参考的资料书目等,最后描绘一棵脉络清晰、层次分明的技能树,加速打怪升级的进程。对该主题感兴趣的小伙伴,可以关注老兵哥的博客,我会陆续更新相关内容。
关注「 IT老兵哥 」,赋能程序人生!近期热评文章《 程序员必须懂的架构师入门课 》:
- IT老兵哥 2019 全年热评博文
- 架构到底是什么,你知道吗? (阅读人数:1142)
- 架构都有哪些,我该怎么选? (阅读人数:862)
- 架构师都干什么,你知道吗? (阅读人数:1145)
- 练就哪些技能才胜任架构师? (阅读人数:1109)
- 怎样才能搞定上下游的客户? (阅读人数:472)
- 如何从开发岗转型做架构师? (阅读人数:1236)
- 程序员必须懂的架构入门课 (阅读人数:557)
从程序员到架构师,有捷径吗?相关推荐
- 程序员进阶架构师路线
作者简介:曾任职于阿里巴巴,每日优鲜等互联网公司,任技术总监,15年电商互联网经历. 下面是作者根据自己15年的互联网电商经验总结的,Java程序员进阶架构师的路线图,希望对初入职场的同学和对自己技术 ...
- 从程序员到架构师的最佳技术成长之路
我把程序员到架构师的技术成长之路分为几个典型的阶段:工程师 - 高级工程师 - 技术专家 - 初级架构师 - 中级架构师 - 高级架构师,总的成长原则是每个阶段都需要"积累经验.拓宽视野.深 ...
- 软件架构设计(第2版)——程序员向架构师转型必备
软件架构设计(第2版)--程序员向架构师转型必备 温昱 著 ISBN 978-7-121-17087-4 2012年7月出版 定价:39.00元 16开 256页 宣传语:本书内容务实.技能梳理清晰, ...
- 专访|从程序员到架构师:交流和分享最能让技术人进步
(尧飘海:网易蜂巢首席架构师,负责容器云计算平台建设.曾负责过网易博客.游戏.易信,开源项目Pomelo研发工作,热爱开源和技术交流.) 到2016年,云计算发展已有十个年头. 十年前,亚马逊点燃了一 ...
- 程序员到架构师,其实没那么难!
程序员到架构师,其实很简单 很多人做java开发2,3年后,都会感觉自己遇到瓶颈.什么都会又什么都不会,如何改变困境,为什么很多人写了7,8年还是一个码农,工作中太多被动是因为不懂底层原理.公司的工作 ...
- Android从程序员到架构师之路3
本文学习自高焕堂老师的Android从程序员到架构师之路系列教学视频 40 - 认识线程(Thread)模式a 1. 线程(Thread)概念 所谓线程(Thread) 是指一串连续的执行动作,以达成 ...
- 从程序员到架构师的转型思维的转变 NLP思维利器(二)
导读:本文给大家推荐一个NLP里面非常重要的思维工具,可以说是帮助我们做出人生各种重大决策不可或缺的利器,也是形成本书框架的其中一个底层思维逻辑. 我一直在思考,人这一辈子,到 ...
- 从程序员到架构师都需要经历什么?
目录 一.内容简介 二.程序员之间的能力差异在哪里? 1.经历的场景不同 2.在同一个场景中思考问题的角度不同 3.解决问题的方法不同 三.什么是架构? 四.从实际场景中学架构 1.数据持久化层场景实 ...
- 程序员养成架构师之路
原文:5ceo:洒落一地的阳光 .的---><程序员养成架构师之路> 怎样学习才能从一名Java初级程序员成长为一名合格的架构师,或者说一名合格的架构师应该有怎样的技术知识体系,这是 ...
最新文章
- 赠书:啥是指标陷阱?很多就出现在你的身边!
- Qt Creator在编辑模式下工作
- latex插入表格心得
- js(Dom+Bom)第七天(2)
- 你的气质里藏着 英文_寓意满满的小众英文名,高格调、高颜值,挑一个喜欢的吧...
- 三星Galaxy M52 5G通过认证:两个版本 搭载骁龙778G芯片
- python对csv数据提取某列的某些行_python pandas获取csv指定行 列的操作方法
- python 安装pip和Django
- 如果外卖APP想窃听我,有几个骚操作?
- verycd重整——《TrainSignal视频教程》(TrainSignal)[ISO]
- Jquery关闭离开页面时提醒
- c 语言 时空权衡的计数排序程序,算法设计和分析部分算法伪代码.doc
- 查看linux进程日志,查看linux日志_查看linux日志的方法
- Unity漫延的实现思路(流体漫延, 火烧草地的漫延等)
- 机器人的弊议论文_机器人的利弊议论文
- 2022广东最新初级消防员模拟考试试题及答案
- 计算几何入门 1.6:凸包的构造——Graham Scan算法
- 无线Mesh网络相比于传统WLAN的优势有哪些?
- 郭天祥ARM9架构嵌入式linux培训视频教程
- LaTeX 排版(一)——基础应用