大型网站技术架构,架构师领导艺术

架构师的工做:架构设计,软件开发,架构

其余一些管理职能:规划产品路线、估算人力资源和时间资源、安排人员职责分工,肯定计划里程碑点、指导工程师工做、过程风险评估与控制。框架

 

这些管理事务须要对产品技术架构、功能模块划分、技术风险都熟悉的架构师参与或直接负责。测试

 

在软件开发过程当中,架构师除了实现技术架构,完成产品技术实现外,还须要和项目组内外各类角色沟通协调,能够说架构师至关多的时间用在和人打交道上。处理好人的关系对架构和项目的成功相当重要。优化

 

架构师做为项目组最资深的专业技术人员,是项目组开发测试工程师的前辈。架构设计

从架构师的身上,工程师能够看到本身的将来,所以架构师在作人作事方面须要严格要求本身,作好表率。设计

 

关注人而不是产品

必定要坚信:一群优秀的人作一件他们热爱的事,必定能取得成功。无论过程多么曲折,无论外人看来多么难以想象不靠谱。事务

 

因此最好的软件项目管理不是制定计划,组织资源,跟踪修正项目进展,对成员进行激励和惩罚,而是发掘项目组每一个成员的优秀潜能,让你们理解并热爱软件产品最终的蓝图和愿景。每一个人都是为实现自我价值而努力,不是为了领工资而工做。项目管理

 

寻找一个值得共同奋斗的目标,营造一个让你们都能最大限度发挥自我价值的工做氛围。资源

 

没有懒惰的员工,只有没被激发出来的激情。全部强迫员工加班的管理者都应该为本身的无能而羞愧。 开发

发掘人的优秀

有些企业喜欢挖优秀的人,而不是去把本身打形成一个培养优秀人才的地方。却不知:是事情成就了人,而不是人成就了事。期望优秀的人来帮本身成事,不如作成一件事让本身和参与的人都变得优秀。

调查下功能的实现,找开源实现,阅读文档和代码,针对项目需求场景对代码作优化,将优秀的代码提交给开源项目的做者。

大多数人,包括咱们本身,都比本身觉得的更优秀,有些优秀须要在合适的环境中才会被激发出来,好比作一些有挑战的事,和更优秀的人合做,抑或拥有了超越自个人勇气。

 

发掘人的优秀远比发掘优秀的人更有意义。

共享美好蓝图

蓝图应该是表述清楚的:产品要作什么、不作什么、要达到什么业务目标,都须要描述清楚。

蓝图应该是形象的:产品能为用户创造什么价值、能实现什么样的市场目标、产品最终会长什么样,都须要形象地想象出来。

蓝图应该是简单的:无论内部仍是外部沟通,都能一句话说明白:咱们在作什么。

 

蓝图应该写在软件架构设计文档的扉页、写在邮件的签名档、写在内部即时通信群的公告上。

 

在项目过程当中,架构师要保持对目标蓝图的关注,对任何偏离蓝图的设计和决定保持警戒,错误的偏离要及时修正,必要的变动要通过你们讨论,而且须要从新得到你们的认同。

 

也许有人会说"你是在忽悠我吧,只是想让我努力工做而已"。青春总会逝去,人老是会死的,当有一天你白发苍苍回首往事,你回为无所事事而遗憾,但不会为被人忽悠而羞愧。

批评马云的人,必定为马云在建立阿里巴巴的时候没有忽悠他成为创始人而遗憾。

共同参与架构

架构师须要对系统架构负责,但并非说必定要架构师本身完成架构设计,并要项目团队严格遵照架构决策。

把架构和架构师凌驾于项目和项目组之上,只会让架构师变成孤家寡人,让架构曲高和寡。

1. 不要只有架构师一我的拥有架构

让项目参与者对架构充分争论,你们越以为本身是项目架构的重要贡献者,就越是愿意对开发过程承担责任,越是愿意共同维护架构和改善软件。

2. 让其余人维护框架与架构文档

除非是重大重构,不然架构师应该让项目组成员维护框架和架构文档,给项目组成员成长的机会也让本身有更多的时间去寻找更大的挑战。

学会妥协

不要企图在项目中证实本身是正确的,必定要记住,你是来作软件的,不是来当老大的。因此不要企图去证实本身了不得,永远也别干这种浪费时间、伤害感情的事。

 

当作项目迷失方向的时候,提醒本身是来作软件的,来实现客户价值的,不是来证实谁对谁错的。

 

不少时候,对架构和技术方案的反对意见,其实意味着架构和技术方案被关注、被试图理解和接受。

 

架构师不该该对意见过于敏感,这时架构师应该作的是坦率地分享本身的设计思路,让别人理解本身的想法并努力理解别人的想法,求同存异。

 

对于技术细节的讨论应该当即验证而不是继续讨论,当讨论深刻到技术细节的时候也意味着问题已经收敛,对于总体架构设计,各方意见趋于一致。

 

而当你们再也不讨论架构的时候,代表架构已经融入到项目、系统和开发者中了,架构师越早被项目组遗忘,越表示架构很是成功;项目组越离不开架构师,越表示架构还有不少缺陷。

 

成就他人

咱们活着不是为了工做,不是为了作设计、写程序,这些不是咱们生活的目的。咱们活着是为了成就咱们本身,而要想成就本身,就必须首先成就他人。

 

每一个人都有本身成就的目标,而工做是达成自我成就的一种手段:经过工做的挑战,发掘自个人潜能,从新认知自我和世界。

 

软件开发过程是人的智力活动的过程,软件开发不只是制造软件的过程,也是开发人员自我完善、超越自个人过程。因此咱们工做不仅是生产产品,还要成就人,并最终成就咱们本身。

 

作成一个项目不但要给客户创造价值,为公司盈利,还要让项目成员得到成长。要让他们以为经过这个项目,本身的知识技能和业务水平都获得了提升。

 

架构师做为团队的技术领导者,在项目过程当中不要试图去控制什么,带着一个弹性的计划和蓝图推动,团队会管好他们本身。

相关文章
相关标签/搜索