大家好,这篇文章如约而至,接着初篇,我们继续讲述。
架构师到底在做什么?首先要明白软件架构是什么意思。字面上简单理解的话,软件架构=软件的骨架、软件的结构。前者揭示架构中内在的支撑物,后者则表明架构关心支撑物相互结合的某种构造方式。所以软件架构就是事物内部钩稽组合的结构——通常是指具有较大尺度上的结构。
在软件工程和企业信息系统领域,又有很多细分,如所谓的系统架构师(System Architect)、应用架构师(Application Architect)、企业架构师(Enterprise Architect)以及基础设施架构师(Infrastructure Architect)等等。一般来说,应用架构师负责构建一个以解决特定问题为目标的软件应用的内部结合结构,一般以满足各种功能性需求以及维护性需求为设计考虑目标;系统架构师则提供运营支撑软件应用的信息系统的结构设计,一般以满足各种非功能性需求或运营性需求为设计目标(如安全性、可伸缩性、可互操作性等等);企业架构师,就不光只顾IT系统的架构了,他应以企业的持续经营目标为考虑要素来构建企业所需要的内在结构设计;基础设施架构师以及其他架构师职责也大体如此。
当然,现实中的架构师往往会身兼数职,而不仅仅是构思架构本身。比如,大部分软件架构师也会组织软件团队、进行一些相关研究,甚至担负一些行政管理的工作,就不再延伸赘述。
(有些话摘录金戈《代码大全》第2版译者)
所以说,架构师在做的就是为了解决软件问题而找到相对应的解决方法的一个职业。
架构师在公司的定位是什么?公司定位取决于公司的发展。一个超前的软件架构师,在一个停滞的,老旧的公司体质内,可想而知肯定不好过,更别谈什么在公司定位了。架构师和技术总监其实有时候是重合的,技术总监决定了公司的命运,架构师决定了公司技术走向。架构师不能看低自己,你的一个决策,一个选择就有可能让公司陷入低谷。
总结,这篇只要讲的是软件架构师的一些责任和定位。主要的目的是让大家对软件架构师整体上有个大致的了解。了解了要做什么,才能明白你将来或者现在能做什么。怎么去做,做什么地步,做了后会有什么影响。人的一生一直都在选择,有些选择是别人走过的,有些选择是迷幻的。但是请记住,选择了就不要放弃,因为放弃就等于你以前做的都是空白。