从程序员到架构师需要多久?

Composerthink


我是java程序员,从java程序员成为架构师我用了7年。关于程序员用多长时间才能进阶成为架构师,我认为这因人而异,取决于程序员自身的综合情况,包括:努力程度、学习能力、技术基础与知识等。我在此做一个简单的分享,希望有些许帮助。

一、努力程序+快速的学习能力+扎实的技术基础与知识,助力更快进阶

1、努力程度(自我驱动力)

在这个行业久了,经常看到一些标签:非科班程序员、初级程序员又或者非985程序员……也曾收到过一些程序员的私信,表示对未来感到很困惑,自己所带的这些标签,是否就不容易得到一线大厂或更好的工作机会了?其实起点并不占有绝对的优势,你的努力程度才能决定你的未来。如果你一直为目标坚持努力,即便最终不能成为架构师,至少也能获得职级晋升、技术提升或更好的工作机会。

2、快速的学习能力

曾经有人做过统计,IT行业技术每2~3年会更新一轮,对此我深有体会。大家都向更轻量,学习周期更短的新技术上转移了,即便是存续了多年的技术,也是年年更新迭代。如果项目开发需要用到你的知识经验库没有的新技术,你需要具备把这门技术一周内快速上手的能力,适应不断前进的技术演变。

3、扎实的技术基础与知识

哪些知识算是编程的基础?我个人认为,像数据结构、算法、操作系统等平时工作中虽不常用,但都是一个程序员的功底,也是你面试进入各大公司的敲门砖。参加过工作的程序员们都知道,公司不可能按照你掌握的技能来给你定制项目,而是公司项目需要什么样的技术,你正好掌握了这门技术,那很好,马上开工。如果你并没有这方面知识的储备,对不起,现学也得上。慢慢的差距就能显现出来了,你比别人知道的多了,相信我,你会有更多的机会。

二、程序员进阶成为架构师的几个学习方向

如果上述你都基本匹配,那么接下来你该考虑如何去做了。建议有意识去提高以下几个方面的能力:

1、扎实的JAVA 基础;

2、熟练使用主流框架,譬如:mybatis、spring等;

3、研究过至少一种以web框架的源码,譬如spring mvc 、struts等;

4、至少是某个领域的专家(知识深度),比如消息队列,activeMQ熟悉其源码,知道其实现;

5、需要知道主流技术为什么诞生,能解决什么问题?如果同一种业务用不用的技术来实现,会有什么哪些优缺点?比如:流行的ORM框架Mybatis 和 hibernate ,他们之间的优缺点是什么?要有清晰的认识会能在技术造型时做出正确的决定。

6、对自己所处的业务能够根据自己的知识维度,提出优化建议或者预测其风险点;

7、架构过或参与过高并发系统设计,知道如何应对突发情况;

8、对业务和技术进行抽象。业务抽象就是对需求进行分析后,能够建立完美的实体类以及他们之间的联系。技术抽象是对整体架构进行一个分层,各层之间的交互。这至关重要,如果技术抽象能力不足,这会导致整个系统的架构不灵活,难以维护和扩展。

程序员的工作性质决定不进则退,要跟上新技术新时代,唯有保持不断学习,其实学习也是生活的一种态度,大家觉得呢?祝好~

以下80期架构师学习专题资料、BAT面试题目与答案送给大家,助力进阶。

私信【架构】给优知学院,立即领取架构师80期专题学习资料;

私信【java】给优知学院,立即领取BAT面试题目与答案。



优知学院


我可以告诉你,如果系统学习,只要八个月,前提是需要你有一定的Java经验,否则步子迈的太大你是学不会的

架构师必备:分布式架构+微服务架构+高性能架构+B2C商城项目

https://www.toutiao.com/i6624371332547084808/

资料一下获取方式

关注+转发后,私信关键词 【架构资料】即可获取!

重要的事情说三遍,转发、转发、转发后再发私信,才可以拿到!

如果觉得我是骗子,麻烦绕道,免费的资料都是免费分享的,信则有,不信则无,名额有限,先到先得!!!


java高级


从程序员到架构师多久,这个没有具体的答案,主要看个人资质和经历经验,有的人天生是干这行的料,很快就可以入行,有的人只是打酱油,一辈子就在代码搬运工上,程序员都算不上,程序员和开发两个所需要的知识面不一样.



程序员需要了解一种技术,在某一行业精通,可以独立解决需求和问题基本就可以,是it的一线人员是值得敬仰的,所有的功能都是他们一砖一瓦做出来的.

架构师需要了解的知识面就比较广了,有一点的程序员能力,还需要有行业知识背景,对需求的分析能力,系统设计能力,各项语言和工具的了解熟悉,业务组织等等的综合能力,真正的架构师不是一个称呼而已,是需要沉淀和积累,到是一定的水平,到一个级别.



成功路很多条,每条路都能找到终点,主要看自己的梦愿意前方何方,每一个it从业者可以往不同纬度发展,找准自己的方向加油吧!愿每一个iy创业者可以到达自己梦的终点


JacksDuan


从程序员到架构师需要多久,这个时间的长短没有定论,可能很快,也可永远无法达到。


架构师是什么,先找找定义:

系统架构师是一个最终确认和评估系统需求,给出开发规范,搭建系统实现的核心构架,并澄清技术细节、扫清主要难点的技术人员。


可以看出来,架构师也是一名侧重技术的岗位,但也需要懂需求和管理。


把控需求

大多数时候,架构师需要从需求阶段就介入的,架构需要和需求人员沟通需求,保证自己可以完整的理解和把握客户需求。


架构设计、技术选型

如果是一个新的项目,架构师需要对项目进行分解,形成项目架构,在此基础之上再完成技术选型。

例如,根据项目的需求,要把整个系统分解成多个子系统:一个对外提供接口调用,一个跑定时服务,还有一个专门监听MQ获取消息并进行处理;数据库用Mysql而不是Oracle,定时服务需要要用到zk或者Redis做分布式锁,对外的接口是Rest而不是WebService,这些都需要架构师来确定。

如果是一个老项目,架构师同样需要这次的需求做在什么地方,是在现有技术上就能实现,还是需要引入新的技术。


制定规范、把握方向、踩坑填坑

架构师是要跟随项目的整个流程,架构师就是项目的技术权威,他应该时刻与开发人员进行沟通,让开发人员理解架构意图,实现业务功能。

架构师不是一个指挥者,有一些技术难点,都需要架构师冲在前面解决。而不是当项目遇到一个“坑”时,架构师是要“真刀真枪”的写代码的。


要想成为一名架构师,需要哪些品质呢?

  • 技术深度和广度:这一点不用多说了吧,架构师的技术储备一定要丰富,也就是见多识广。想象一下如果一个架构师连memcached、redis都没听说过(哈哈,说的就是五年前的我自己)。

  • 抽象思维:这是进行系统分析和需求分解的基本素质,具备抽象思维的能力,才能把一个大的需求,分解成一个一个小的功能,但是分解后依然可以掌控全局。

  • 沟通能力:和需求人员沟通,和业务人员沟通,和项目成员沟通...

  • 领导能力:推动整个项目的发展,需要架构师的领导能力,这里说的领导力和项目经理所需的领导力还不太一样,想象一下如果有一个只会写PPT的架构师,做出来的架构设计不切实际,那么怎么可能让开发人员信服。这里的领导能力,更多的是指技术能力的影响,甚至是个人魅力,也就是【可以服众】,让开发人员心里想:“这个架构这牛,跟着他我学到了很多东西,我服”。


当你具备了这些素质的时候,相信你就有能力成为一名架构师了。


希望我的回答,能够帮助到你!

我会持续分享Java程序开发、架构设计、职业发展等方面的知识和见解,希望能得到你的关注【会点代码的大叔】。


会点代码的大叔


谢伟人之躯要请回答。程序员是从事程序工作的一个职称。任何人都是从程序员起步,从程序行业中不断的努力,参加本行业统一考试,才能取得各级别的职称。程序员和助理架构师,都是初级职称,架构师属中级职称。高级架构师属高级职称。再往上经过几年的实践,有行业论文发表。且被上级专业承认。可成本行业专家。

这个需要多长时间我也很难说。这要看你的起步点啦。如果你是大学本科毕业。毕业满一年,从事对口专业,哪你第二年被单位聘用就可以定为助理架构师。从助理架构师升到架构师,需要参加本行业全国统一考试。合格后方能取得架构师资格。如果被单位聘用你就是架购师啦。

这个时间完全由自己决定,各行业考试的时间也不一样。通常每年一次,也有半年一次。也有几年一次。这就要看你的能力和机遇啦!

问答完毕,个人观点,不代表行业规定,不符时以行业规定为准。


Alin94890740


软件架构师相对而言是比较高端的技术人员,最重要的职责就是将客户需求转换为软件产品的总体架构、总体规划、关键技术的选择,并且还要指导开发团队完成这个软件产品的设计开发及实施。

那么,软件架构师就要具备相当的能力才可以胜任。从技术上说,需要进行架构分析、架构概念原型设计及评估、确定软件产品框架、应用硬件软件的选择、具有提供规范的能力、关键技术的解决能力、相应分析及设计模型能力、使用工具能力、实施部署模型、接口事件信号协议等等能力。除此之外,还要有领导或协调整个项目的技术活动,技术决策,制作文档,评价及确认软件各环节的能力等等。

软件架构师基本上需要掌握客户需求,转换为软件架构结构,选择关键技术及软硬件的能力,熟悉开发流程,如何检验软件是否满足要求等等各方面能力。从程序员到软件架构师一般都需要经过几个完整的项目开发过程,才能够清楚了解软件设计开发实施过程,才能够掌握各种关键技术的能力。所以一般来说成长到架构师还是需要一定的时间的。


东风高扬


首先要看其本人的能力与学识,但也要有合适的机遇。



軍中猛虎12345


一方面看能力,一方面看资源。用心工作两三年,其实很多架构层面的东西已经可以自己做了。这之后就要看有没有老板为你的水平买单了。没有,你依然是个程序员,有,那么你就会获得更多的资源和支持,经过一段时间的磨练,你就会成为一个架构师了。最后找一个自己想做的产品,和自己的产品一起成长,还有机会成为一个优秀的架构师。


BuguTian


我觉得这个时间并不是一定的,但也一定需要时间和经验的积累,之前也要5-8年左右的时间。不积跬步~~冰冻三尺非一日之寒~,编码,学习,积累,你离架构师就不远了。


程序狼


架构师不仅要在技术方面有足够得技术积累和提升,业务方面同样要有大量的积累,好的架构都是根据业务需求不断重构和变迁的,所以时间上还需要一定时间来积累和学习的,目前市面上一些培训班大部分水分都很大


分享到:


相關文章: