葉亞明,攜程旅行網CTO & 高級技術副總裁,負責攜程的移動、Online、呼叫中心等的技術架構、開發及運營。在加入攜程以前,葉亞明是ebay.com技術平臺總監,領導ebay.com幾代網站的架構和平臺升級。他在美國加州硅谷擁有超過15年的互聯網工做經驗,曾經任職ebay、yahoo和 startup等。數據庫
在攜程5年間經歷了不少事情,我把這些概括了一下,今天分享給你們,但願引發一些共鳴。 安全
能夠用一句話來歸納CTO的技術領導力,就是「帶領團隊快速響應業務,並支持業務10X增速的綜合能力」。服務器
主要有三點:第一,要快速響應業務;第二,要搭好10X增速的架構;第三,對內對外要樹立技術品牌。作到這三點的話,做爲一個技術領導人,會比較踏實。架構
首先我想框定一下今天所講的CTO範圍,這裏的「CTO」或者說技術領導人,不是指大型企業或集團的CTO,而是企業某業務部門的技術領導人,也能夠是小微企業技術領導人,或者單一業務的初創型企業技術領導人,這個領導人要對產品的研發、設計、運營全面負責。框架
關於CTO的基本能力——樹立團隊技術願景、組建高效技術團隊、帶領團隊交付項目,實現業務需求,這些你們聽過不少了,這不是我今天講的重點。今天講的內容是結合個人經歷提煉出來的,和你們分享一下。分佈式
過去四年攜程變化很是快,現有業務倍速增加,16個全新業務要發展,外部競爭形勢嚴峻,業務要求研發提高響應速度,而團隊缺少獨當一面的干將。這樣的狀況下,帶領團隊的業務壓力很大,技術壓力也不小。只要你當過技術領導,那麼你對這樣的場景不會陌生。性能
咱們提出合格CTO的六要素,當時是用來做爲外部招募和內部人才培養的標準,讓他們拓寬思路,學習如何在實踐中應用。學習
做爲技術領導者,你會面臨不少技術問題。業務發展了之後,過去的一些技術瓶頸,都會變成問題。在這種狀況下,對技術領導者有較大的考驗,一個是時間緊迫,要快速解決問題,還有就是你要指明方向,帶領團隊共同前進。測試
舉一個例子,酒店是攜程的主營業務,過去酒店數據庫服務器承受不了訪問的壓力怎麼辦?咱們想了一個辦法,數據庫讀寫分離,真正讀佔80%,寫的話,20%都不到,讀寫分離以後,性能提高了6倍。若是沒有這個決策,這個問題就會成爲業務快速增加的障礙。大數據
幾乎全部的互聯網公司都會遇到技術債,技術債是潛在的,當業務發展到某個階段時必定會爆發,有技術債怎麼辦?除了可以「發現」債的存在,還要適時「還債」,做爲技術領導要有這種前瞻性。
好比,不一樣的業務架構的耦合問題。兩個業務或服務原本應該沒有關係,若是耦合在一塊兒,時間長了就會變得很是複雜。業務之間的數據耦合也沒有必要,應該隔離起來,還能夠作到安全。
再好比登陸問題,若是每一個業務搞一套本身的登陸系統,會很是危險。由於登陸對安全的要求很是高,若是出現漏洞,後果就很嚴重。登陸不只須要從架構角度考慮,還要從安全的角度考慮,看有沒有作到很好的統一。由於這種債如今不還,之後也得還,而且成本更高!
還有測試環境,當時攜程擴展了16個新業務,每週要發佈許多的項目,若是還用以前的測試環境是遠遠不夠的。2011年咱們就開始部署針對移動研發的測試環境,但一直是小打小鬧,等到2013年,每一條業務線都在作移動研發的時候,以前的環境已經不能勝任了,須要從新架構、組建。
因此你要可以在問題爆發前發現它,並解決它。
做爲技術領導,須要跟業務領導緊密配合,成爲最佳搭檔,創建這樣的默契須要一個過程。
首先,技術領導要站在更高的視角思考問題,要從業務負責人或CEO的角度去思考他提的需求是什麼,從觀念上先調整過來。
其次,做爲技術領導,要會平衡產品需求。研發資源有限,你要判斷產品需求的優先級,而不是全部的業務需求都接受。能夠用二八原則,重點關注可以收穫80%產出的那20%項目。
第三,要提升交付滿意度。
第四,要有業務洞察力。做爲某個業務的技術領導,你應該對這個業務是很是有興趣的,在業務上要有一些洞察力,若是對業務很是有感受,那麼你跟CEO的交流就會上升一個層次。
這是一個軟技能,你要意識到你本身處於什麼樣的位置?周圍的人跟你的平衡點在哪裏?本身的優點和短板在哪裏?你須要自省,對自我有一個清晰的認識,這很是重要。
做爲技術領導,認識自我還不夠,還要認識團隊。團隊總體技術水平是什麼樣?團隊的短板在哪裏?有這樣的意識,你就知道在哪一個方面應該補強。
舉個例子,在攜程快速發展時期,我面臨的問題是要爲新業務配備得力的技術領導人,好比門票、金融等業務。過去幾年,攜程引進了一些新的技術骨幹,他們在某些領域更加專業。另外,你還要意識到團隊中的技術欠缺,並肯定這個問題是本身解決仍是交給別人解決,若是交給別人,你就要去找合適的人進來,這樣團隊才能不斷提高。
這個技能提及來簡單,作起來仍是挺難的,主要有四點:
這方面的大道理你們都清楚,若是真正去練習的話,你會發現不少能夠提升的地方。我會常常問本身一些這樣的問題:
這些問題跟上面所說四點有很是大的關係。
做爲一個技術領導,若是你常常爲整個業務或者團隊帶來新的東西或思路,與公司授予你的權力相結合,那麼推動起來會很是快。雖然自下而上的創新也能夠成功,可是根據經驗和中國互聯網過去的發展,從上到下去推進改變會更快一些。
首先,要引入領先的技術和技術管理模式。看看技術上有什麼樣的欠缺,須要引進哪些新的技術。還有就是技術管理,攜程經過管理使團隊擁有強執行力,甚至達到「軍事化」的產品交付能力。
其次,不光引進,還要帶來改變。你所帶來的改變,能讓你的領導、同行、下屬都認識到,價值就體現出來了。
第三是創新。舉一個例子,關於攜程大數據的落地。2012年,那時候是沒有大數據的,咱們只有小數據,如何讓這套大數據系統落地呢?這些新技術的引入都應該是技術領導去推進的,而不是等着工程師來推進。
再舉個例子,APP包大小的問題不少人都碰到過,由於攜程的旅遊業務比較完整,包大小的控制難度會比較大。在iOS上,超過100M的APP,非WIFI環境下會彈出一個框不讓下載。咱們作了測試,瞭解這個會影響多少用戶,帶來多少業務損失,最後想了不少招,把這個問題解決掉了。
最後是交流和分享。以前攜程的技術分享氛圍比較弱,咱們就發起了不少分享活動,一羣有興趣的人每週都會進行交流。攜程也會主辦一些活動,也會參加其餘組織辦的活動,好比InfoQ舉辦的QCon大會,我本身也參加過幾回。
我上面講的這些內容,可能你們會有一些共鳴。哪怕能讓你有一點或兩點改變,能夠對你產生一些影響,今天這個演講就值得了。須要強調的是,今天我只是提供了一個思考框架,要作到熟練應用,還得靠本身多練習。
嘉賓主持:王勇睿,百融金服合夥人、互聯網事業部總經理
王勇睿:您怎麼看待攜程以及攜程技術團隊的改變?
葉亞明:能夠從幾方面來說:
你們能感受到的首先是攜程的改變,攜程從呼叫中心爲主的業務轉變到移動互聯網,這是一個比較成功的例子。這個成功一方面是抓住了移動互聯網爆發的機遇,同時技術團隊與時俱進,經過創新和管理提升效率,與業務密切配合,使整個業務線成功完成往移動互聯網方向的轉型。
第二個改變是團隊基因,咱們在團隊中倡導工程師文化,改變技術氛圍,爲團隊注入更多的互聯網基因,整個團隊有了一種使命感,這方面的轉變也比較成功。
第三個引進了一些新的理念,好比移動優先、用戶費力度、雲計算、大數據、10X架構等。
第四個,對業務的快速響應,咱們無條件要求技術團隊快速響應,快速交付,在此基礎上還要支撐業務的高速發展。
回過頭來看這些變化,挺爲團隊感到驕傲的。
王勇睿:攜程的業務發展這麼快,技術團隊確定也要一塊兒跑得快,技術和業務之間是如何平衡的?
葉亞明:平衡技術和業務之間的關係,在知足業務需求的同時,合理調配技術資源,每一個公司都會碰到這樣的問題。
攜程的技術團隊採用了一個分佈式的技術組織架構,在這個架構中,各個業務線跟技術線是一個總體,把它做爲一個BU,開發、測試、運營人員的開銷是落在這個業務線裏面的,最後成本跟產出也是屬於業務線的,這樣就解決了不少問題。
還有一塊是公共技術,雖然這些技術不直接面對業務需求,可是要爲業務的開發工做承擔公共基礎設施的建設,像大數據、框架、安全、風控、帳號之類。
剩下的是要有評判能力,這個項目是否是真的值得作,好比攜程以前火車票和酒店打包一塊兒賣,不是頗有效,直到最近做出了一些初見成效的嘗試,這時候就值得投入資源。
經過CTO的評判能力,開發資源能作到20%的項目產出80%的價值,作出這個平衡意義就很是大。
總結一下,個人回答主要有兩點,一個是要有合理的組織結構,還有一個是做爲CTO須要有評判的能力,這兩點作到的話,大部分問題會解決得比較好。
王勇睿:您剛纔分享中提到培養接班人,該如何去找這個接班人呢?
葉亞明:這件事情攜程已經在作了,我本身或者下屬的人,你們都要培養接班人,我一年前作了一個「接班人計劃」,列出了每一個崗位上的候選人是誰,候選人也能夠不止一個。
作了這個計劃之後會發現有兩個問題,一個是這個團隊有沒有接班人,第二是若是已經有接班人,那麼何時能夠接班。有些團隊缺接班人,就能夠從外面引進。創建起這樣一個透明機制,是技術領導都要作的事情。
參會者提問:葉總您好,您剛纔說把技術團隊的成員放在業務的BU裏面,那麼績效是如何考覈的?怎麼保證業務團隊的總體性?
葉亞明:這個問題很好,私下裏被不少CTO都問到過,攜程有一套技術考覈體系,這個體系也是過去兩年提煉出來的,仍是能夠作到相對客觀透明的。我講幾個關鍵點,一個是技術人員有一個考評機制,來給他們打分。還有一個述職機制,每半年一次,你們評分,按照評分的結果決定是否升遷。
技術領導在業務線上的考覈方面,首先是這個業務的CEO,他有很大的發言權,技術團隊在你的帶領下作得好很差,決定了他的業績,同時,我也會比較仔細的去考評他這一方面的內容。業務線CTO下面技術團隊的考評,由業務線CTO本身來作。這樣作完了之後整個體系就出來了。