1. 程式人生 > >關於《淘寶技術這十年》

關於《淘寶技術這十年》

在書中我讀到了一個大公司的誕生真是很難,實可謂是一個小概率事件。
  • 首先,論天時,當時eBay還沒有進入中國,並且正趕上國內非典,老百姓都躲在家裡不敢上街買東西。
  • 其次,論地利,其實這一條比較牽強,因為除了小黑屋(馬雲在杭州的一個普通住宅,一般在一個大專案出來之前,該專案的前身都在那裡加班加點,並且保密的集中突擊)那個地方之外,書中過多沒有提及地點這個條件,如果非要算上,那就是馬雲有自己的房子吧.......    
  • 最後,論人和,這個印象非常深刻。淘寶技術部門的最前線中,有一個元老級的成員——花名:多隆(在這裡補充一下淘寶裡的員工都有自己的花名)。他在淘寶初創的時候就加入了阿里,但直到十多年後今天依然奮戰在寫程式碼的第一線。其實像他這樣的資歷完全可以進入管理層,或者回家拿著分紅享清福了。但是他憑著對電腦科學的熱愛,一直都奮戰在最苦最累的第一線。他這十年來一直都在進步著。哪個企業如果有這樣的員工,真的是企業是福氣。

作者:叔度(朱照遠)2013

1、光棍節的狂歡

  • 2011年年底,淘寶網擁有全國最大的Hadoop分散式計算叢集之一(2000多個節點,CPU24000 coreMemory48000GBDisk24000塊),日新增資料50TB,有40PB海量資料儲存,分佈在全國各地80多個節點的CDN網路,支撐的流量超過800Gbps
  • 任何網站的發展都不是一蹴而就的,通常是在什麼階段採用什麼技術。在發展的過程中,網站會遇到各種各樣的問題,正是這些原因才推動著技術的進步和發展,而技術的發展反過來又會促進業務的更大提升。二者互為因果,相互促進。

2、個人網站LAMP

  • 200347日,馬雲在杭州成立了一個神祕的組織。他叫來十位員工,要他們簽了一份協議,這份協議要求他們立刻離開阿里巴巴集團,去做一個神祕的專案。馬雲給他
  • 們佈置了一個任務,就是在最短的時間內做出一個個人對個人(C2C)的商品交易的網站。(淘寶網)
  • 這個創業團隊的成員:三個開發工程師(虛竹、三豐、多隆)、一個UED工程師(二當家)、三個運營工程師(小寶、阿珂、破天)、一個經理(財神),以及馬雲和他的祕書。
  • 瞭解淘寶曆史的人都知道淘寶是在2003510日上線的,200347日到510日,這之間只有一個月時間。要是你在這個團隊裡,你怎麼做?不是抄一個來,我們的答案是——“買一個來
  • 那麼接下來就是第二個問題:買一個什麼樣的網站?答案是:輕量一點的,
  • 簡單一點的。於是買了這樣一個架構的網站:LAMPLinux+Apache+MySQL+PHP),這個直到現在還是一個很常用的網站架構模型,其優點是:無須編譯,釋出快速,
    PHP語言功能強大,能做從頁面渲染到資料訪問所有的事情,而且用到的技術都是開源、免費的。當時我們是從一個美國人那裡買來的一個網站系統,這個系統的名字叫做PHPAuction。最高版比較貴,花了我們差不多2000美元
  • 買來之後不是直接就能用的,需要很多本地化的修改,例如,修改一些資料型別,增加後臺管理的功能,頁面模板改得漂亮一點,頁首和頁尾加上自己的站點簡介等。其中最有技術含量的是對資料庫進行了一個修改。
  • 美女阿珂提供了一個很好聽的名字淘寶後來支付寶的名字也是阿珂取的)
  • 為了不引起eBay的注意,淘寶網在2003年裡一直聲稱自己是一個個人網站
  • 隨著使用者需求和流量的不斷增長,系統做了很多日常改進,伺服器由最初的一臺變成了三臺,一臺負責傳送Email、一臺負責執行資料庫、一臺負責執行WebApp
  • 隨著訪問量和資料量的飛速上漲,問題很快就出來了,第一個問題出現在資料庫上。
  • 事實上,阿里巴巴和淘寶網都是在馬雲自己的房子裡創辦的,
  • 2003年年底,MySQL已經撐不住了,技術的替代方案非常簡單,就是換成Oracle。換為Oracle的原因除了它容量大、穩定、安全、效能高之外,還有人才方面的原因。
  • 任何牛B的人物,都有一段苦B的經歷。
  • 微博上有人說好的架構是進化來的,不是設計來的。的確如此,其實還可以再加上一句好的功能也是進化來的,不是設計來的
  • 最早的時候,買家打錢給賣家都是通過銀行轉賬匯款,有些騙子收了錢卻不發貨,乾脆逃之夭夭。這是一個很嚴重的問題,
  • 後來這幾個聰明的腦袋,想出第三方託管資金的辦法。於是在200310月,淘寶網上線了一個功能,叫做安全交易,賣家如果選擇支援這種功能,買家就會把錢交給淘寶網,等他收到貨之後,淘寶網再把錢給賣家,這就是現在的支付寶
  • 有人說淘寶打敗易趣(eBay中國)是靠免費,其實這只是原因之一。如果說和易趣過招的第一招是免費,這讓使用者無須成本就能進來,那麼第二招就是安全支付,這讓使用者放心付款,不必擔心被騙。而淘寶的第三招就是旺旺。其實淘寶旺旺也不是自己生出來的,是從阿里巴巴的貿易通複製過來的。
  • 不能總這樣通過不斷地重啟來保證系統的穩定性。於是,2004年上半年開始,整個網站就開始了一個脫胎換骨的手術。

3Java時代

脫胎換骨

  • 2004年初,SQL Relay的問題解決不了,資料庫必須要用Oracle,那麼從哪裡動刀呢?只有換開發語言了。換什麼語言好?用JavaJava是當時最成熟的網站開發語言,它有比較良好的企業開發框架,被世界上主流的大規模網站普遍採用。另外,有Java開發經驗的人才也比較多,後續維護成本會比較低。
  • 請什麼樣的人來做這件事?我們的答案是請Sun公司的人。沒錯,就是創造Java語言的那家公司,世界上沒有比他們更懂Java的了。那時侯eBay的系統剛剛從C++
  • Java,而且就是請Sun的工程師給改造成Java架構的,他們(Sun公司的人)不僅更懂Java,而且更懂eBay
  • 現在擺在他們面前的問題是用什麼辦法把一個龐大的網站從PHP語言遷移到Java?而且要求在遷移的過程中,不停止服務,原來系統的bugfix和功能改進不受影響。
  • 他們的大致方案是給業務分模組,一個模組一個模組地漸進式替換。說了開發模式,再說說用到的Java MVC框架,當時的struts1.x是用得比較多的框架,Sun的這幫工程師開發完淘寶的網站之後,用同樣的架構又做了一個很牛的網站,叫支付寶
  • 其實在任何時候,開發語言本身都不是系統的瓶頸,業務帶來的壓力更多的存在於資料和儲存方面
  • 2004年底,淘寶網已經有4百多萬種商品了,日均4千多萬個PV,註冊會員達400萬個,全網成交額達10億元。
  • 到現在為止,我們已經用上了IBM的小型機、Oracle的資料庫、EMC的儲存,這些東西都是很貴的,那些年可以說是花錢如流水。
  • 花錢買豪華的配置,也許能支援1億個PV的網站,但淘寶網的發展實在是太快了,到了10億個PV怎麼辦?到了百億怎麼辦?在幾年以後,我們不得不創造技術,解決這些只有世界頂尖的網站才會遇到的問題。後來我們在開源軟體的基礎上進行自主研發,一步一步地把IOEIBM小型機、OracleEMC儲存)這幾個神器都去掉了。
  • 已經有讀者在迫不及待地問怎麼去掉了IOE?別急,在去掉IOE之前還有很長的路要走。
  • 弄兩個資料庫(分庫分表),到達資料庫容災,即萬一一個數據庫掛了,整個網站上還有一半的商品可以買。
  • 親,除了搜尋引擎、分庫分表,還有什麼辦法能提升系統的效能?一定還有招數可以用,這就是快取和CDN(內容分發網路)。
  • CDN需要大量的伺服器,要消耗很多能源(消耗多少?在前兩年我們算過一筆賬,淘寶上產生一個交易,消耗的電量足以煮熟4個雞蛋)。章文嵩的團隊又在研究低功耗的伺服器。
  • 2006年,淘寶網已經有了1.5億個的日均PV,商品數達5千多萬個,註冊使用者3千多萬個,全網成交額達169億元。

創造技術TFS

回顧一下上面幾個版本,1.0版的PHP系統運行了將近一年的時間(20035—20041月),伺服器由一臺發展到多臺;

後來資料庫撐不住了,將MySQL換成了Oracle,引入了搜尋引擎(20041—20045月,叫1.1版本);

然後不到半年的時間又把開發語言換成了Java20042—20053月,叫2.0版本),資料服務逐步採用了IOEIBM小型機、OracleEMC儲存);

隨著資料量和訪問量的增長,我們進行資料分庫、加入快取、使用CDN200410—20071月,叫2.1版本)。

這幾個版本中間有些時間上的重合,因為很多架構的演化並沒有明顯的時間點,它是逐步進化而來的。

  • 在淘寶網整體流量中,圖片的訪問流量要佔到90%以上,而且這些圖片平均大小為17.45KB,這麼多的圖片資料、這麼大的訪問流量,給淘寶網的系統帶來了巨大的挑戰。對於大多數系統來說,最頭疼的就是大規模的小檔案儲存與讀取,因為磁頭需要頻繁尋道和換道,因此,在讀取上容易帶來較長的延時。在大量高併發訪問量的情況下,簡直就是系統的噩夢。我們該怎麼辦?
  • 對於淘寶的圖片儲存來說,轉折點在2007年。這之前,一直採用商用儲存系統,應用NetApp公司的檔案儲存系統。從2006年開始,我們決定自己開發一套針對海量小檔案儲存的檔案系統,用於解決自身圖片儲存的難題。這標誌著淘寶網從使用技術到了創造技術的階段。歷史總是驚人的巧合,在我們準備研發檔案儲存系統的時候,Google走在了前面,2007年,他們公佈了GFSGoogle FileSystem)的設計論文,這給我們帶來了很多借鑑的思路。
  • 隨後我們開發出了適合淘寶使用的圖片儲存系統(TaoBao File SystemTFS)。3年之後,我們發現歷史的巧合比我們想象的還要神奇,幾乎跟我們同時,中國的另外一家網際網路公司也開發了他們的檔案儲存系統,甚至取的名字都一樣——TFS,太神奇了!(猜猜是哪家)
  • 到現在為止,淘寶網給每個使用者提供了1GB的圖片空間。(之前商家是隻能上傳一張小於120Kb的照片,後來五張)
  • 技術和業務就是這麼互相借力推動著的,業務滿足不了的時候,技術必須創新,技術創新之後,業務有了更大的發展空間。
  • 目前淘寶網的TFS已經開源(見code.taobao.org),業界的同仁可以一起使用和完善這個系統。
  • 淘寶在很早就開始使用快取技術了,在2004年的時候,我們使用一個叫做ESIEdge Side Includes)的快取(Cache)。ESI是一種資料緩衝/快取伺服器,它提供將Web網頁的部分(這裡指頁面的片段)進行緩衝/快取的技術及服務。
  • 每次都從記憶體裡取,效能要好很多。這種應用場景就是memcached這種Key-Value快取的用武之地。
  • 淘寶自創的Key-Value快取系統——TairTaoBao Pair的意思,PairKey-Value資料對)。Tair包括快取和持久化兩種儲存功能。目前,Tair支撐了淘寶幾乎所有系統的快取資訊。Tair已開源,地址為code.taobao.orgTair作為一個分散式系統,由一箇中心控制節點和一系列的服務節點組成,我們稱中心控制節點為Config Server,服務節點是DataServerConfig Server負責管理所有的Data Server,維護Data Server的狀態資訊。Data Server對外提供各種資料服務,並以心跳的形式將自身的狀況彙報給ConfigServerConfig Server是控制點,而且是單點,目前採用一主一備的形式來保證其可靠性。所有的Data Server地位都是等價的。Tair的架構圖如下圖所示。

2007年,淘寶網日均PV達到2.5億個,商品數超過1億個,註冊會員數達5千多萬個,全網成交額達433億元。

4、分散式時代

  • 在系統發展的過程中,架構師的眼光至關重要,作為程式設計師,只要把功能實現即可,但作為架構師,要考慮系統的擴充套件性、重用性,
  • 一切要以穩定為中心,所有影響系統穩定的因素都要解決掉。
  • 2008年年底就做了一個更大的專案,把淘寶所有的業務都模組化,這是繼2004年從LAMP架構到Java架構之後的第二次脫胎換骨。
  • 到此為止,應用服務切分了(TMIM)、核心服務切分了(TCIC)、基礎服務切分了(UICForest)、資料儲存切分了(DBTFSTair),通過高效能服務框架(HSF)、分散式資料層(TDDL)、訊息中介軟體(Notify)和Session框架支援了這些切分。一個美好的時代到來了,高度穩定、可擴充套件、低成本、快速迭代、產品化管理,淘寶的3.0系統走上了歷史的舞臺。目前,淘寶已經變成了一個生態體系,包含C2CB2C、導購、團購、社群等各種電子商務相關的業務。開放出去之後,讓無限的人都可以參與到這個生態體系的建設中來,這個生態體系才是完整的。

5、我在淘寶這八年

  • 面試我的時候,問我為什麼到這裡來,我說很欣賞這家企業發展這麼快,這樣的企業一定有很多高手,跟高手在一起成長一定很快。
  • 由於支付寶和淘寶是兩個獨立的系統,系統之間的通訊是一個大問題,而銀行與支付寶也需要通訊,於是問題就經常出現:使用者在銀行付款後,未必能通知到支付寶,支付寶收到通知後,未必能通知到淘寶,於是使用者的錢沒了,淘寶的系統上卻顯示未付款,很讓人崩潰。做了一個訊息中介軟體系統,這個就是淘寶的Notify的雛形,現在Notify一天能傳送幾億條訊息通知,
  • 支付寶認證是淘寶的一個創新,淘寶在成立之初就要求賣家實名認證,最早的認證方式是讓使用者上傳身份證照片,我們去連線公安系統的網站來核對資訊,核對一個要交5元錢,成本相當高。
  • 新的認證方式:(現在支付寶認證的原理就是:)使用者提交身份資訊和銀行賬戶,我們往這個賬戶裡存錢,存進去之後,使用者填寫收到了多少錢(我們號稱存過去的是1元錢以內的金額,實際上只有幾分錢),如果使用者填寫的與我們向裡面存的是一致的,那麼這個人的身份就是對的。這不僅降低了認證的成本,也使認證的效率由原來的一週左右變成一天以內。
  • 我的淘寶AJAX掛了,
  • 淘寶有個傳統,很牛的專案都要在小黑屋中進行,
  • 培訓的本質到底是什麼呢?經過老闆提點,我們認為培訓的本質是:通過知識的流轉,促進員工的成長,進而推動公司業績的提升

6、牛人列傳

馬雲喜歡用武俠小說人物給同事命名。

正明(章文嵩)集團核心系統高階研究員,LVS叢集專案創始人與開發者

  • 這幾年工作的整體規劃思路就是為淘寶網打造一個高效能、高可擴充套件、高可用、低成本的基礎平臺,基本上是在這四個維度上不斷深入優化。
  • 我們從開源社群得到的幫助太大了。
  • 對剛入行的技術人員建議:找到自己感興趣的,花時間投進去,通過實踐後的知識積累比只看書本有用得多。

正祥(陽振坤) OceanBase專案負責人,淘寶頂級科學家

  • 一個人如果把做事、做成事作為主要目標,該他得到的東西,一定會順理成章的、水到渠成地得到,但是,如果把上升作為主要目標,做同樣的事,結果就會完全不一樣。一句話,你的心態會最終決定你的成就。


畢玄(林昊)集團核心系統資深技術專家

  • 一個好的網站真的是很難很難做,其中的技術含量非常高,有很多東西需要學習。但行好事,不問前程。(自身要多做義舉做好當下,而不要去牽掛往後的發展。
  • 畢玄:其實在校招聘的時候,我比較欣賞的學生往往是那些很不務正業型別的。我經常會問他們,你有沒有利用業餘時間出於自己的技術興趣做的一些小東西。這樣的學生我們通常會比較感興趣,我認為這樣的學生是真正喜歡技術。聰明程度一般就可以的,他能夠進入這些不錯的學校,智商是不會有什麼問題的。

放翁(岑文初)淘寶開放平臺專案負責人

  • 從技術上看,我都是貼近實際的問題來找突破點,解決了問題,技術就掌握了。
  • 對新人的要求:第一個是做事要自己思考後再去問別人,而不是一遇到問題就找人求助。第二個是不斷地打破自己的一些想法,你不要擔心自己今天已經做了50%的工作,要是推倒重來,前面的事情都白乾了。我現在帶的兩個新人成長很快,但是都有類似的經歷,就是一個東西被我反覆推翻重做,在這個過程中就是不斷地成長,要思考我為什麼讓你推倒重做,若想不清楚,下次重做的

小黑(吳翰清)阿里雲集團資訊保安中心高階安全專家

  • 防毒軟體能保證客戶端安全嗎?——防毒軟體似乎是個人電腦的標配了,但這個只能做看起來安全,要真正的安全,其實是非常難的。像流行的木馬之類的病毒,它第一個對付的就是防毒軟體,它在實施一次攻擊之前,要看是不是通過了360諾頓、麥咖啡等各種防毒軟體,然後才會拿出來實施攻擊。
  • 看你所處的行業和企業的規模來做安全方面的投入。安全的投入又分很多方面,例如,招人、買裝置、買安全服務、做評估等。
  • 雲安全服務?遭受多少次攻擊,我們就幫你清洗掉,事後按次數收費,這個成本就降下來了,
  • (白帽子是做好事的,黑帽子是做壞事的)在招人的時候就很小心,要看他以前做過什麼,歷史不清白的是不能要的。
  • 有時不能說他們(黑客)的技術水平有多高,只是這些網站在安全方面做得太差了。
  • 子柳:對於白帽子黑客來說,有哪些信條或原則呢?
  • 吳翰清:首先要有職業道德,然後要假設一切都是邪惡的,我們自己的人也不能完全相信,要通過技術手段來保證,所有人的操作都有記錄,做審計,然後收許可權,我們自己也只有很少幾個人有伺服器的許可權,保證我們自己也黑不掉公司
  • 每一個新技術的出現總會有人找到漏洞進行攻擊,攻與防似乎是自然界生態體系的基礎,在網際網路行業,這個生態平衡嗎?
  • 只要技術在不斷地發展,就會有新的安全問題出來,這就像自然界一樣,達到了一種生態平衡。(對於攻的人,他只需要找到一兩個漏洞,對於防的人,要找出所有的漏洞,把它補上。
  • 給安全方面剛上路的技術人員一些建議吧?
  • 吳翰清:從基本功做起,研究常見的漏洞,把它查出來,並去分析它,不要用它來做壞事。另外,去看看公開的漏洞,研究一下漏洞的利用技巧。

雲錚(張清)資料平臺與產品部資深技術專家

  • 八年資料生涯的夢想是能夠推動集團資料統一體系架構,為資料化運營,推動實現十年資料戰略儘自己一份力。
  • 淘寶把中國電子商務從零開始到現在,幾乎所有的資料都包含了,有B2BB2CC2C的商品資料,以及交易資料和支付資料。而Amazon只有B2C的資料,Google沒有商業資料,都是搜尋的資訊。淘寶的資料從量和質上面都非常高,而且更適合中國的國情,這上面是中國人的消費資料。
  • 作為一名網際網路技術老鳥,你的成長之路是什麼樣的?
  • 雲錚:理想主義,興趣+執著,看準一個方向後,無論是順境還是逆境,都要不斷地努力,不浪費時間和機會
  • 子柳:給技術剛起步的人員一些技術成長的建議吧。
  • 雲錚:興趣是最好的老師,堅持是達到夢想的唯一途徑,當然,在個人發展的不同階段尋找到合適的導師很重要,看準方向會事半功倍。在剛剛參加工作還沒有形成自己的判斷時,方向有兩個來源,一個是個人的興趣,一個是找一個你非常佩服且能掌握未來方向的人,當然,如果這兩者正好重合,那麼剩下的就是腳踏實地堅持

小馬(趙澤欣)淘寶UED前端通用平臺高階技術專家

  • 2006年加入淘寶後,他成了全網第一位前端工程師
  • Velocity大會,當時令我印象很深刻的是,有一個嘉賓分享了一個觀點:效能更應該是功能……,這讓我想到很多專案其實一開始都很關注功能,當功能通過後,先草草上線,而後再逐步完善效能上的問題,這個嘉賓的說法讓我產生了強烈的共鳴,這種體會在這個大會上有很多。
  • 在國內很多會議的展臺前就發放一些禮品、資料,有些就是放個盒子讓參會者放入名片等,而在國外會議的展臺前,我看到了更多的互動部分,他們會在展位前搞很多遊戲式的互動來收集參會者的資訊等,這種體驗是很好的,讓人覺得很舒服。
  • 子柳:小馬是淘寶網第一個做前端的,目前還在做前端,現在有5年多了,給大家簡單介紹一下淘寶前端的發展歷程吧。
  • 小馬:先給大家說一下前端是怎麼來的,我自己對前端有一些思考。就以淘寶為例,一開始,淘寶就是一個社群,大家釋出資訊給別人看。隨著網際網路的發展,大家不僅僅要看到一個靜態的頁面,他們更需要有絢麗的頁面,有更豐富的互動。也就是說,對體驗的要求越來越高。這樣互動難免變得越來越複雜,這個時候開發人員並不是很適合做這些事情,而是需要一個細化的工種來做這件事情。我個人認為傳統的開發人員更多的是面向機器來開發的,更多的是考慮CPU的問題、記憶體的問題、資料庫的問題。實際上需要一些開發人員對使用者有更敏銳的感覺,他們來完成介面的問題,介面是網際網路與使用者互動的地方,他需要對體驗有一些認識,對更關注。從另一方面來看,這幾年下來,客戶端越來越多,頁面要適應很多客戶端,這也不是傳統的開發人員擅長做的事情。基於這些原因,就產生了這麼一個新的工種。
  • 我們剛開始做的工作就是讓頁面動起來,做了很多JavaScript開發工作,讓整個頁面變得更加活潑,這是第一階段淘寶前端的狀況。
  • 到第二階段,“AJAX”變得流行起來,它改變了整個業界的開發模式,第二階段是前端和後端合作,讓頁面的體驗更加友好。
  • 再往下一個階段,我們發現越來越多的內容在瀏覽器中展現,越來越多的瀏覽器出現了(FirefoxChromeIE 6IE 8),這讓前端越來越重,就出現了效能的問題,我們又需要做一些框架、規範和很多優化的工作。
  • 暢想一下前端未來的發展方向。
  • 小馬:我認為,未來的方向是前後端的界線越來越模糊,即未來求開發工程師能夠把前後端的工作銜接起來。我個人比較認可一種說法:經過這幾年開發模式的漸漸發展,未來前後端的開發會融合起來,這樣的崗位叫做“Web開發工程師
  • HTML5的目的是想讓整個Web真正成為一個開發平臺,或者說是讓瀏覽器成為一個適合開發大型應用的平臺。你看它的變化,首先HTML5標籤的變化是讓它更具有語義化,然後CSS3把很多展現型的東西做了加強,最重要的是新增的那些JSAPI,你現在已經可以在瀏覽器本地連線資料庫、使用Socket、使用本地儲存、獲取地理位置等,很多我們以前開發過程中需要從後臺取得的資訊,現在都可以在本地瀏覽器中做。這使得瀏覽器變成一個適合做大型應用的平臺,而不是像以前一樣只做內容的展示。
  • 在淘寶的網站上,HTML5已經無處不在,淘寶是國內應用HTML5最早的網站之一。
  • 有三家公司對我們影響非常大。
  • 第一家是Yahoo(雅虎),前端崗位的定義就起源於雅虎。當時雅虎的發展如日中天,他們有很多優秀的技術和人才,並且最早提出前端的概念、框架和規範。我們的很多規範也是借鑑他們的,我們曾遇到的效能問題就參照雅虎提供的優化方案和工具(YSlow)。
  • 可以說,2007年至2009年,我們很多東西都是借鑑雅虎的。
  • 第二家公司是GoogleGoogle為什麼對前端產生這麼大的影響呢?是因為AJAX實際上是被Google變成一個商業上很成功的應用,它的GmailDocs等產品採用了大量的AJAX技術,AJAXGoogle的成功應用讓很多前端和互動的工程師開始使用這種技術,讓前端的工作變得更加繁榮。
  • 第三家就是FacebookFacebook是把體驗和技術結合得最完美的公司。
  • 給起步階段的同事一些建議:有個一萬個小時理論,我覺得很正確,說的就是一個人必須經過不斷地練習,不斷地遇到問題才能成長起來。當然,做的時候要不斷總結,寫部落格是一個很好的途徑。

多隆(蔡景現)淘寶傳奇工程師

  • 多隆是淘寶的創始人之一,也是淘寶的第一個程式設計師,他奠定了諸多淘寶重大軟體專案的基礎。有人說他是淘寶的掃地僧,有人說他是。在淘寶,他做到了既懂C/C++語言,又懂Java和核心;既可以深入技術底層,又能切入到高層業務領域,從前端到後端,知識既廣又深。他就是核心系統部專家組的多隆。
  • 多隆說他知識經驗的積累主要歸功於在淘寶業務發展的過程中,他遇到了各種各樣的問題。這些問題促使他不斷學習解決問題的各種技術,他和淘寶一起成長。
  • 他把自己當成海綿一樣去吸收新知識——在他的字典裡,沒有不值得去解決的問題,也沒有不值得去學習的技術。而且每學一個知識點,多隆都會寫一段程式碼去驗證,一方面是練習,另一方面也讓他加深理解,直到真正掌握這個技術。
  • 多隆還有一個常人難以做到的特質。當他沉浸在他的程式世界時,外界的人和事很難干擾到他。《功夫熊貓2》裡的最高武功心法“InnerPeace”(內心平靜)吧。有了這樣的專注力,不成為高手也難。
  • 多隆從2000年加入阿里巴巴,到現在已經十多年了,仍在淘寶技術第一線寫程式碼。他在做他喜歡的事情,解決問題和寫程式碼讓他覺得很有成就感。
  • 一個計算機工程師該以怎樣的態度和方式來工作和學習?多隆的一條樸素的建議或許可以很好地解答:發現問題,解決問題,不要繞開問題的本身;多做事情,不會吃虧,即使不是你的事情。
  • 始終保持對程式碼的那份單純的熱愛,保持對技術的專注和鑽研;別人把工作當工作,他把工作當事業——這就是多隆的程式世界。