专栏名称: 拉勾
拉勾网,专业的互联网领域招聘平台,专注于为互联网从业者提供更好的职业机会。海量诱人职位实时更新,薪资透明,拒绝面议!
目录
相关文章推荐
传媒招聘那些事儿  ·  腾讯:招聘经理 ·  19 小时前  
传媒招聘那些事儿  ·  网易:高级/资深校园招聘 ·  19 小时前  
INTERNATIONAL IDEAL 筑梦求职  ·  上岸笔记 | 恭喜 东北大学 J同学 ... ·  2 天前  
INTERNATIONAL IDEAL 筑梦求职  ·  上岸笔记 | 恭喜 东北大学 J同学 ... ·  2 天前  
谷饶生活信息站  ·  【谷饶直聘】2月2号更新,谷饶人才求职招聘平 ... ·  4 天前  
51好读  ›  专栏  ›  拉勾

专访 | 阿里前辈李智慧:聊聊我这20年的架构经!

拉勾  · 公众号  · 求职  · 2019-05-20 12:47

正文

来源:IT技术思维

ID:IT-Thought


专访嘉宾:李智慧,前阿里巴巴技术专家,《大型网站技术架构》作者

引言

就程序员而言,日后的职业发展可以走3个方向:专攻技术深度、转团队管理、晋升架构师。


我相信成为一名优秀的架构师,是大多数技术人的追求。但资深架构师的出现几率仅约为0.3%,如果想在3-5年后稳坐金字塔尖,除了扎实的代码功底和项目积累,如何有意识地培养技术广度和架构思维能力,是你当下应该付出更多精力的。习惯了架构思维,你可以从更高的层次、更高的角度去思考你现在做的事情,做出更正确的决定。


IT君邀请到前阿里技术专家李智慧老师聊聊他的架构师成长经历和思考。


如果你有以下三个疑问,建议花5分钟通读。

1.什么样的人适合做架构师?转行的人有戏吗?

2.架构思维在工作中有什么作用?懂架构是不是就万事大吉了?

3.架构的核心思想都有哪些?


本期嘉宾


李智慧,曾任阿里巴巴技术专家,Intel大数据架构师,拥有20多年编程与架构经验;设计开发过阿里巴巴的分布式存储系统Doris、阿里巴巴印度站、基于Hadoop的大数据仓库Panthera等;参与过Apache Spark的开源开发,对Spark架构代码进行过多处优化。


有5项分布式系统发明专利;是畅销技术书《大型网站技术架构:核心原理与案例分析》的作者,该书被若干高校选为计算机类专业教材;更是各大技术峰会的常邀嘉宾。


以下为专访内容整理

IT君:您是如何走上技术这条路的呢?还记得拿到第一个Offer的场景吗?


李老师:我大学不是学计算机,但是在学校里第一次学软件编程的时候,我就有一种似曾相识的感觉,感觉和编程有某种缘分,这种感觉时隔多年,我依然能够回忆起来,我觉得,对于编程,我可能是有一点天分的。但是当时懵懵懂懂,也并没有太多的思考和规划,第一份工作是在一家国营企业做电工。


工作两年以后,有一次陪一个朋友去当地人才市场,看到有家公司展台前面冷冷清清,过去聊了两句,原来在招程序员,对20年前一个内蒙古小城而言,程序员绝对是一个新鲜事物,难怪冷清。我试着和面试官聊了两句,可能他们实在是找不到人,虽然我既没有编程经验,又不是学计算机,但是他们还是对我表示了极大的兴趣。对我而言,最有兴趣的是,他们开出的薪水条件要比我当时的薪水高好几倍。


可能他们实在是拿不准要不要录用一个电工做程序员,最后给我提了一个要求,让我在一周之内,用Delphi写一个仓库管理软件。以前我在学校学过汇编语言,后来自学过C语言,Delphi语言还是第一次听说。离开人才市场就去书店买了一本Delphi编程的书,用一天时间把书看完,又借朋友的电脑用两三天的时间把软件写出来,就这样从一个电工走上了软件技术之路。


现在回想这段经历,最大的感受是很多机会都是你毫无准备的时候来临,并且不会给你太久的时间去证明自己。如果你故步自封,或者被惰性牵制没有去突破,那机会就会离你远去了,你又进入了另一个轨道重复的等待机会。


IT君:后来您的职场是如何发展的?给大家介绍一下您的成长里程碑。


李老师:在前面这家公司工作了近两年,开发企业管理软件,主要逻辑就是对数据库增删改查。时间一长,就觉得没有挑战,枯燥无聊,比在国营企业还无聊。但是怎么脱离这种困境?


当时想去北京试试机会,但是了解了一些情况以后,觉得去北京也是做一样的事情,只是换了个地点,工作本身并没有什么改变。于是最后决定报考计算机专业的研究生,提高自己的知识水平,再去寻找更好的工作机会。


我当时报考的是北京工业大学人工智能专业,复试的时候却通知我被调剂到汽车专业了。于是就读了三年汽车专业硕士,毕业的时候才发现,汽车行业就业情况很不乐观,薪水还不如我三年前在内蒙古做程序员的水平,(这里给大家提个醒,选对行业至关重要)就试着投了几个软件开发的职位,很快收到几个offer,薪水也非常满意,于是继续去做程序员。


当时是在方正做一个对日外包项目,这是一个10亿日元的合同,方正专门成立了一个部门做这个项目,由于项目比较重要,部门里几个高手都被派往日本客户现场,国内则是包括我在内几个新招来的人,大家都对这个项目一知半解。


当客户对系统整体架构提出了一些要求,我仔细研究了这些要求后,就很主动去找项目总监问:这些架构需要一些框架和工具支撑,业界似乎没有满足要求的技术方案,我们打算怎么做?项目总监看了我一眼说,那就你来做吧。


于是我就在没有任何准备和经验的情况下,成了这个项目的架构师,带领其他几个新同事开发了一套符合客户要求的技术框架。后来部门的高手从日本回来,部门也扩大到近两百人,虽然这个技术框架并不完美,有各种问题,但是大家没得选择,只能基于这个框架开发整个系统。开发过程中遇到重要的技术问题,都要过来找我讨论,遇到跨层次,跨模块的技术决策,则必须要我拍板后才能统一执行。


这次主动研究和“临危受命”的经历,让我第一次体验到做架构的乐趣,通过技术手段影响项目和团队,使自己的技术审美体现在系统的各个方面,将自己的技术倾向和技术理念渗透到团队所有工程师的意识当中,并由此而引导项目走向成功。


现在看来,当时自己的技术水平比较局限,开发的框架也有不少问题。但是就是在那个时候,我顿悟了关于架构的自我意识,关于技术的作用力,关于技术管理的思想。虽然后来我获得了更多关于技术能力的提升,但是在架构的思想上,我并没有太多超越十几年前的自己。后来看了一些架构方面的书,遇到一些优秀的架构师,恕我愚钝,至少在架构的本质思想上,似乎也没有超越这个高度。


IT君:您现在作为CTO或者首席架构师的角色,站在这个高度,最大的挑战是什么,对自己还有什么要求?


李老师:我面临的最大的挑战是如何创新,如何超越自己。


我有一个悲观的理论:任何奋斗的人,都将以失败结束他的奋斗史。这句话听起来很主观,事实上是可以证明的:一个人如果通过努力获得成功,他必将继续努力以期获得更大的成功。但是人必然有自身的局限,而历史又有他自身的进程,随着成功难度的不断提高,普通人将会触及他个人能力的天花板,而最杰出的人将会触及历史进程的天花板,最终所有努力奋斗的人都将遭遇到最终的失败,越是不甘心,越是失败到怀疑人生。


大概在五六年前我意识这一点后,我就不再单纯的追求成功,不再追求更高的职位,更高的薪水,甚至不再追求事业的成功,因为我自身的能力水平如果就是这样一个高度,那么我越快的得到这些成功,我就越是接近最终的失败。我更关注的是,在当下的事情中,我如何获得更高的能力提升,如何提升我能力的天花板,以推迟我最终失败的到来。


而提升自己唯一的手段就是不断地创新,创新似乎是一件高风险的事,很容易失败。但是这些失败都不是最终的失败,对于创新者而言,不管是否失败,都将对世界和自我获得新的认知,将自身的天花板抬高了一点点。


但是不管如何,人的体力、精力、意志力都有尽头,终会有一天连创新也创不动了,我将会坦然面对那一天,而在此之前,我将乐此不疲地和自己玩一个猜谜游戏:下一个提升我天花板的事情在哪里?


IT君:您曾在阿里任技术专家,带过的项目非常多,可以给大家分享一次印象最深或收获最大的项目吗?


李老师:在加入阿里巴巴第二年的时候,因为前面工作比较出色,我被安排参与另一个部门的一个重要项目,担任这个项目的架构师。


我在阿里巴巴之前并没有互联网的经验,加入阿里巴巴第一年做的也是通用的技术框架,和互联网应用关系不大。刚加入项目组的时候,项目成员对我报以极高的期望,我自己也感觉良好,做了一个庞大而浮夸的规划,在项目启动会上慷慨陈词,博得一片掌声。


但是很快,由于对互联网产品业务和技术方案都缺乏足够的经验,我发现自己根本无法驾驭系统的技术方向。不过当时我已经骑虎难下,为了解决问题,我引入了更加复杂的技术方案,却使整个局面更加失控。这时候公司也看出我能力不足,安排了另一个架构师进入项目,他加入项目组后,很快就扭转了局面,项目步入正轨,而我则黯然退场。


此后大半年的时间我都夹着尾巴做人,低调的做一些具体的开发工作,同时大量学习互联网相关的技术和业务,特别是公司内的项目代码和文档。后来又成功做了几个项目,重新赢得了同事的尊重。


这次项目经历让我深刻的意识到:架构师是技术团队的研发核心,掌控着项目技术发展的方向。后来在其他一些地方我也看到一些陷入泥潭的项目,原因和现象多种多样,但是有一个就是:架构师失去了对项目的技术掌控,架构师自己也迷失在项目之中。


IT君:您认为架构设计的核心思想都有哪些?实践中需要注意什么?


李老师:





请到「今天看啥」查看全文