“云时代架构”经典文章阅读感想十二

云时代架构”经典文章阅读感想十二

(牛逼的架构师是怎么炼成的?)

前几周阅读的三四十岁的大龄程序员,应该如何保持自己的职场竞争力?中提到如何在35岁左右可以实现掌握有核心竞争力。其中之一便是转入架构师,如何成为一个优秀的架构师,这是一个都想要了解的事情。

这篇架构便是如何成为一个优秀的软件架构师。优秀的软件架构师并不是从一开始便是软件架构师的,几乎所有的软件架构师都是要从软件编程人员一步一步达成,并且一个架构师并不是想象中的只需要知道如何设计项目就可以了,每一名架构师都必须要有强大的编程能力,也就是成为一个软件架构师需要经历的步骤是:初级开发工程师——中级开发工程师——高级开发工程师——成为架构师。

一.初级开发工程师

综述:主动性,积极主动,能够主动了解相关业务需求,在上级的领导和监督下定期完成量化的工作要求;

项目管理:不需要项目管理的能力,具备管理简单模块开发任务的时间点

开发语言技能及架构能力:1.能独立处理和解决所负责的任务;2.根据开发进度和任务分配,完成相应模块软件的设计、开发、编程任务;3.进行程序单元、功能的测试,查出软件存在的缺陷并保证其质量;

业务理解:1、根据产品需求PRD理解简单模块的业务流程,根据业务流程书写相应的开发流程,能够根据自己的理解评估模块开发的时间点。

影响:1、能影响同级开发人员,得到项目组认可。

二.中级软件开发工程师:

综述:独立性,根据项目具体要求、承担开发任务,按计划完成任务目标。

项目管理:具备有一定初级难度的项目(如链路较短\模块复杂较低\风险较小\发布周期不紧)的PM的经验和能力。

开发语言技能及架构能力:1、理解产品文档,参与需求评审、需求分析、系统设计;2、负责确保项目的进度和质量;3、整理和提交相关设计文档,对负责的功能模块有自测习惯;4、对所负责的模块有维护责任,有问题及时解决。

业务理解:1、熟悉自己负责的业务模块,对业务模块的流程有独立的思考,产品设计时能给出合理有效的方案建议;

影响:1、能影响项目的成员,是团队内公认的主力成员之一;2、加分项:有良好的分享习惯。

三.高级开发工程师

综述:自主性,独当一面,能独立主导和推动项目及任务,在专业领域具备辅导他人的能力

项目管理:具备有一定中等复杂度的项目(如链路较长、模块复杂度较高、风险较大、发布周期较紧、技术驱动等)的PM经验和能力。

开发语言技能及架构能力:1、能独立解决问题,能够负责重要业务模块的需求分析及设计实现。2、熟悉设计原则,能够在日常编码工作中恰当使用,优化原有设计(有实例支撑);3、熟悉编程语言、编码规范、安全规范,具备性能意识,代码具备高可读性;4、了解常用框架背后的原理。

业务理解:1、熟悉自己直接负责的业务,对业务产品具有独立沟通,完善业务需求;并识别方案的风险能力;关注自己参与项目的业务数据;2、能够在所负责的业务及产品上有独立的见解,能提出合理的建议,更有效的解决业务问题;

 

 

影响:1、能影响项目组或产品线的成员,是项目组或产品线公认的主力人员;范围:团队内。2、加分项:具备辅导他人的能力和技能,有良好的分享习惯。

 

四.架构师要求

综述:

系统性,知其然知其所以然。是某一个领域的专家,在专业领域具备一定的预见性,可独立领导跨部门的项目。

项目管理:

具备较高复杂度的(项目如链路较长/模块复杂度较高/风险较大/发布周期较紧/技术驱动等任意两项及以上)的PM经验和能力。

开发语言技能及架构能力:

1、可以写出比较优秀的代码,能够基于设计原则及模式掌握代码演变的方向和节奏;具备技术攻坚的能力;

2、具备高复杂度的平台/框架/业务系统技术与架构设计能力,掌握常见的架构设计方法和模式,理解大型网站所需要用到的架构和技术;

3、熟悉业务的价值、特点及对系统的要求,掌握领域建模的方法,可以对业务进行必要的抽象,并推进技术实现;

4、能够负责复杂度高,平台级产品或跨团队的产品架构,系统设计和实现。

业务理解:

1、行业开发:开发熟悉自己直接负责的及上下游相关的业务,关注业务发展相关的数据并能有效的分析解读;

2、平台开发:熟悉所在业务域,并且负责核心业务目标的分解&落地;能够把纵向行业需求落地为横向产品化形态;

3、在业务及产品规划方面有自己独立的思考,能够影响业务及产品的发展方向。

影响:

在所处的业务线具有广泛的影响力,对相应涉及的技术和业务都能有足够的公信力;具备辅导他人的能力和技能,有良好的分享习惯,对团队有正向影响和帮助。

 

千里之行,始于足下。不积跬步无以至千里,不积小流无以成江海。成为软件架构师并非一日之事,而是需要日积月累,不可能一口吃个胖子。要想成为一个软件架构师就必须要在平时的实践生活中进行积累!

 

 

posted on 2019-05-23 23:41  面向bug的程序设计  阅读(153)  评论(0编辑  收藏  举报