LinkedIn開源開發者生產力與幸福感(Developer Productivity & Happiness,DPH)框架,這是一個專用於軟體開發,協助組織創建高效且令人滿意的工作環境,進而提升開發效率、開發者滿意度,最終達成長期可持續的框架。除了提出框架本身,LinkedIn也分享內部使用框架的經驗,助組織更好地設計指標與回饋系統。

LinkedIn創建DPH框架的原因,源自於當今開發領域面臨的各種挑戰,特別是在生成式人工智慧興盛發展的時代背景下,LinkedIn認為開發團隊必須具備迅速適應,並且有效運用新技術的能力,而DPH框架提供了一套系統、流程、指標和回饋系統,協助開發團隊克服面臨的新興挑戰。

DPH框架經過4年的開發,其核心目標是要協助開發團隊工作時更幸福、更有效率。LinkedIn設計框架的工作從高層次哲學思考開始,並落實到最佳實踐工作管線。

DPH框架以目標、訊號和指標3部分為基礎,這3個元素共同解答了衡量和評估過程中,組織會遇到的重要問題「如何選擇要測量的內容?」組織可以根據這3個元素確定具體的目標和訊號。而框架也討論了Developer Personas,這是一個依據開發者的工作流程,將其分類到不同群組的系統,框架提供有關建立Developer Personas系統的資訊,包括透過自願者了解開發者的工作流程和遭遇的痛點。

Developer Personas系統的重要性在於提供軟體開發和團隊管理,一種結構化和個人化的方法,藉以更理解開發者需求,進而提升工作效率,範疇涵蓋個人職涯發展、團隊溝通合作,促進更有效的資源分配,但這些最終的目的,都是要支持組織達到更好的產品設計和開發。LinkedIn也在框架中提供重要原則,避免組織建立出後續需要大幅修改的系統,包括討論資料和見解(Insight)之間的區別,以及使用定量和定性資料推動決策的方法。

組織所收集的資料,可轉換成為具體指標、報告和視覺化圖示,框架除了提供設計指標的關鍵原則之外,也提醒了指標設計的陷阱,點出將指標匯總為分數,存在許多潛在問題,而且解釋輸出總量並不是作為軟體工程師最佳績效指標的原因。

另外,框架也強調回饋系統的重要性,使開發者能夠表達他們的需求和挑戰,進而創建一個更具支持性和滿足的工作環境。

LinkedIn指出兩個衡量開發者生產力的重要概念,分別是迭代時間(Iteration Time)和上下文切換(Context Switching),迭代時間是指工程師從觀察到問題,到最終執行解決方案的時間,迭代工作的類型多樣,但整體來說,加速迭代過程會讓整個開發過程更快。

而上下文切換則是指開發者在等待某項工作,會轉而進行其他活動的過程,長時間的中斷開發者會需要花費10到15分鐘重新回到原本工作的上下文,而短暫中斷也會浪費開發者的時間,甚至導致開發者忘記重要工作內容而出現錯誤。因此降低迭代時間並避免上下文切換,是提高軟體開發效率和減少錯誤的重點。

LinkedIn也提供了數個他們內部實際使用的指標,這些指標分為全公司工程指標,以及開發者平臺團隊指標,全公司工程指標有開發者建置時間(Developer Build Time)、合併後CI時長(Post-Merge CI Duration)以及程式碼審查者回應時間等,而開發者平臺團隊指標則有CI可靠性、部署可靠性,還有服務水準目標(SLO)的見解指標數量等。

LinkedIn藉由DPH框架提供了一系列指南和最佳實踐,協助其他組織、團隊設計和實施框架。目前框架文件已經在GitHub上,供任何人取用。

熱門新聞

Advertisement