数通畅联专注于企业IT架构、SOA综合集成、数据治理分析领域,感谢您的阅读与关注。
个人认为,有的时候不用太相信和在意这些头衔,什么XX总、技术负责人、首席架构师...头衔一个比一个唬人;
我也见过不少PPT架构师,PPT写的非常漂亮,各种架构规划的非常高大上,但是一问到具体实现,又变得支支吾吾起来,嘴里永远是一些大话、套话、虚话。
宰相必起于州郡,猛将必发于卒伍,在我看来,架构师一定是要技术出身。
架构师的工作职责
有些人认为架构师的工作只有架构设计,其余的工作让项目经理和开发人员做就可以了,我认为这种说法是有问题的;在我看来,架构师的工作是要贯穿于整个项目的。
了解和把控需求:我认为架构师从需求阶段就要介入,保证自己可以完整的理解和把握客户需求;任何架构和代码都是服务于需求的;
架构设计和技术选型:如果是一个新的项目,架构师需要对项目进行分解和抽象,最终形成项目架构,并结合项目的实际情况(程序员的开发能力和技术栈),完成技术选型;如果是一个老项目,通常是比较大需求或改版,架构师需要考虑这次的需求做在什么地方,是在现有技术上就能实现,还是需要引入新的技术。
制定规范、把握方向:架构师就是项目的技术权威,他应该时刻与开发人员进行沟通,让开发人员理解架构意图,实现业务功能;有一些技术难点,都需要架构师冲在前面解决;甚至当项目遇到一个“坑”时,架构师是要“真刀真枪”的写代码、“填坑”的。
想要成为架构师,需要培养哪些能力
知道了架构师的工作职责,那么也就不难了解需要培养哪些方面的知识和技能,才能成长为架构师了。
技术深度和广度:虽然有些人PPT写的好、会忽悠,也能成为“架构师”,但是我还是希望自己能成为一个有着真材实料、可以解决实际问题的架构师;所以作为架构师,技术储备一定要丰富;有些软件和框架不一定要了解的非常细致,但是也一定要知道其优缺点、试用场景、可以解决哪些问题、同时也会带来什么问题;
业务知识的积累:架构和技术都是为业务服务的,脱离了业务的架构设计,都是不切实际的;所以想要成为一个架构师,一定要在业务领域有深厚的积累;
抽象思维、模块化思维:这是进行系统分析和需求分解的基本素质,具备抽象思维的能力,才能把一个大的需求,分解成一个一个小的功能,但是分解后依然可以掌控全局;
沟通能力:和需求人员沟通,和业务人员沟通,和领导沟通,和项目成员沟通,和周边项目组沟通...这些都是必不可少的;
领导能力:推动整个项目的发展,需要架构师的领导能力,这里说的领导力和项目经理所需的领导力还不太一样,这里的领导能力,更多的是指技术能力的影响,甚至是个人魅力,也就是【可以服众】,让开发人员心里想:“这个架构这牛,跟着他我学到了很多东西”。
我将持续分享Java开发、架构设计、程序员职业发展等方面的见解,希望能得到你的关注。
架构师是程序员的发展方向之一,所以很多程序员对架构师的工作岗位和工作内容也比较关注。目前IT行业的很多架构师都是从程序员成长起来的,可以说程序员是架构师的一个重要基础。
从程序员成长到架构师大概需要经历四个阶段,分别是初级程序员、主力程序员、核心研发级程序员、架构师。每个解决都有不同的任务,也有不同的知识储备,如果能一步一步成长到架构师,对于程序员来说不仅要有较强的工作能力,还需要有较强的学习能力。