成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

我是如何在阿里做“架構(gòu)師”的?

新聞
架構(gòu)是一種能力,它不是頭銜。換句話說(shuō),我們需要具備架構(gòu)能力,但不一定要成為架構(gòu)師。

 架構(gòu)是一種能力,它不是頭銜。換句話說(shuō),我們需要具備架構(gòu)能力,但不一定要成為架構(gòu)師。

?[[331339]]?

圖片來(lái)自 Pexels


既然這樣,那我們還需要架構(gòu)師嗎?還需要架構(gòu)部門(mén)嗎?我給出的答案是:不需要,因?yàn)槊總€(gè)人都應(yīng)該是架構(gòu)師。

為什么架構(gòu)師不 Work?

在來(lái)阿里之前,我是在 eBay 的 payments 部門(mén)工作,當(dāng)時(shí)有一個(gè)架構(gòu)師叫 Scott,所有的設(shè)計(jì)和方案都需要獲得他的 approve 才能通過(guò),結(jié)果他成了整個(gè)團(tuán)隊(duì)的 bottleneck,很多事情都 block 在他那個(gè)地方。

工程師很難受,光是給他介紹業(yè)務(wù)和系統(tǒng)設(shè)計(jì),就需要花費(fèi)了大量的時(shí)間討論(因?yàn)闀r(shí)差原因,經(jīng)常一個(gè)討論要一個(gè)星期才會(huì)有定論)。

他也不容易,要去理解每個(gè)系統(tǒng)的結(jié)構(gòu)和業(yè)務(wù)細(xì)節(jié),已經(jīng)累成狗。效率低下尚且不說(shuō),這樣的折騰最后帶來(lái)了什么益處呢?

說(shuō)實(shí)話,我現(xiàn)在回想起來(lái),除了幾個(gè)變量命名我覺(jué)得 Scott 說(shuō)的比較有道理以外,其他還真沒(méi)什么更有價(jià)值的東西了。

這里我想主要問(wèn)題是因?yàn)?Scott 不在執(zhí)行團(tuán)隊(duì)內(nèi)部,他不了解細(xì)節(jié),所以也很難給出有價(jià)值的輸入。

很多東西,我們認(rèn)為“他不懂”,也就是他的方案不能讓我們信服,自然,合作起來(lái)就很困難。

很多人喜歡拿建筑架構(gòu)和軟件架構(gòu)做類比,認(rèn)為既然建筑需要建造師,那么軟件也應(yīng)該需要架構(gòu)師。Too simple,too naive!

其實(shí),二者除了都需要有圖紙,都有藝術(shù)的成分之外,并沒(méi)有多少共同之處。

首先,建筑和軟件不同。

建筑的標(biāo)準(zhǔn)性、確定性要比軟件高的多,而軟件的靈活性簡(jiǎn)直是沒(méi)有邊界的,任何一個(gè) function 都可以有無(wú)數(shù)的實(shí)現(xiàn)方式,沒(méi)有定式。

因此,軟件架構(gòu)圖的約束力,要遠(yuǎn)遠(yuǎn)低于建筑圖紙的約束力。建筑如果不按照設(shè)計(jì)來(lái),你就不能實(shí)現(xiàn)其功能。而軟件設(shè)計(jì)文檔和代碼,完全可以是兩個(gè)平行宇宙。

其次,建筑工人和程序員不同。

程序員的工作絕對(duì)不僅僅是“搬磚”這么簡(jiǎn)單,軟件設(shè)計(jì)是一個(gè)充滿挑戰(zhàn)的創(chuàng)造性工作。

它需要對(duì)各種微妙之處進(jìn)行權(quán)衡,只有深入其中,hands-on coding,才能真正的發(fā)現(xiàn)問(wèn)題。

因此,飄在開(kāi)發(fā)團(tuán)隊(duì)之上,指手畫(huà)腳的 PPT 架構(gòu)師,注定是很難成功的。

為什么架構(gòu)部門(mén)不 Work?

如果說(shuō)架構(gòu)師是輕量級(jí)解決方案的話,那么,還有一個(gè)“大規(guī)模殺傷性武器”就是設(shè)立一個(gè)專門(mén)的架構(gòu)組織。

幾年前的 B2B 就有一個(gè)這樣的架構(gòu)組織。我記得在當(dāng)年的“架構(gòu)圖”KO 會(huì)議上,當(dāng)時(shí)的負(fù)責(zé)人要求我們畫(huà)架構(gòu)圖,我就質(zhì)問(wèn)他這個(gè)架構(gòu)組存在的意義是什么?

如果只是畫(huà)架構(gòu)圖,給老板當(dāng) PPT 用的話,這個(gè)圖我不愿意畫(huà)。我當(dāng)時(shí)還嚴(yán)厲的說(shuō)了句名言——KO 不一定要 Kick Off,也可以是 Kick Out。

不止于此,而后我又“上書(shū)”到當(dāng)時(shí) B2B 的 CTO,再然后,隨著 CTO 的調(diào)離,架構(gòu)負(fù)責(zé)人的離職,也就沒(méi)有然后了......

實(shí)際上,“架構(gòu)圖”這種務(wù)虛活動(dòng)還好,雖然無(wú)用,但也構(gòu)不成殺傷。真正構(gòu)成殺傷的是架構(gòu)組織不甘無(wú)為,挖空心思要“做事情”。

可以說(shuō),在業(yè)務(wù)技術(shù)部門(mén),架構(gòu)組這種“想做事”的行為是很危險(xiǎn)的,事情越大,殺傷力越大。

何出此言?我們不妨先來(lái)看一下,在業(yè)務(wù)技術(shù)部門(mén),架構(gòu)組織能做什么?

①業(yè)務(wù)架構(gòu)?

我是營(yíng)銷域的,是訂單域的,是商品域的,是供應(yīng)鏈域的... 你架構(gòu)組告訴我,你對(duì)業(yè)務(wù)領(lǐng)域,業(yè)務(wù)流程,業(yè)務(wù)細(xì)節(jié)的理解比 PD、運(yùn)營(yíng)、工程師更懂?

恐怕難,一個(gè)合格的 PD 應(yīng)該能做好業(yè)務(wù)領(lǐng)域的抽象和業(yè)務(wù)流程的抽象,至于細(xì)節(jié),好像沒(méi)有人比一線開(kāi)發(fā)更懂。架構(gòu)組,卒!

②應(yīng)用架構(gòu)?

需求相對(duì)清晰之后,我一個(gè)在應(yīng)用架構(gòu)領(lǐng)域尚且有一些影響力的 TL 在和團(tuán)隊(duì)討論邊界劃分,設(shè)計(jì)方案的時(shí)候,時(shí)常會(huì)爭(zhēng)論不休。

你一個(gè)架構(gòu)組的“外人”想來(lái)指手畫(huà)腳?呵呵,你這是有多低估程序員的自尊心啊。架構(gòu)組,卒!

③技術(shù)架構(gòu)?

好吧,那我們架構(gòu)組回歸技術(shù)本身,做點(diǎn)純技術(shù)的事情總可以吧。對(duì)不起,但凡有點(diǎn)價(jià)值的技術(shù)中間件,已經(jīng)有中間件團(tuán)隊(duì)在做了。

還記得,ICBU 架構(gòu)組搞的 Hilton 容器和 AE 架構(gòu)組(中間件團(tuán)隊(duì))的“我行我素”使用 Spring Boot 嗎?

這種重復(fù)造輪子完全沒(méi)有必要。在云原生成熟之前,PandoraBoot 就是最好的解決方案。架構(gòu)組,帶著整個(gè) BU 一起——卒!

在此我想稍微提一下支付寶的中間件團(tuán)隊(duì)(架構(gòu)部門(mén)?),我不知道歷史,也許 TecFin 的確是有其特殊性。

但是,從整個(gè)集團(tuán)角度來(lái)說(shuō),我認(rèn)為統(tǒng)一的技術(shù)中臺(tái),應(yīng)該是更好的做法。

對(duì)一個(gè)企業(yè)來(lái)說(shuō),也許在某個(gè)特殊階段,的確需要實(shí)體架構(gòu)組織去保障落實(shí)架構(gòu)工作。

但大部分情況下,特別是在技術(shù)體系已經(jīng)相對(duì)完備的情況下。比如在阿里,業(yè)務(wù)技術(shù)部門(mén),最好是不要在 BU 內(nèi)設(shè)立專門(mén)的架構(gòu)組織。

相信我,在我的職業(yè)生涯中,看到過(guò)很多業(yè)務(wù)技術(shù)部門(mén)設(shè)立的技術(shù)架構(gòu)組織案例,基本都是以失敗而告終。

人人都是架構(gòu)師

架構(gòu)師不行,架構(gòu)部門(mén)也不行。那架構(gòu)的事情誰(shuí)來(lái)做呢?看一下你座位左邊的,再看一下你座位右邊的,再看一下你主管.... 別看了,他們是要做,你自己也要做,人人都是架構(gòu)師。

首先,讓我們來(lái)看一下什么是架構(gòu)能力,我認(rèn)為廣義的架構(gòu)能力,應(yīng)該是一套分析問(wèn)題、解決問(wèn)題的方法論。

它需要你具備洞察問(wèn)題本質(zhì)要素,理清要素之間的關(guān)系,以及制定相應(yīng)策略的能力。

??

從這個(gè)視角出發(fā),我認(rèn)為架構(gòu)能力就是核心競(jìng)爭(zhēng)力,每個(gè)工程師都應(yīng)該具備一定的架構(gòu)能力,人人都應(yīng)該是架構(gòu)師。


怎么理解?我認(rèn)為有如下三點(diǎn):

①作為技術(shù)一線員工,也許你的工作時(shí)間并不長(zhǎng),架構(gòu)能力相對(duì)較弱,沒(méi)有捷徑,學(xué)習(xí)學(xué)習(xí)再學(xué)習(xí),成長(zhǎng)成長(zhǎng)再成長(zhǎng),架構(gòu)作為能力是可以習(xí)得的,沒(méi)那么高深。

②作為技術(shù)團(tuán)隊(duì) Leader,你必須要具備一定的架構(gòu)能力了,不管是業(yè)務(wù)架構(gòu)還是應(yīng)用架構(gòu)。

TL 都應(yīng)該具備能發(fā)現(xiàn)問(wèn)題里的本質(zhì)要素,以及理清要素之間關(guān)系的能力。如果你已經(jīng)是一名 TL,然而架構(gòu)能力還比較欠缺,則需要盡快去補(bǔ)足。

不足沒(méi)有關(guān)系,有關(guān)系的是停止了學(xué)習(xí)和成長(zhǎng)。就像懷素說(shuō)的,很多后勁不足的人主要是過(guò)早的停止了學(xué)習(xí)和成長(zhǎng),你的能力應(yīng)該是圍繞著你的層級(jí)震蕩的,這個(gè)震蕩范圍偏差不會(huì)太大,遲早會(huì)歸于一個(gè)相對(duì)合理的區(qū)間。

③作為 CTO(沒(méi)吃過(guò)豬肉,但看過(guò)豬跑),CTO 沒(méi)得選了,必須是一個(gè)非常、非常優(yōu)秀的架構(gòu)師才行。你不僅要熟悉業(yè)務(wù)架構(gòu),精通技術(shù)架構(gòu)。

更重要的是因?yàn)槠ü蓡?wèn)題(康威定律),你還要去設(shè)計(jì)組織架構(gòu),讓生產(chǎn)關(guān)系適應(yīng)生產(chǎn)力的發(fā)展。唯有如此,技術(shù)才能穩(wěn)定高效的支撐業(yè)務(wù)發(fā)展。

聽(tīng)說(shuō),騰訊沒(méi)有 CTO,所以他們每個(gè) BU 都有一套自己的技術(shù)棧和中間件,大家各自為政。

??

如果上圖對(duì)騰訊的架構(gòu)描述屬實(shí)的話,我覺(jué)得最好他們還是要有一個(gè) CTO 比較好。


因?yàn)楹苊黠@,對(duì)于通用的技術(shù)解決方案,比如大數(shù)據(jù)處理,技術(shù)中間件。沒(méi)必要重復(fù)造輪子,復(fù)用很明顯是更加科學(xué)的做法。

在這一點(diǎn)上,如下圖所示,我認(rèn)為阿里無(wú)疑是走在騰訊前面的。其中,數(shù)據(jù)中臺(tái)和技術(shù)中臺(tái),我認(rèn)為是阿里做的最好,也是最 NB 的地方。

至于業(yè)務(wù)中臺(tái)為什么旁邊飄著一朵小烏云呢,這是因?yàn)闃I(yè)務(wù)的抽象復(fù)用要比技術(shù)的抽象復(fù)用難的多的多的多,不同業(yè)務(wù)面臨的業(yè)務(wù)問(wèn)題的差異是巨大的,而不同業(yè)務(wù)面臨的技術(shù)問(wèn)題相對(duì)業(yè)務(wù)問(wèn)題,要穩(wěn)定的多。

我想,這也是為什么技術(shù)中臺(tái)已經(jīng)成功,業(yè)務(wù)中臺(tái)還在探索的原因吧。

??


如何踐行

最后,分享一下我是如何在團(tuán)隊(duì)做“架構(gòu)師”的。

一方面,我會(huì)不遺余力的培養(yǎng)團(tuán)隊(duì)成員的架構(gòu)能力,我會(huì)不斷的和他們探討系統(tǒng)的邊界是否合理,模型抽象是否合理,流程抽象是否合理,模塊設(shè)計(jì)是否合理。

并要求他們說(shuō)清楚設(shè)計(jì)背后的思考和理念是什么,然后用我自己的方法論、思考和他們?nèi)ヅ鲎玻@樣反復(fù)進(jìn)行,我和團(tuán)隊(duì)都會(huì)有所成長(zhǎng)。

另一方面,我會(huì) hands-on coding,參與核心業(yè)務(wù)邏輯的編碼工作,這點(diǎn)很重要。

一定要深入代碼細(xì)節(jié)中去做架構(gòu),因?yàn)楹芏鄦?wèn)題只有在 Coding 的過(guò)程中才會(huì)暴露出來(lái)。

另外,無(wú)謂的討論是低效的,驗(yàn)證架構(gòu)是否合理的方式,就是結(jié)合業(yè)務(wù)場(chǎng)景,寫(xiě)代碼去驗(yàn)證。

設(shè)計(jì)是否合理,是否優(yōu)雅,在 Coding 的過(guò)程中,便能獲得很好的反饋。我不止一次,在寫(xiě)代碼的過(guò)程中,去重構(gòu)原來(lái)的設(shè)計(jì),甚至是完全推翻重來(lái)。

總而言之,架構(gòu)作為一種能力,作為我們工程師的核心成長(zhǎng)目標(biāo),值得我們?nèi)プ巫尾痪氲淖非蟆6軜?gòu)師作為一個(gè)職位,在大部分情況下,它就是個(gè)“呵呵”。

作者:從碼農(nóng)到工匠

編輯:陶家龍

出處:轉(zhuǎn)載自微信公眾號(hào)從碼農(nóng)到工匠(ID:craftsman_frank)

??

責(zé)任編輯:武曉燕 來(lái)源: 碼農(nóng)到工匠
相關(guān)推薦

2012-06-20 09:14:07

系統(tǒng)架構(gòu)運(yùn)維

2012-08-04 16:02:00

架構(gòu)師

2019-07-29 11:25:23

架構(gòu)師架構(gòu)方案架構(gòu)

2010-02-06 15:14:36

ibmdw架構(gòu)師

2012-06-17 12:58:04

架構(gòu)師架構(gòu)

2021-02-01 07:40:55

架構(gòu)師阿里技專家

2020-01-16 15:35:00

高并發(fā)架構(gòu)服務(wù)器

2010-12-28 10:40:50

admin

2020-10-26 09:02:45

如何校驗(yàn)參數(shù)

2022-12-29 17:35:58

消息中間件MQ

2021-07-06 09:08:27

用戶增長(zhǎng)項(xiàng)目

2019-02-22 10:00:45

Java開(kāi)發(fā)代碼

2009-02-26 16:32:58

SaaS開(kāi)發(fā)SaaS應(yīng)用Open API

2011-04-07 16:06:18

測(cè)試架構(gòu)師測(cè)試架構(gòu)

2011-04-07 16:20:24

軟件架構(gòu)師架構(gòu)師架構(gòu)

2019-07-03 10:28:24

架構(gòu)師系統(tǒng)IT

2021-01-29 09:18:09

技術(shù)研發(fā)架構(gòu)

2019-12-23 09:45:00

碼農(nóng)架構(gòu)師架構(gòu)

2022-08-11 09:41:35

阿里程序員

2021-12-28 07:20:43

架構(gòu)師技術(shù)架構(gòu)
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

主站蜘蛛池模板: 国产精品成人品 | 成人国产精品久久 | 97狠狠干 | 国产91精品久久久久久久网曝门 | 九九福利 | 亚洲国产一| 视频一区二区在线观看 | 色噜噜狠狠色综合中国 | 九九视频在线观看视频6 | 久久欧美高清二区三区 | 九九久久精品 | 中文字幕一区在线观看视频 | 国产伦精品一区二区三区精品视频 | 亚洲午夜精品一区二区三区他趣 | 免费中文字幕日韩欧美 | 精品免费在线 | 精品中文字幕一区二区三区 | 亚洲欧洲成人av每日更新 | 亚洲一区 | 亚洲国产成人一区二区 | 国产精品久久久久久二区 | 天天综合久久 | 日韩黄色av | 黄色毛片在线看 | 久久91精品国产一区二区三区 | av电影手机版 | 在线一区 | av一级毛片 | 毛片一级片 | 久久999 | 91在线观看视频 | 中文字幕av在线一二三区 | 中文字幕二区三区 | 精品国产乱码久久久久久老虎 | 蜜桃特黄a∨片免费观看 | 久久久亚洲综合 | 日韩午夜在线播放 | 国产一区| 久久免费视频在线 | 免费观看一级视频 | av中文字幕在线观看 |