架構設計到底是做什么?每個人都有不同的答案,畢竟在不同的時間,不同的系統(tǒng)層級,不同的需求背景上,架構設計的任務都有所不同。那么換另外一個問題,如何成為頂尖的架構師? 先使用程序員的拆分技能:成就優(yōu)秀需要劃分兩個階段,先成為普通的架構師,然后再想辦法成就優(yōu)秀。 雖然 2018 年已經(jīng)過了六分之一,但我們的新年也就剛開始,常言道種樹最好的時間是十年前,其次是現(xiàn)在,學習架構也是一樣,希望以下的學習小結可以給你幫助。 架構師之路怎么走,我們將學習過程劃分為個終身階段:初識架構與持續(xù)進階 作為程序員,如果你經(jīng)歷過幾次項目重構,應該對架構規(guī)劃的必要性有一定了解。在幾次重構中你可能只是做了一次業(yè)務邏輯梳理,也有可能只是升級了 API 和迭代了新功能,但在這個過程中如果你深切感受到陷入了 bug 修復和開發(fā)的死循環(huán),你應該會認識到規(guī)劃和設計的重要性,這或許就是第一代架構師的來源。 先了解架構師關注的重點:
再了解為什么架構需要演進:
有人說產(chǎn)品經(jīng)理是 CEO 儲備,而架構師是 CTO 儲備。 架構師的基本要求之一是知識面廣,從數(shù)據(jù)庫到前端,從大數(shù)據(jù)到人工智能,雖不要求面面深入,但需要協(xié)同開發(fā)伙伴將目前復雜需求一一拆分繼而整理在統(tǒng)一框架內(nèi)。 架構師基本要求之二是在所在領域中有卓越的代碼能力,諸如人工智能領域、金融領域、游戲以及視頻領域等等。不寫代碼的架構師如 PPT 架構師,脫離實踐遲早會被多變的互聯(lián)網(wǎng)環(huán)境所淘汰。 架構師是必須帶領隊伍的,并主導項目的核心部分代碼的撰寫,將項目合理分拆給對應執(zhí)行的人。即所謂:架構師負責扎根與發(fā)芽,其他程序員負責開花與結果。 一個產(chǎn)品會有多部門合作,架構師在其中的溝通極為重要,直接影響產(chǎn)品進度與質量。架構師不僅要與開發(fā)人員溝通,也要和項目經(jīng)理、分析人員甚至用戶溝通,來實現(xiàn)產(chǎn)品的各種可能性。 所以,對于架構師來講,不僅有技術方面的要求,還有能夠橫向溝通與領導隊伍的要求。所以,如果你具備某些程序員的固有印象,請學習隱藏并逐漸拋棄他們:“悶騷”、“不善言辭”... 一個沒有經(jīng)歷失敗的架構師一定不是好的架構師,尤其在新領域與新技術的探索上,唯有經(jīng)歷各種苦難,越過各種坑和痛苦方成就優(yōu)秀。雖然失敗如此必要,但你可以學習與借鑒他人的經(jīng)驗與教訓,讓你的苦難和坑無比縮短。 2018 年 7 月 6-9 日,InfoQ 中國團隊將在深圳舉行 ArchSummit 全球架構師峰會,分為大會演講與深度培訓兩個環(huán)節(jié)。 此次大會邀請了來自 Google、Facebook、Netflix、Pinterest、eBay,以及國內(nèi) BAT、網(wǎng)易有道、出門問問等諸多資深架構師從云架構到邊緣計算,從國際化體系架構到移動端開發(fā)、從人工智能到大數(shù)據(jù)平臺架構、從微服務到數(shù)據(jù)庫架構等諸多方面為大家一一解惑,同時阿里達摩院、Microsoft、Amazon、IBM 的分享內(nèi)容仍在籌備。 目前大會 7 折報名僅剩最后一周,這里簡單列舉一些國內(nèi)外經(jīng)典架構案例,希望能夠對到場的你有所啟發(fā)。 隨著電子商務的崛起,云計算的爆發(fā)以及社交網(wǎng)絡的大面積普及化,使得商業(yè)業(yè)務創(chuàng)新和開展越來越容易,輕而易舉使用大規(guī)模資源和服務,全球化信息互動和共享已經(jīng)可以同步,總的來說世界正在變得越來越小。 但是,信息安全和商業(yè)誠信問題卻不斷增加,面對每天超過 PB 級的不平衡和模糊大數(shù)據(jù),實時機器學習和解決方案面臨著巨大的挑戰(zhàn)。這樣的要求在各個領域越來越多,促發(fā)了許多突破性的研究成果和應用。 Facebook 軟件開發(fā)經(jīng)理 Bin Xu 將會帶領大家快速瀏覽一些安全問題,然后講述 Facebook 機器學習平臺,重點講解能夠處理當下棘手問題的相關先進技術和解決方案以及一些真實的應用效果。最后會分享幾個最近機器學習在安全應用上的特別案例。 Dekun Zou 是 Google 研究院的資深研發(fā)工程師,負責研發(fā) Android 應用商店、Google 廣告排名等基于深度神經(jīng)網(wǎng)絡的推薦系統(tǒng),曾就職于 Apple 與 AWS。 隨著深度神經(jīng)網(wǎng)絡在圖像視覺領域的突破,很多研究人員開始利用神經(jīng)網(wǎng)絡搭建深度推薦系統(tǒng),推薦質量顯著超越傳統(tǒng)基于線性回歸系統(tǒng),而深度推薦系統(tǒng)被廣泛應用于 Google 多項面向用戶的產(chǎn)品,一次又一次的突破質量瓶頸。 此次 Dekun 的分享將會由淺入深探討如何構建基于深度學習的推薦系統(tǒng),并討論最新的技術發(fā)展,涉及 Google 深度學習中信號類別、深度挖掘、最終排序、離線訓練、在線訓練、損失函數(shù)等實踐細節(jié)。 Netflix 是業(yè)界微服務和 DevOps 楷模,是歐美地區(qū)最大的網(wǎng)絡視頻提供商,也是全球最大的云計算實例,此次將和大家探討 100% 業(yè)務運行在 AWS 上的未來 IT 架構模型。此次 ArchSummit 上 Netflix 首席軟件工程師 Yunong Xiao 將前來談談當前熱點實踐之一:Function as a Service。 FaaS- 函數(shù)即服務的最終目的和 PaaS 類似,讓開發(fā)者關注在開發(fā)本身,服務由服務商提供。那為什么 FaaS 是未來開發(fā)的一個趨勢?現(xiàn)在 FaaS 的說法還不太一致,但是可以明確的是 FaaS 是 PaaS 能力的一種縮放,縮放到 Function 級別。 目前,包括 Google 等跨國互聯(lián)網(wǎng)公司的研發(fā)團隊都在經(jīng)歷“去除 QE(Quality Engineer 質量工程師)”的組織架構轉變,為此 Google 也暫停了 2017 Google Test Automation Conference 并尋求向工程效能(Engineering Productivity)的轉型。 相應地,QE 團隊也正在逐漸向工程效率團隊轉型。在此過程中,如何運用原本 QE 團隊積累的技術優(yōu)勢來設計和構建高效的測試基礎架構,CI/CD,DevOps 以及其他的支持工具鏈生態(tài)體系以應對工程效率提升就變得尤其重要。 eBay 此次分享將圍繞在這一領域的工程實踐,探討 eBay 的最佳成果,也會詳細講解什么樣技術特質的組織適合“去 QE”;以及 eBay 測試架構的微創(chuàng)新項目設計思想和應用場景。 近些年隨著大數(shù)據(jù)技術的不斷發(fā)展和成熟,無論是傳統(tǒng)企業(yè)還是互聯(lián)網(wǎng)公司都已經(jīng)不再僅僅滿足于批處理,對流處理的場景和需求也越來越強烈。SQL 是大數(shù)據(jù)處理中使用最廣泛的語言。它允許用戶簡明扼要地聲明他們的業(yè)務邏輯。數(shù)據(jù)分析師通 常沒有復雜的軟件編程背景,但他們可以使用 SQL 來分析數(shù)據(jù)并為業(yè)務決策提供支持。 在流計算領域,除了 Flink 之外,其他一些流處理框架(如 Kafka 和 Spark Structure Streaming)也具有類似于 SQL 的 DSL,但它們與 Flink 的語義不同。Flink 的 SQL 完全遵循 ANSI SQL 標準,而 Spark 和 Kafka 提供的 DSL 都是非 ANSI SQL 標準的。 阿里巴巴的核心業(yè)務現(xiàn)在完全由數(shù)據(jù)處理引擎 Blink 驅動,它是一款阿里巴巴實時計算部基于 Apache Flink 改進的項目。阿里內(nèi)部幾乎所有的 Blink 作業(yè)都是由 Flink SQL 編寫的。 本次分享將介紹遵循 ANSI SQL 標準的好處,以及 Flink SQL 是如何實現(xiàn)這一目標,以及 Flink SQL 在阿里內(nèi)部的大規(guī)模應用的場景和經(jīng)驗。 |
|