国产chinesehdxxxx野外,国产av无码专区亚洲av琪琪,播放男人添女人下边视频,成人国产精品一区二区免费看,chinese丰满人妻videos

架構師到底該不該寫代碼

2018-05-22 09:52 更新
周末InfoQ-StuQ直播,主持和聽眾提問的簡版實錄,快消時代,精簡到1分鐘可以讀完(原文有10000字)。

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

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


提問:網上有個很有爭議的問題“架構師需要寫代碼嗎?”,您對此怎么看?

我認為架構師應該寫代碼。

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


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

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

我對架構師的建議是:有時間的話,親自去寫核心代碼,如果沒有時間的話,要把關詳細設計并安排資深工程師去做CodeReview。

提問:當前互聯(lián)網技術更新非常快,您認為架構師對此應該持什么態(tài)度?

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


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

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


我的建議是:對新技術我們一定要去學習,但應用到線上一定要慎重

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

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


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

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

我認為架構師之路分為三個階段:

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


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

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

提問:對一個架構來說,因為沒有完美的架構,它一定會有一些缺陷,那好的架構有一個什么樣的標準嗎?

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


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

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

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

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

第三個是分享機制,每個團隊內部定期組織技術分享,讓大家溝通交流。包括我也每周會花時間和團隊的同學做一些技術的交流和溝通。


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

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


總結

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

有時間的話,親自去寫核心代碼,如果沒有時間的話,要把關詳細設計并安排資深工程師去做CodeReview

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

需要去學習,但應用到線上一定要慎重

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

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

(4)架構師三個階段?

打基本功,業(yè)務沉淀,通用素質進階

(5)好的架構的標準?

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

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

指導人機制,技術評審,技術分享


最后給有志于成為架構師的同學一個建議:多學習、多交流、多溝通。



歡迎加入我的社群或關注公眾號“架構師之路”進行討論。

架構師之路二維碼

以上內容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號