文档章节

我是如何成长为系统架构师的

FansUnion
 FansUnion
发布于 2015/05/03 01:26
字数 1831
阅读 17
收藏 0

本文2012-6-12 23:19 发表在QQ空间,转载自 CSDN 某博客。具体地址 待 补充。

 

来这家公司从事信息化工作已经有三个年头了,有必要对这三年的工作和成长以及不足之处做一个总结。

刚来公司的时候,领导决策要将系统重新开发。有的是成熟的业务逻辑,老的搬过来就可以了。当然,由于随着企业业务的发展,会有新的需求,但大部分的需求是不变的。

在项目的开发方面

没有的是:

1.没有熟悉JAVA的开发人员。

2.没有J2EE项目的经验。

有的是:

1.IT项目的开发、测试和维护经验。

2.数据库系统开发经验。

上述便是我的团队情况的简要概况。项目总是要做的,因为领导决策了啊。

先看上述两个问题我们是如何解决的。

1.针对开发团队没有JAVA的开发经验,进行培训,由我亲自操刀。培训为期15天,从开发环境熟悉,到JAVA基础知识,上午半天讲知识,下午上机练习。

2.针对没有J2EE的项目经验。

整个项目就我一个人有过J2EE的项目经验,但是我以前没有做过J2EE项目的架构师或管理人员,我只是做过开发,熟悉里面的技术和开发技巧。怎么办?我们是这样解决的,请老师。专门请了老师来讲架构设计知识。这还不够,我们花钱请人做架构设计。

但只是做架构设计,生成一个架构说明书后,离架构的工作还很远,还有很长的路要走,而在合作公司做好架构设计后,他们的工作也就基本结束了。后面的架构的工作,基本上是由我来做的。

我说说我都做了什么事情。

1)按照架构说明书,将整个架构环境搭建起来。

2)开发一套便于开发人员开发的开发框架。

3)设计了SwingMVC模式,并开发实现。

4)开发了整个系统的基础组件,为了实现架构中的复用的原则,这个很重要。

5)负责整个系统的权限的管理,这个很重要,跟各个模块都有关系。

6)负责开发的编码规范的制定,包括JAVA的编码的规范,同时还有质量属性方面的编码的规范。

上述,只有(1)是现成的,其它的都是具体的架构方面的工作。

很多人,都以为,架构师嘛,不就是高高在上的,待在象牙塔里给开发人员发号施令的人吗?其实不然,架构师需要每天跟开发人员在一起,一起写代码,一起工作,一起交流。

回顾起,在搭建快速开发框架的过程中,开发人员在开发的过程中,提出了很多有意义的改进的意见,直到今时今日,我们还在改进。只有开明的架构师,才能够设计出好的系统,好的基础组件。当然没有意义的,也被筛选掉的,架构师必须要有这样的决断力。

SwingMVC模式就不说了,可能每个团队对于该项设计都会有所不同。

说说如何实现组件的复用,要实现组件的复用,必须要鼓励开发人员复用已有的组件以统一界面风格以及减少工作量。那么,就要告诉开发人员,目前我们的系统有哪些基础组件,他们都是怎么样使用或调用的。有了这些,开发人员自然就肯用了。

关于编码规范,可能很多人觉得这是项目开发中的小事情,其实不然,某位架构大师说过,架构无小事,编码规范的执行不力,直接影响到整个项目的代码质量,甚至影响质量。例如,要求不要出现在循环,要释放对象,尽量用StringBuffer等。编码规范的执行的难度是,不是说你有没有规范,而是你的规范有没有被执行。那么如何使得你的规范被执行呢?

这就需要架构师的耐心和沟通能力了。在整个项目的开发过程中,架构师始终要保持与开发人员的沟通,苦口婆心地说,编码规范的重要性。时间长了,开发人员养成了好的习惯,架构师也就省心了。

----------------------------------------------------------------------------------------------------------

根据上述经验,我做个总结。

1.架构师是整个团队的技术领导,需要具备领导能力

2.架构师需要较强的沟通能力,需要与项目的各个方面的人员进行沟通。

与项目经理沟通,帮助项目经理制定合理的开发计划;

与需求分析员沟通,了解系统的关键需求和非功能性需求;

与开发人员沟通,使得架构设计能够被真正执行;

另外还有与物理架构负责任沟通等等。

3.架构师需要编写代码,这样使自己积累更多的代码经验,加深理解设计模式,可以帮助自己对于整个项目更加熟悉,同时能够回答开发人员在开发过程中出现的所有的问题,树立个人威信。

4.架构师需要有较强的IT知识和广博的知识面IT的知识更新非常快,现在云计算等的出现,必然要淘汰一部分架构师,因此,架构师要保持生命力,必须要不断地学习。

5.架构师要懂业务知识。架构设计要满足系统的需求。我虽然刚到公司不久,但由于之前积累了很多业务相关的知识,经过短期的学习,也掌握了业务知识。

6.不要怕做事情,我在整个系统的开发过程中,我的开发量是别人的三倍还多,但我收获的,则也是三倍还多的经验。

自己的不足之处:

1.有时候会着急,当规范强调了10遍,还是没有得到很好的执行时,就开始没有耐心了。

2.需要加强沟通能力,将自己的想法能够推销出去。

3.需要在更多的业务领域知识方面得到快速的增长。

下一步的目标

1.系统理论地学习架构知识,使得知识更加固化,以进一步使得架构设计更加科学和有调理;

2.通过广泛地阅读学习企业信息化的各个方面的知识,包括ERPSCM,营销管理,企业战略,企业管理等,每年看书或阅读文章至少100本或篇;

3.熟悉企业的业务流程,与企业不同层次的人员多多地进行交流,多学习,多沟通;

4.多交朋友,多向朋友学习与交流。

© 著作权归作者所有

FansUnion
粉丝 60
博文 858
码字总数 825464
作品 0
丰台
高级程序员
私信 提问
新浪Java架构师分享自己的成长经历, 教你如何快速成长为架构师

架构师是公司的“金领”,很少需要考虑生存的问题,从而有更多的精力思考关键技术,形成“强者愈强”的良性循环。当然,冰冻三尺非一日之寒,成为一名合格的架构师是一个漫长的积累过程。对于...

美的让人心动
2018/04/19
0
0
高手问答第 218 期 —— 技术人员如何成长为架构师?

OSCHINA 本期高手问答(2018 年 11 月 21 日 — 11 月 27 日)我们请来了@爱技术的华仔 李运华为大家解答关于架构方面的问题。 李运华,互联网资深技术专家,十多年技术老兵,目前带领多个研发...

局长
2018/11/20
11.6K
55
这是我见过最牛X的Java架构进阶学习路线图,没有之一!

大部分职业都是需要有成长体系,才能让人有奋发向上的追求。架构师就是程序员这个群体成长道路上往往会出现的一个重要节点。 每个好架构师都是一位出色的程序员。然而好的程序员进阶为架构师...

Java填坑之路
2018/10/31
0
0
6年iOS开发,自述通往 架构师的四条路线,(值得收藏)

前言: 我用了6年的时间,一步一步走到了现在,中途也有了解过其他的技术,也想过要转其他的语言,但是最后还是坚持下来走iOS这条路,希望我的经历可以帮助到后来的人,要是觉得对你有帮助的...

原来是泽镜啊
2018/05/07
0
0
2015第七届中国系统架构师大会

大会介绍 一年一度的中国系统架构师大会震撼来袭了!SACC2015将于10月22日-24日在北京新云南皇冠假日酒店盛大召开,届时大会将云集来自五湖四海的2500名IT同胞们。 从2009年到现在,我们伴随...

文洁洁洁
2015/07/07
2.8K
7

没有更多内容

加载失败,请刷新页面

加载更多

怎么选择数据服务器?请记住这五条

我们应当都知道“数据无价”这个词,既然数据那么主要,选择一款安全稳定的数据服务器是很有必要的,那么如何选择一款牢靠的,稳定的数据服务器呢?我们从五个方面下手,协助您体系的了解数据...

linux-tao
4分钟前
0
0
第一讲:编写TCP Socket小程序

根据下面的步骤编写TCP Socket小程序。注意:作者必须是自己的名字。结果如下: 步骤: 1、用VC建立服务器程序 创建一个win32控制台程序 上面的代码如下,编写代码的时候切换到FileView界面,...

一匹狼工作室
6分钟前
0
0
python-protobuf2uml

首先这篇文章是参考的https://github.com/vak/protobuf2uml 本篇文章都是基于python3的 下面首先我们说一下python3的安装 wget https://github.com/protocolbuffers/protobuf/releases/down...

yiduwangkai
7分钟前
0
0
mysql通过source恢复大表小计

最近迁移一个数据库,500多张表大概600多万条数据,通过navicat导出的数据,再通过source命令导入到mysql8.0 之前也做过类似的工作,但是却从来没有这么慢过,一个小时了还没有完成,之前在笔...

休辞醉倒
8分钟前
0
0
Java、Python、C++、PHP、JavaScript这5大编程语言,我究竟该选哪个?

很多朋友在后台给我留言,问:现在这么多编程语言,Python、Java、PHP、C++、JavaScript等,究竟哪种最流行?我想这应该也是你的困扰吧! 其实他们各有优势,但是对于选择困难的程序员而言,...

Java领航员
24分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部