摘要:
在5月29日召開的第二屆研發效能嘉年華中,由浙江未來酒店網路技術****的孫吉君帶來了「未來酒店——建設高效研發團隊的經驗分享」。本次分享中他對未來酒店研發規模進行了介紹,對高效團隊的三個特徵、四個能力的培養和團隊建設過程中的四個方法進行了講解。
「未來酒店」是飛豬、石基和首旅的合資公司,我們的使命是讓天下酒店沒有難做的生意,旨在通過ai、大資料等技術賦能中小單體酒店,做到入住體驗公升級、酒店服務能力公升級和經營能力公升級。作為未來酒店技術團隊,我們沒有從小長到大的成長過程,一開始就面臨大規模開發的挑戰,我們用了3個月的時間組建了百人研發團隊,完成了產品技術體系和專案管理體系的基礎建設。我們能夠如此快速的組建一支高效成熟的團隊,很重要的乙個原因是基於阿里雲為我們提供的解決方案,讓我們有更多的精力放在行業saas層面的產品技術建設上,那今天這個會就和大家分享一下,我們是如何組建高效研發團隊的。
團隊建設之初我們對團隊做了一些定義,我們認為高效的團隊應該具有3個特徵,同時也在四個能力的培養上做了很多。首先說一下三個特徵:
乙個高效團隊應具備4種能力,這個能力應該是團隊的能力不單是個人的能力
我們在整個團隊的建設過程中有四個方法:
1、三張大圖:
每乙個leader心裡都應該有三張大圖,即業務大圖、技術大圖和組織大圖。業務大圖是實現是什麼樣的業務價值,有什麼目標、有什麼策略、有什麼抓手;組織大圖是我們完成這些業務目標需要的組織保障、人才保障以及人才能力的保障;技術大圖是我們實現業務大圖的方式方法,包括系統結構、技術選型、路線、邊界、平台和工具定義等,技術大圖應該是超越業務大圖有前瞻性,能看到未來3年、5年技術的情況。大有大作、小有小作,但我們從小做到大的時候是驗證規劃順理成章的延伸,如果是顛覆性的說明我們技術大圖的規劃有問題。每個公司的技術leader要有這三張大圖,同時要把這三張大圖印在核心團隊每個人的腦子裡,尤其是技術大圖,最好能在我們有決議衝突的時候,做為我們技術選擇的指導。是業務系統的,還是業務平台的,是工具建設的還是技術中介軟體的。
2、定義開發框架:
針對不同的開發場景要有不同的開發框架定義,如果說三張大圖是架構層面的定義,技術大團是定義系統與系統之間的關係,那麼開發框架就是定義系統內**與**之間的關係,系統內部人與人之間在組織**配合的關係。你可以定義乙個複雜的關係,你也可以定義乙個很技術的關係,但我覺得你應該定義乙個更貼近業務的關係,能夠讓業務邏輯和**邏輯盡可能的對應起來,這將給我們開發效率帶來很大的提公升。同時開發框架要足夠的低耦合,業務和**能夠清晰的對映,代表著開發的同學能夠快速的把業務邏輯轉化為**關係,方便我們評估工作量,以及問題溝通、跟蹤。在實際工作中,我們設計了乙個任務職責框架,這個框架很簡單,就是模版模式和職責鏈模式,背後**的邏輯直接對應著業務的系統、模組、功能和子功能,模組是目錄結構,功能是任務,子功能是職責,乙個功能順序的執行子功能就完成了乙個邏輯功能,由頁面出發還是定時的任務出發都不影響背後的業務邏輯關係。
3、建立模型
結合前面的三張大圖、開發框架,我們已經有了建立資料模型和流程模型的基礎,我們基於此就可以建立溝通模型。這個模型可以是一張excel表、可以是乙個系統,他梳理出來的功能分解,就是我們對應的系統和實現系統的**。這個模型完全是由業務語言描述的,但背後存在著與技術**實現的邏輯關係,讓開發同學可以用業務的語言來溝通技術。如何構建暢通的溝通正是我們要去討論的。我遇到過乙個開發框架,業務的描述是業務處理的流程,而開發用了乙個狀態機,當雙方溝通的時候如果拿乙個狀態機去溝通乙個業務訴求,雙方產生了偏差,效率很低,同時由於狀態機實現的問題,產生了大量的類與類之間的網狀依賴,這個系統發展到最來就是只敢增加**,不敢修改**,任何乙個改動都有可能影響到其它依賴的**。所以我們應該建立乙個業務邏輯和**邏輯的溝通模型關係,同時要盡可能的是以線性方式實現,避免**之間的依賴,如果有公用的邏輯,可以抽象出工具類,甚至重寫規避。
4、豐富工具
工具是非核心鏈路上的輔助系統,他的目的是提高我們的效率,無論開發、測試、產品、運維還是運營都有工具的訴求。我們應該鼓勵豐富的工具,讓工具體系化,並持續的投入,當開發團隊不超過20人時,我們應該盡量做工具,當超過20人時我們可以有平台化的方式去落地。工具化的建設一定是通盤考慮的,乙個開發團隊應該盡量避免重複低效的製造工具,同時我們也鼓勵有想法的有序的工具,通過建設規劃成長的方式為整個開發團隊帶來效率的提公升。當然也可以從我們的角色不同定義我們的工具,開發的、測試的、產品的、運營的、以及專案管理過程中需要的工具。
幾點思考
最後丟擲幾點思考,
第乙個是:如果乙個團隊經常重構系統,那我想一定是存在架構的問題,你的團隊是不是也有同樣的問題?
第二個是:平台化聽上去很高大上,但實際操作一定要謹慎!
第三個是:業務複雜度是不是決定了系統複雜度和**複雜度?作為乙個技術團隊的leader我們覺得是有責任讓我們的系統複雜度和**複雜度不依賴於業務複雜度,也就是業務做的再深入,業務做的再複雜,背後的**邏輯和系統之間的關係應該都是相對清晰的、線性的;第四個是:我們如何在團隊管理過程中平衡技術和業務的目標?當業務需求很緊張的時候,我們如何還能朝著規劃去實現技術的目標以及一些技術的規劃?
未來酒店 建設高效研發團隊的經驗分享
摘要 在5月29日召開的第二屆研發效能嘉年華中,由浙江未來酒店網路技術 的孫吉君帶來了 未來酒店 建設高效研發團隊的經驗分享 本次分享中他對未來酒店研發規模進行了介紹,對高效團隊的三個特徵 四個能力的培養和團隊建設過程中的四個方法進行了講解。未來酒店 是飛豬 石基和首旅的合資公司,我們的使命是讓天下...
建設高效研發團隊的經驗分享 未來酒店
在5月29日召開的第二屆研發效能嘉年華中,由浙江未來酒店網路技術 的孫吉君 花名 再青 帶來了 未來酒店 建設高效研發團隊的經驗分享 本次分享中他對未來酒店研發規模進行了介紹,對高效團隊的三個特徵 四個能力的培養和團隊建設過程中的四個方法進行了講解。未來酒店研發規模 未來酒店 是飛豬 石基和首旅的合...
高效研發團隊建設六步曲
軟體專案管理的主體是軟體開發團隊。乙個軟體專案管理的好壞,很大程度就體現在軟體開發團隊的建設和管理上。專案管理論壇 對美國軟體工程實施現狀的調查結果表明,軟體研發的情況仍然很難 大約只有10 的專案能夠在預定的費用和進度下交付。軟體開發團隊的建設和管理依然是軟體專案管理中乙個十分主要的問題。軟體專案...