漫话网站架构师

来源:互联网 发布:js 千位分隔符 编辑:程序博客网 时间:2024/05/05 22:08

 李智慧

 

对于网站和软件企业而言,架构师是一个重要的角色。对于公司,架构师引领公司的技术方向,架构师的眼界和高度决定了公司的技术高度。对于技术团队,架构师的决策和技术方案影响工程师的开发模式和工作量。一个称职的架构师是公司的宝贵财富,而一个不合格的架构师可能会成为开发团队的梦魇,所谓将无能,累死三军。

对于大型网站而言,公司有很多架构师,他们的角色、能力、影响力各不相同,大致可分为以下几类。这些分类方式是非正式的,仅供诸位看官一乐,读者请勿以此给自己所在公司的架构师贴标签。

 

按职责角色划分:

产品架构师:负责具体互联网产品的技术架构。当产品业务规划确定后,产品架构师就要开始产品的架构设计了,和运营团队确定PV数、用户数、商品数等产品运营目标、发展规划、非功能指标;和产品经理确定功能需求、模块划分等功能目标;和项目经理确定各种开发资源。获得必要的信息后进行整体架构设计,参与项目开发。产品架构师一般会参与产品的整个生命周期。

基础服务架构师:有时候也会称为平台架构师,负责开发基础框架、公共组件、通用服务等平台类产品。在大型互联网应用中,基础服务承担着海量的数据存储和处理服务,有许多挑战性的工作。

基础设施架构师:负责网络、存储、数据库运维管理的架构师,此类架构师一般有专门的称呼(如DBA等)。

此外,根据具体的职责,在数据挖掘、搜索技术、安全诚信、运维监控等领域也有专门的架构师。

 

按功能作用划分:

设计型架构师:也就是一般意义上的架构师,负责系统架构设计,同时也要负责架构的实施落地、演化发展、推广重构。

救火型架构师:充当救火队员的角色,系统出现故障或者“灵异现象”,会请他们出马解决,有时候重要而紧急的项目也会由此类架构师主持。他们通常是公司的元老,对系统有全局性的认识,知道“水有多深”。

布道型架构师:在某一领域有较深刻的认识,有时候甚至是坚定的技术信仰,乐于同他人分享自己的知识,希望能够推广自己的技术主张,此类架构师通常有较好的个人影响力。但是有些时候,由于自身的局限或者不能跟上技术潮流的发展,会成为忽悠型的“大师”、偶像派的专家。

Geek型架构师:架构师中的Geek,对某些技术问题的研究达到疯狂偏执的境地,精益求精追求完美。通常由于知识技能不够全面,不符合许多企业对架构师“高大全”的要求,此类架构师常有怀才不遇之惑。

 

按期望和效果划分:

夏尔巴人架构师:夏尔巴人生活在喜马拉雅山麓,协助探险队或者登山爱好者攀登那些8000米以上被称为“生命的禁区”的雪山,帮助他们运送给养到突击营地,作为向导带领登山队员登顶。每一次成功对于登山队员是一次自我的超越,而对于夏尔巴人,不过是完成了一个工作。夏尔巴人架构师通常会开发项目中最具技术难度和挑战性的模块,从而为整个项目的顺利进行铺平道路。

斯巴达人架构师:传说在古希腊,城邦之间发生战争,如果有城邦向斯巴达求援,斯巴达只会派出一个人去协助,但只要这一个人,就可以扭转战局。不管项目有多么艰难复杂,只要有斯巴达人架构师,大家就会坚信,项目一定能顺利完成。斯巴达人架构师带给项目组的,不只是技术和方法,更重要的是必胜的信念。这种信念,是架构师自己积累起来的。

达官贵人架构师:此类架构师或者有傲人的学历,或者有辉煌的履历,或仪表堂堂,或口吐莲花,但是公司里如果有个吃人的怪兽,悄悄地把此类架构师都吃光了,也没人会发现。

 

按关注层次划分:

只关注功能的架构师:架构目标只是完成功能,通常,这不叫架构。

关注非功能的架构师:架构设计也关注性能、伸缩性、安全性、可用性、系统未来的扩展性等非功能目标。

关注团队组织与管理的架构师:架构设计不但关注功能目标和非功能目标,同时还考虑开发团队的成员特点、进度安排、开发过程等,使架构设计和项目管理完美融合。

关注产品运维的架构师:架构设计不但关注产品各项指标和开发过程的可实现性,还关注产品上线后易于运维管理、监控报警、故障修复等目标。

关注产品运营的架构师:不但关注前面提到的所有方面,还关注产品运营是否合理方便,能否达到运营目标,技术架构兼顾产品业务架构。

 

按口碑划分:

最好的架构师:和团队相处日久,通常情况下团队成员感觉不出他的存在,貌似没有他工作也可以完成的很好,但是如果他真的离开了,大家就会觉得心里空荡荡,没了主心骨。

好的架构师:深得团队成员的敬重和信任,承担项目中的重要设计开发工作,团队几乎离不开他。

差的架构师:承担了项目中大部分的技术工作,因为团队成员不符合自己的期望而经常雷霆大发。

很差的架构师:被团队成员鄙视,主要工作是给大家添乱、制造笑话和八卦的谈资。

最差的架构师:通过制造压力驱使团队成员努力工作,让每个人都忙碌不堪以使大家都没有注意到他自己其实并不能胜任工作。这种架构师对组织整体和团队成员的伤害无以复加,却常常因为敬业和努力的形象而得到老板的肯定。

 

按个性特点划分:

普通架构师:从问题和需求出发,结合个人经验、组织资源、业界模式进行架构设计,中规中矩,能够切实可行地解决问题满足需求,是架构师中的普通青年。

文艺架构师:除了像普通架构师那样在架构设计中解决问题,文艺架构师还会在架构设计中进行一些更前瞻的思考和别出心裁的设计。此类架构师的设计文档通常会透着文艺青年的小清新范儿,喜欢在文档的开头描述他们与众不同的设计理念和风格。

1+1架构师:不包括那些完全不能胜任架构设计工作的架构师,此类架构师喜欢在架构设计中堆砌概念和模式,设计文档宏大而不着调,面面俱到却不解决具体问题,说起来头头是道却不知如何落实。其根源不是不了解真正的问题就是不掌握正确的方法。有时候也不排除这样一种可能性:做架构设计的目的是为了炫耀自己知道这么多术语。