自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

架構(gòu)師到底該不該寫代碼

開發(fā) 開發(fā)工具
我一直有一個觀點(diǎn)“任何脫離業(yè)務(wù)的架構(gòu)都是耍流氓”。肯定沒有一個一成不變的架構(gòu)方案,適用所有的業(yè)務(wù)場景。

架構(gòu)師該不該寫代碼

提問:沈老師是從什么時候開始寫文章的?

我從大學(xué)開始有寫文章的習(xí)慣,最開始主要記錄學(xué)習(xí)上和生活上的一些東西。畢業(yè)加入百度之后,在百度空間總結(jié)一些學(xué)習(xí)到的技術(shù)的東西,后來百度空間好像轉(zhuǎn)型做交友平臺了,于是搭建了自己的博客,在博客上寫了一兩年。最近當(dāng)然就是在公眾號“架構(gòu)師之路”上寫,梳理和總結(jié)自己日常工作中學(xué)習(xí)到的一些技術(shù),業(yè)務(wù)上和架構(gòu)上遇到的一些問題,分享給大家。

提問:網(wǎng)上有個很有爭議的問題“架構(gòu)師需要寫代碼嗎?”,您對此怎么看?

我認(rèn)為架構(gòu)師應(yīng)該寫代碼。

首先,業(yè)務(wù)是肯定需要深入去了解的,我比較反對一個公司成立一個所謂的架構(gòu)師部門,擁有公司所有的架構(gòu)師資源。我的建議是每個業(yè)務(wù)線團(tuán)隊都需要有架構(gòu)師。架構(gòu)師一定要深入了解業(yè)務(wù)的特點(diǎn),針對業(yè)務(wù)的特點(diǎn)去設(shè)計系統(tǒng)架構(gòu)。

我一直有一個觀點(diǎn)“任何脫離業(yè)務(wù)的架構(gòu)都是耍流氓”??隙]有一個一成不變的架構(gòu)方案,適用所有的業(yè)務(wù)場景。

其次,是要貼近系統(tǒng),所以得看代碼,寫代碼。即使完全沒有時間去寫代碼的話,至少詳細(xì)設(shè)計的每一個細(xì)節(jié)架構(gòu)師都需要清楚,每一個流程、接口參數(shù)、數(shù)據(jù)庫設(shè)計都要非常清楚。詳細(xì)設(shè)計盡量詳細(xì)到組內(nèi)的任何一個工程師拿到詳細(xì)設(shè)計都可以去做實(shí)現(xiàn)。CodeReview也非常重要,保證代碼至少是有兩個人看過,而且它的實(shí)現(xiàn)邏輯和詳細(xì)設(shè)計是一致的。

我對架構(gòu)師的建議是:有時間的話,親自去寫核心代碼,如果沒有時間的話,要把關(guān)詳細(xì)設(shè)計并安排資深工程師去做CodeReview。

提問:當(dāng)前互聯(lián)網(wǎng)技術(shù)更新非???,您認(rèn)為架構(gòu)師對此應(yīng)該持什么態(tài)度?

首先對于新技術(shù),需要去關(guān)注,但我的觀點(diǎn)是“應(yīng)用到線上,一定要慎重”。去看、去學(xué)、去研究是一個技術(shù)人員必須做的,但是學(xué)習(xí)新技術(shù)與把它應(yīng)用到線上生產(chǎn)環(huán)境是兩回事。

我負(fù)責(zé)58到家的一些后端架構(gòu),實(shí)施一些通用的技術(shù)平臺,比如說線上的監(jiān)控、數(shù)據(jù)的統(tǒng)一收集等,如果技術(shù)體系統(tǒng)一,綜合成本會非常小。

再拿存儲來舉例,存儲的軟件和技術(shù)有很多,mysql,sql-server, mongodb等,統(tǒng)一用一個非常重要,一定不能是哪個團(tuán)隊想用什么就用什么。

我的建議是:對新技術(shù)我們一定要去學(xué)習(xí),但應(yīng)用到線上一定要慎重。

提問:大家覺得架構(gòu)師的知識寬度是很廣的,那會不會有什么都懂、什么都不精這樣一種現(xiàn)象存在?

首先什么都懂是絕對不可能的,什么都精也是絕對不可能的,但是架構(gòu)師也不能哪一塊都不精。雖然業(yè)務(wù)不一樣,但是架構(gòu)設(shè)計上肯定會有通用的地方。我原來做過幾百萬同時在線的即時通訊系統(tǒng),它肯定有架構(gòu)領(lǐng)域內(nèi)通用的東西,比如接入、數(shù)據(jù)、可用性、擴(kuò)展性、一致性等,所以這些經(jīng)驗對我后面做推薦系統(tǒng)的設(shè)計,支付系統(tǒng)的設(shè)計肯定會有幫助。

其實(shí)架構(gòu)師對于知識的寬度和深度都是有要求的,像現(xiàn)在網(wǎng)上有一種說法說架構(gòu)師的能力是π型人才,除了技術(shù)寬度,還要有兩條腿:一條是專業(yè)能力,還有一條是通用能力,比如表達(dá)、溝通、解決問題、管理、創(chuàng)新等。

提問:有很多立志于成為架構(gòu)師的人不知道如何開始?沈老師能不能給一些比較具體的建議?

我認(rèn)為架構(gòu)師之路分為三個階段:

***個階段是打基本功的階段。對應(yīng)我自己的話就是職業(yè)生涯的前三年,語言、數(shù)據(jù)結(jié)構(gòu)、算法、設(shè)計模式、研發(fā)工具、調(diào)試工具等,基本功沒打好,其他的一切都是空談。

第二個階段是業(yè)務(wù)的積累或叫技術(shù)深度的積累。對于我來說,則是業(yè)務(wù)深入,即前五年在即時通訊領(lǐng)域的打拼。業(yè)務(wù)的深度決定了進(jìn)入一家公司的時候,你的身價,一個公司要解決某個業(yè)務(wù)問題,就必須有針對性的招相關(guān)的人才,如果你可以解決這個業(yè)務(wù)領(lǐng)域內(nèi)的大部分問題,這就是你的核心競爭力。

第三個階段,π型人才的另外一條腿,即通用素質(zhì)這一塊,就是你的執(zhí)行力、責(zé)任心、推動能力、溝通表達(dá)能力、項目管理能力,這些會讓別人覺得你是靠譜的。在技術(shù)能力大家都差不多的情況下,一個事情為什么交給你來做,大家有沒有想過?因為公司覺得你是靠譜的,靠譜這個評價很高。

提問:對一個架構(gòu)來說,因為沒有***的架構(gòu),它一定會有一些缺陷,那好的架構(gòu)有一個什么樣的標(biāo)準(zhǔn)嗎?

架構(gòu)是為業(yè)務(wù)服務(wù)的,能夠滿足業(yè)務(wù)的需求并且對它的擴(kuò)展性多考慮一步,我覺得這樣的架構(gòu)就是合適的。

我曾經(jīng)被問到“58同城從05年發(fā)展到現(xiàn)在,架構(gòu)迭代了很多版,如果回到05年重新做架構(gòu)設(shè)計,58的架構(gòu)會不會是現(xiàn)在的樣子”,答案是一定不會跟今天一個樣子,一定還是和05年時候一個樣子。

提問:58的技術(shù)氛圍是怎么建立起來的?

***個指導(dǎo)人機(jī)制很重要,就是任何一個研發(fā)一定會有一個高職階的人帶,有任何技術(shù)上的問題一定是有人可以交流和解答的。

第二個我覺得很重要的是技術(shù)評審,技術(shù)評審是一個很好的契機(jī)讓大家溝通交流和討論技術(shù)上的問題。

第三個是分享機(jī)制,每個團(tuán)隊內(nèi)部定期組織技術(shù)分享,讓大家溝通交流。包括我也每周會花時間和團(tuán)隊的同學(xué)做一些技術(shù)的交流和溝通。

提問:PHP是世界上***的語言嗎?

技術(shù)的同學(xué)在討論的時候要避免討論兩個問題,一個是哪種語言是世界上***的語言,第二個要避免討論的是Vim好還是Emacs好。

總結(jié)

(1) 架構(gòu)師需要寫代碼嗎?

有時間的話,親自去寫核心代碼,如果沒有時間的話,要把關(guān)詳細(xì)設(shè)計并安排資深工程師去做CodeReview

(2)對于新技術(shù),持什么樣的態(tài)度?

需要去學(xué)習(xí),但應(yīng)用到線上一定要慎重

(3)對架構(gòu)師的能力要求?

π型人才,除了技術(shù)寬度,還要有兩條腿:一條是專業(yè)能力,還有一條是通用能力

(4)架構(gòu)師三個階段?

打基本功,業(yè)務(wù)沉淀,通用素質(zhì)進(jìn)階

(5)好的架構(gòu)的標(biāo)準(zhǔn)?

能夠滿足業(yè)務(wù)的需求并且對它的擴(kuò)展性多考慮一步

(6)技術(shù)氛圍怎么培養(yǎng)?

指導(dǎo)人機(jī)制,技術(shù)評審,技術(shù)分享

***給有志于成為架構(gòu)師的同學(xué)一個建議:多學(xué)習(xí)、多交流、多溝通。

【本文為51CTO專欄作者“58沈劍”原創(chuàng)稿件,轉(zhuǎn)載請聯(lián)系原作者】

戳這里,看該作者更多好文

責(zé)任編輯:趙寧寧 來源: 51CTO專欄
相關(guān)推薦

2023-08-14 18:03:32

2015-10-20 09:07:44

2009-07-01 15:33:23

JAVA認(rèn)證

2022-09-13 07:31:50

工具代碼Lombok

2021-01-18 16:43:14

人工智能互聯(lián)網(wǎng)科技

2020-11-18 09:48:09

Synchronize多線程Java

2022-08-05 07:37:39

單體架構(gòu)遷移微服務(wù)

2019-11-11 07:49:00

5G套餐運(yùn)營商

2020-10-26 09:02:45

如何校驗參數(shù)

2012-02-15 09:48:31

移動娛樂廣告封殺

2013-02-18 09:40:28

2013-01-23 14:19:56

健康類App移動應(yīng)用

2019-03-28 09:44:33

程序員加薪創(chuàng)業(yè)

2014-12-30 09:30:57

.net語言選擇

2013-05-23 15:24:57

Wi-Fi無線網(wǎng)絡(luò)設(shè)置無線網(wǎng)絡(luò)展望

2018-09-30 09:36:58

CTO代碼程序員

2018-01-26 11:20:19

電腦攝像頭硬件

2021-09-15 14:40:04

iOS蘋果系統(tǒng)

2020-03-09 09:33:31

網(wǎng)絡(luò)安全人臉識別技術(shù)

2015-11-19 15:49:42

流量提速降費(fèi)運(yùn)營商
點(diǎn)贊
收藏

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