不管你愿不愿意接受,普通程序员是很难做到尽头的,对工作1-3年的程序员来说,提前规划自己的职业发展路径就显得特别重要了,程序员的职业发展路径主要有两种:进阶架构师、转型技术管理。
本题目是“如何从程序员进阶到高级系统架构师”,围绕主题,我将从架构师的重要性、架构师主要职责、架构师必备能力这三个方面来分解析:
架构师的重要性架构师,是一个既需要掌控整体又要洞悉局部瓶颈,并依据具体的业务场景给出解决方案的团队领导型人物,他需要参与项目开发的全部过程,包括需求分析、架构设计、系统实现、集成、测试和部署各个阶段,负责在整个项目中对技术活动和技术说明进行指导和协调。曾有人这样形容架构师的重要性:架构师的工作就像是他打造一棵树的主干和枝干,然后程序员们让这棵树上长出树叶和果实。
既然架构师是「灵魂人物」,那么,企业定义的架构师职责有哪些呢?
架构师的主要职责了解企业对架构师的职责要求,能为架构师学习之路提供方向,我在网络上随机提取了企业对JAVA架构师、前端架构师、爬虫架构师发出的面试邀请信息,从中可以获取到企业对架构师这一职位的需求描述:
JAVA架构师
前端架构师
爬虫架构师
简言之,企业对架构师要求:具备多年从业经验+项目开发经历+精通1-2多门编程语言+具备技术广度+熟悉数据库。
我最新梳理架构师的三点主要职责,大家可以了解下:
1、确认需求与拆分系统
在项目开发过程中,架构师需要依据用户需求,将完整的系统拆分为子系统和组件,形成不同的逻辑层或服务,确定各层的接口、层与层相互之间的关系,对整个系统分层进行“纵向”分解,对同一逻辑层分块进行“横向”分解。
2、技术选型
通过对系统的一系列的分解,最终形成了软件的整体架构,依据整体架构需要进行技术选型。
3、制作技术规格说明
在整个研发过程中始终保持与开发人员保持沟通,以保证开发者依照原定的架构意图去实现各项功能。
架构师需具备能力从初级程序员进阶到中级程序员、高级程序员,最终成为一名架构师,这是一个不断经验积累的过程,需同时兼具技术实力(技术广度与技术深度),除此之外,其它软实力也不容忽视,下图列举了一个架构师需具备的各项能力及占比。
软实力就不一一细说,大家都了解,关于架构师需要掌握的技术能力,下面这张架构师技能图谱基本能涵盖。
希望通过以上详解,能够让大家的架构师学习进阶方向更加清晰明了。原创码字不易,觉得不错请点赞支持,送你【分布式架构设计23期原创集合】,回复【架构】,立即领取,已有近300位程序员领取到啦~
Copyright © 广州京杭网络科技有限公司 2005-2024 版权所有 粤ICP备16019765号
广州京杭网络科技有限公司 版权所有