程序员属于关心新库,编码语言,测试覆盖率,完成开发任务等的极客物种。他们通常在一个或几个组件/服务中工作,但他们不决定这些组件如何相互配合以适应整体大局。(有很多开发人员了解这一点,但他们没有必要)
软件架构师属于另一个极客物种,专注于所有组件的设计以及它们如何适应大局以支持业务用例或公司的未来愿景,而不是过多地关注一个组件。有各种类型的建筑师:
1.企业架构师:了解各个组件如何相互交互以及其他后台IT系统(包括CRM,订单管理,BI或网站)的软件架构师。
2.解决方案架构师:软件架构师,除了技术和设计知识之外,在30-50%的时间内在业务方面工作,具有深厚的功能知识。
3.技术架构师:与一个团队或几个团队合作的软件架构师,负责指定编码标准,代码审查,可扩展性,部署,性能等方面。
4.性能架构师:软件架构师,与各个团队合作,测试其组件的性能和线性可扩展性,同时决定编码最佳实践以获得更好的性能。