匯付天下技術丨如何用平臺工程打造全新的開發者體驗
一、什么是平臺工程
Gartner發布2023年10大戰略技術趨勢報告,其中包含平臺工程(Platform Engineering)。Gartner對平臺工程的定義是“平臺匯集的工具、能力和流程均由領域專家精心挑選,并經過封裝,以方便終端用戶使用。其最終目標是打造無摩擦的自助服務體驗,為用戶提供合適的能力,幫助他們以最低的成本完成重要工作,從而提高終端用戶的生產力并減輕他們的認知負擔。平臺應能夠滿足用戶團隊的一切需求,并以任何可能的形式,完美匹配用戶的首選工作流。”
其中我們可以看到幾個關鍵詞:“平臺匯集的工具、能力和流程”、“自助服務體驗”、“減少認知負擔”。從這幾個關鍵詞中,我們可以理解平臺工程的核心要素和理念,即平臺通過提供一系列工具和能力,幫助開發者提升體驗并解放生產力。
平臺工程概念的誕生可以追溯到敏捷理念的提出,隨著云原生、Kubernetes技術的興起,DevOps工具和平臺也隨之爆發。匯付也在近幾年不斷地付諸實踐,先于2017年開始做數字化轉型,將部分業務試點上云,后于2020年業務系統全面上云,從而也支撐了斗拱PaaS平臺的誕生。在2023年Gartner提出平臺工程概念的同時,匯付也啟動了π計劃,致力于統一研發規范、流程和工具,并誕生了π平臺。
二、平臺工程的實踐
了解了平臺工程PE的概念,那應該怎么樣去落地并讓我們的開發人員受益呢?
平臺工程既然是基于SRE和DevOps發展來的,那么平臺工程的產品必然是SRE和DevOps產品的升級。業界做的相對成熟的DevOps產品有阿里云云效、華為云CodeArts和騰訊云CODING,這些產品的能力都非常全面,已經不僅僅是完成代碼發布而已,而是將研發工作中的方方面面都囊括進去了。比如需求管理、自動化測試、代碼安全,甚至是效能管理。
在打造一個平臺工程產品之前,我們需要了解開發者的日常工作內容以及他們所需的工具技術,從而梳理出平臺需要集成的能力。
開發者們需要的工具技術通常包括:基礎設施、API、安全工具、不同的環境、監控工具、容器平臺等。這些工具技術需要我們的平臺工程師在內部開發者平臺IDP(Internal Developer Platform)上去實現,最終以服務的形式提供給開發者使用。
內部開發者平臺IDP不僅包含了基礎設施的管理,還包括整個應用程序CI/CD的過程,以及安全管理和監控。平臺工程師負責維護,而開發者就是平臺用戶。
匯付在2023年也基于平臺工程理念推出了π平臺,不僅涵蓋了IDP的全部內容,更打通了研發全流程,需求、開發、測試、發布、運營全覆蓋。
平臺界面:
三、平臺工程如何提升開發者體驗
在解答“平臺工程如何提升開發者體驗”這個問題之前,我們得先了解開發者體驗出了什么問題?以及為什么開發者體驗不好會導致生產力的下降?或者為什么開發者自己也會覺得自己做事總是沒有效率?
在我們通過行業調查和內部開發者調研的過程中發現,開發者們其實并不喜歡做運維,甚至極其討厭,復雜的概念知識和繁瑣的操作讓他們煩不勝煩,從而也導致他們專職于業務研發的精力被割裂地少之又少,繼而生產力也會受到影響。
“時間枷鎖”:DevOps的興起讓傳統的開發人員擔負了運維的工作,兩個人變成一個人,看似高效,實則讓開發人員的精力分散了一部分去做運維,每天實際用在開發上的時間可能并不多。對于一個高級工程師,他通常在團隊里或者項目里扮演的都是比較重要的角色,因為能力比較強,那基本上運維工作基本就交給他了。那開發的工作參與就少了,高級工程師的開發效率是很高的,想想看,是不是很浪費。
“認知恐懼”:相信有經歷過系統故障的開發者應該都感同身受了,一旦出現故障,當事人都是很慌亂的,總有些你搞不清楚為什么的原因引發的,所以對于運維不是特別熟悉的開發人員來講,認知問題真的挺讓人害怕的,而且你不能保證你一直記得住。
“權利偏差”:開發者對DevOps系統工具有很多訴求,但這類工具通常是拿來即用的,缺乏專業的平臺團隊和運維人員支持。開發者有時不知道找誰解決問題,有時覺得自己說話沒有分量,大部分訴求得不到滿足。這可能就讓開發用起來很不爽,進而浪費更多的時間去消化和溝通。
平臺工程的出現將解決這一困境,通過一站式的管理,將所有研發相關的工具、資源、配置管理等工作集合到一起,省去了多系統來回切換這種繁瑣的操作;將資源、工具、代碼、文檔等以自助式的服務方式提供出來,讓開發者可以靈活自由的選擇;通過屏蔽專業知識、流程簡化和引導式的交互,給開發者以流暢的體驗;將任務處理、CI/CD、運維排障等工作全部自動化,讓開發者無需嚴防緊盯浪費精力。從而,通過這些方式方法和工具技術,讓開發者保持Flow State(心流狀態),可以專注于業務研發。
可以說,π平臺的誕生和應用,實實在在給匯付開發者們帶來了極大的便利和效率上的提升。
四、總結與展望
π平臺自2023年發布后已穩定運行2年有余,期間不斷地完善能力、優化體驗,成為了匯付內統一的研發管理平臺,同時也得到了開發者們的一致好評。匯付擁有超過300名研發人員,π平臺的日均UV為200+,日均PV為19K+,日均使用率非常高。在最近一次的開發者滿意度調研中,滿意度評分達到了8.75。超過70%的開發者用戶認為π平臺在功能性和交互體驗方面做得很好,發布效率有很大提升,技術支持也很到位。
以下是用戶評價:
不僅如此,π平臺也作為統一的研發協作平臺,采集了從需求、開發、測試到發布各個工作環節的研發效能數據,從客觀的數據上也體現出了生產力真正的變化。
人均完成任務量(季度):
人均完成任務量從2023年Q3的8.42個到2024年Q4的50.11個,幾乎翻了5倍。
需求交付數與需求交付周期(天):
完成的需求量自2024Q1的1118個增長到2024Q4的1830個,需求交付周期逐步下降至9.7天,基本用戶提出的需求都可以在2周內交付。
阿里在推出其DevOps產品“云效”并在其內部做效能改進時提出了“2-1-1”的愿景:“2”指的是交付周期2周——85%以上的需求可以在2周內交付;第一個“1”指的是開發周期1周——85%以上的需求可以在1周內開發完成;第二個“1”指的是發布前置時間1小時——提交代碼后可以在1小時內完成發布。
而在匯付,有了π平臺的加持,我們的效能已經實現了“10-6-5”,即交付周期為10天、開發周期為6天、發布前置時間為5分鐘。
自2024年12月匯付舉辦了首屆斗拱開發者大會以后,我們感受到客戶方開發者們對匯付技術的認可和期望,認識到我們為開發者所做的服務還有很多不足,π平臺對平臺工程理念的實踐在匯付內部取得了非常好的效果,希望不久的將來能夠把π平臺的能力開放出去,讓斗拱的開發者們能提升對接匯付支付能力的效率,更加專注于自身業務,幫助客戶的開發者也能提升生產力。
在未來不久,π平臺還將全面擁抱AI,將AI的能力融入到整個研發協作流程中去,不限于智能需求評審、智能代碼評審、智能用例生成、知識庫問答等功能,還會集成大量的MCP Server,不斷擴展AI能力的邊界,進一步提升開發者體驗和開發效率,解放生產力!