平台工程 是組織透過專注於開發人員體驗來優化其軟體開發生命週期的一種方法。 開發者體驗是指開發者的生活體驗,以及他們在日常工作中遇到的摩擦點。 平台工程是一組模式和實務 (不是現成的產品),可協助將企業軟體交付現代化。
例如,一家跨國科技公司使用平台工程來提高標準化並消除跨部門邊界的重複。 該公司首先建立了一種一切皆代碼的方式,以便團隊能夠順利入職。 然後,他們開始以對具有相同經驗的開發人員有意義的方式關聯部署到 Kubernetes 中的應用程序,以進一步幫助發現。 這使他們能夠開始組裝鼓勵最佳實踐的應用程序模板。 他們的開發團隊現在可以挑選現有的構建塊,而不是從頭開始創建它們。
瞭解如何識別組織使用 平台工程能力模型 的最大問題,以便找出要實作的模式和實務。 然後,使用 Microsoft 和其他開放原始碼專案或廠商的建置組塊來建立個人化、最佳化且安全的內部開發人員平台。
使用平台工程能力模型繪製您的旅程
若要開始使用,您首先想要使用 平台工程能力模型來評估您的組織目前所處的位置。 然後,使用功能模型來繪製組織的六種功能圖表:投資、採用、治理、佈建和管理、介面,以及測量和意見反應。 利用您的發現來設定未來成長的目標。 例如,您可能會發現您的組織在投資方面處於早期階段,但在採用方面處於更遠的階段。 若要繪製貴組織目前的平台工程實務圖表,請 參加此問卷 或 開始手動評估。
您不需要同時在每項功能上取得進展。 相反,制定對您的組織有意義的路線。 所有組織在某些功能上都比其他組織更先進。 例如,在此地圖中,組織計劃專注於在採用、治理以及布建和管理方面取得進展。
Implementation
針對您確定為需要改進的每個功能,設定如何推進的目標。 這些目標涉及學習如何使用範本和其他解決方案來改進工程系統並減輕開發人員的摩擦。
- 應用軟體工程系統:學習一些技巧,幫助您思考如何重複使用和完善工程系統,以改進自助服務以解決您發現的問題。 瞭解如何使用集中管理的基礎設施即程式碼(IaC)或其他一切即程式碼(EaC)成品作為正確啟動範本中的建置組塊。
- 完善您的應用平台: 了解如何通過完善您的應用平台來解決您發現的問題。 這些變化可能成本更高,但也可以帶來顯著的好處,特別是如果您能找到滿足您需求的現成產品。 例如,改進(或轉向不同的)可觀測性或日誌記錄工具的使用是否有幫助? 如果您是從頭開始, Azure 架構中心 可協助您從頭開始識別概念。
- 設計開發人員自助服務基礎: 了解更複雜的開發人員自助服務基礎的架構。 這是一種演進,可引導您簡化多個自動化系統並聚合數據。 您將在這裡進行更多的軟體開發,因此隨著時間的推移,請朝這個方向邁進,而不是從這裡開始。