天天看點

張雪峰:創業團隊極速發展過程中的分分合合康威定律@餓了麼創業團隊不同階段的分與合分與合中的lesson learned

2018第二屆研發效能嘉年華專場,雲效邀請了餓了麼首席技術官張雪峰(空心菜)帶來題為《創業團隊急速發展過程中的分分合合》的演講。本次演講主要從三個方面進行講述,首先介紹了著名的康威定律,随後闡述了創業團隊不同階段的分與合,緊接着對分與合中的lesson learned進行了深度地刨析。

數十款阿裡雲産品限時折扣中,

趕快點選這裡 ,領券開始雲上實踐吧! 直播視訊回顧戳這裡 PPT下載下傳請點選 以下是精彩視訊内容整理:

康威定律@餓了麼

康威定律的核心理念就是所謂的軟體架構群組織架構是密不可分的,餓了麼從創業至今已經有十年之久。2009創業之初的技術團隊隻有1個人,也沒有軟體架構。在09年到13年的穩定發展期技術團隊發展到了幾個人,并且當時也隻有兩個系統,分别是使用者下單的系統與商戶處理訂單的系統,那時還沒有物流,都是商家自己完成配送。爆發增長期是13年到14年,在短短兩個月内訂單數量10萬猛增到100萬,技術團隊隻有35人,由于訂單是數量的劇增,考慮引入運維。到2016年底,技術團隊已經達到900人,從35人到900人的發展過程中也出現了很多分分合合,包括組織架構和軟體架構。到2017年底,已達1800人,也在不斷嘗試一些新的挑戰,比如智能排程、異地多活、餓百融合。

創業團隊不同階段的分與合

創業之初僅就餓了麼這個行業來說是業務來驅動組織架構,進入穩定發展後,這時業務也進入了穩定期,這就需要開始去做下一個突破點或者說是爆炸點,也就是必需要創新。對于餓了麼來說,在發展的穩定期期間嘗試着給商家做一個系統,甚至給商家買電腦裝軟體。通過線下的溝通交流,包括自己去體驗痛點。經過不懈努力對新的系統不斷的改進找到了痛點所在,把問題解決。當訂單數量達到10萬時,就出現了一些問題。比如系統會經常癱瘓,業務的不斷擴大已經超過了技術所能承載的力量,是以支撐業務的架構和技術對業務發展非常重要。

創業團隊或組織架構有兩條分合規則,一是高耦合低内聚時就要考慮把高耦合變成低耦合,把低内聚變成高内聚,這是分與合的一個規則。團隊的穩定性也是需要考慮的問題,當兩個系統互動非常多也就是分與合的規則搞不定的時候,我們就會考慮引入中間層。雖然引入中間層會導緻性能上出現一些問題,但是在一定場景下也是一種比較合适的解決方案。

這裡有相關案例,外賣營銷之領域歸屬與跨團隊互動,凡是涉及到盈利的公司都要涉及到營銷到底屬于那個團隊的問題。營銷會涉及到大資料、算法以及BU,表面上交易是通過app或者紅包分享等方式進行的,但事實上這隻是個支付界面,在其背後是很複雜的。對于做業務的團隊可能對大資料、算法不是很專業,這就需要跨團隊互動。

分與合中的lesson learned

張雪峰:創業團隊極速發展過程中的分分合合康威定律@餓了麼創業團隊不同階段的分與合分與合中的lesson learned

在創業之初公司隻有一個老闆、一個程式員和一個業務員。也就是創業三馬車,包括技術、産品加業務組成了最初的創業團隊。發展過程中會有一些痛點,即産品、技術、營運三大組織間的分分合合問題。在一級部門上,傾向産品、技術分離 (CTO & CPO),而在二級部門上,傾向産研(PD)合一(橫向技術團隊無此問題)。CTO雖然有直線産品團隊,但需要 follow CPO 整體産品規劃與相關流程規範 (實際很少過問産品問題),CPO雖然有直線技術團隊,但需要 follow CTO 整體技術規劃與相關流程規範 (實際很少過問技術問題)整體上,算虛實彙報的一種,不同角色 follow 不同規範。

創業之初的關鍵就是要“快”,簡單來說就是怎麼發展的快就怎麼發展,PHP + RN 最好。進入穩定發展期後,這個階段要求穩,快已經不是最重要的,穩定下來之後再去發展技術問題。到10倍高速發展期的時候,随着業務的快速增長,技術也需要快速發展,這時做平衡是有一定難度的,對于公司來說是一個比較痛苦的過程。随着持續高發展後人員增多時流程規範也一定要跟上。其次就是一定要鼓勵員工創新,鼓勵創新是公司今後發展的源泉,隻有不斷創新才有可能不斷的突破發展。

餓了麼創業初期是沒有KPI的,随着發展KPI的數字越做越多,慢慢上升到OKR。OKR也隻是一個工具,許多公司在實踐說自己是OKR,但實際并非如此。OKR如果站在公司的角度就是全局最優,公司就一個或兩個大的名額然後分解,而不是說像之前一樣每個團隊都有自己名額。但OKR也會有自己的沖突,這就是局部最優月全局最優,站在組織架構的角度來講,局部最優到最後往往演變為局部的PK。如果出發點是全局最優,這時就需要在某一時刻要犧牲某個團隊的某個名額去保護大的名額。是以局部最優與全局最優是一個很關鍵的問題。對于如何拆分團隊問題,到底是按業務子產品來拆分還是按功能方式來拆分團隊。餓了麼對于這個問題的做法就是随時應變,沒有固定分法與絕對的答案。

如果現實情況暫不适合團隊拆、并或引入中間層,如何處理這個問題是一個關鍵,首先可以跨團隊共擔OKR,也可以臨時成立虛拟團隊或成立特殊虛拟團隊,如Growth Team,但Growth Team也存在一個問題,Growth Team不是每個公司都能做,因為這需要一個PU,他需要懂一些技術、産品、資料甚至還要懂一些AI、營運,可能還需要去線下跑商戶,這樣的全才的角色是很難找到的,最終找到一個大家都認可的 PO (product owner) 領銜主演。

歸根到底,不管是軟體架構還是組織架構解決的是兩個問題,一是複雜度問題,不管是團隊複雜度還是技術複雜度;一是穩定性問題,包括團隊穩定性與技術穩定性問題。有時兩個KPI可能是有沖突的,它們在局部可能都是最優的,但是放在一起确是最次的。不管是組織架構還是軟體架構,都是在不停的調整的。

簡單總結架構的分分合合,架構可以分為幾種,一是組織架構,整個技術的頂層設計。其次就是領域架構,需要找到合适的專家。最後就是技術架構,因為現在已經有很多技術可以直接應用,不需要自己去研發。無論是不是創業公司這些都是至關重要的。

關于餓了麼研發效能提升的更多幹貨分享,歡迎關注雲效Work Like Alibaba系列直播。

雲效

,體驗阿裡巴巴研發速度。

更多精彩内容請點選

2018第二屆研發效能嘉年華幹貨集結看這裡

繼續閱讀