当前位置:   article > 正文

全面解析软件架构师_软件架构工程师行业分析

软件架构工程师行业分析

好多同学都曾经问过我这么一个问题“程序员未来的发展方向是什么?”,伴随这个问题的是对程序员未来发展的不确定性,所以还有同学就会直接了当的问“程序员是不是干到35岁就不能干了?”,诸如此类的一些问题。其实如果大家用心,可以从互联网上找到很多答案,很多程序员在用他们的亲身经历在回答这个问题。

在往后的一段时间里,我将通过几篇类似这样的文章和大家分析程序员未来可能的发展方向和职业规划,本文和大家探讨的是“软件架构师”的职位。

软件架构师可以称得上“程序员金字塔上的皇冠”,根据“第三届中国软件工程大会”的报告,在中国,未来五年,高端软件人才需求缺口达20万(注意:是高端软件人才,不是普通的!)。而每年自动成长起来的软件架构师只有几百人,可见市场需求的巨大。

【软件架构师职位概述】

软件架构师一般都是具备计算机科学或软件工程的知识程序员做起,然后再慢慢发展为架构师的。根据软件架构师的任职条件,一名合格的软件架构师的成长应该经历8年以上的软件项目开发实际工作经验。一般需要经历程序员、软件设计师等阶段,然后再发展成为软件架构师。

当然,并不是每一位程序员经过8年后都可以成长为软件架构师的。一个软件工程师在充分掌握了软件架构师工作所必需的基本理论和技能后,如何得到和利用机会、如何利用所掌握的技能进行应用系统的合理架构、如何不断的抽象和总结自己的架构模式、如何深入行业成为能够胜任分 析、架构为一体的精英人才,这就在于机遇、个人的努力和天赋了。

在国内,很多大学目前还没有设立软件架构的学位课程,虽然IT业界对设计和架构的兴趣日渐高涨,但各学校还是无法在课程中增加相应的内容来体现这一趋势。从这个方面来说,学校教育已经远远落后于产业发展。软件学院的培养方式能够系统的学习软件架构师必需的知识体系,但是,软件架构师不是简单的通过理论学习就能够培养出 来的,软件学院的学生可能缺乏必要的设计、开发经验和相关的领域知识。尽管软件学院也强调给予学生实践的机会,但毕竟这种机会是有限的。

【软件架构师的待遇】

下图是我从分智的招聘统计中得到软件架构师的薪资待遇,个人觉得应该比这个数要高。当然,除了薪资,我们还应该注重一些非物质的内容,比如:成就感、人生价值的体现、优越的工作环境和人脉。

软件架构师薪资待遇水平
【软件架构师的职责】

架构师的主要任务不是从事具体的软件程序的编写,而是从事更高层次的开发构架工作。他必须对开发技术非常了解,并且需要有良好的组织管理能力。可以这样说,一个架构师工作的好坏决定了整个软件开发项目的成败。

(1)领导与协调整个项目中的技术活动(分析、设计和实施等)

(2)推动主要的技术决策,并最终表达为软件构架

(3)确定和文档化系统的相对构架而言意义重大的方面,包括系统的需求、设计、实施和部署等“视图”

(4)确定设计元素的分组以及这些主要分组之间的接口

(5)为技术决策提供规则,平衡各类涉众的不同关注点,化解技术风险,并保证相关决定被有效的传达和贯彻

(6)理解、评价并接收系统需求

(7)评价和确认软件架构的实现 专业技能

【软件架构师需要具备的能力】

在技术全面、成熟练达、洞察力强、经验丰富,具备在缺乏完整信息、众多问题交织一团、模糊和矛盾的情况下,软件架构师能迅速抓住问题要害,并做出合理的关键决定的能力,具备战略性和前瞻性思维能力,善于把握全局,能够在更高抽象级别上进行思考。主要包括如下:

(1)对项目开发涉及的所有问题领域都有经验,包括彻底地理解项目需求,开,软件工程活动等

(2)具备领导素质,以在各小组之间推进技术工作,并在项目压力下做出牢靠的关键决策;

(3)拥有优秀的沟通能力,用以进行说服、鼓励和指导等活动,并赢得项目成员的信任;

(4)以目标导向和主动的方式来不带任何感****彩地关注项目结果,构架师应当是项目背后的技术推动力,而非梦想家;

(5)精通构架设计的理论、实践和工具,并掌握多种参考构架、主要的可重模式(例如J2EE架构等);

(6)具备系统设计员的所有技能,但涉及面更广、抽象级别更高; 活动确定用例或需求的优先级、进行构架分析、创建构架的概念验证原型、评估构架的概念验证原型的可行性、组织系统实施模型、描述系统分布结构、描述运行时刻构架、确定设计机制、确定设计元素、合并已有设计元素、构架文档、参考构架、分析模型、设计模型、实施模型等。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/正经夜光杯/article/detail/897894
推荐阅读
相关标签
  

闽ICP备14008679号