樂高集團打造了一個開發者入口網站,稱為Baseplate ,這是2千人數位團隊成員,每天上班要打開的網頁。

大家都玩過樂高積木,打造出這款全球知名玩具的是樂高集團,他們從2021年就開始大力展開數位轉型,為了實現高度敏捷化的商業能力,訂出了雲端優先和API優先的轉型戰略。

成立於1932年的樂高集團,目前全球多達2萬四千名員工。過去2年,他們的數位團隊的規模,增加3倍,現在超過了2千人,占了員工總數的1成,分散在全球四個數位據點,為了推動上雲戰略,他們發展出了一套數位維運模式,從產品面、架構面和工程面,來推動上雲戰略。

為什麼樂高集團的轉型戰略是擁抱雲端優先,API優先,甚至從2023年開始擁抱AI,開始嘗試用生成式AI打造聊天機器人應用。樂高集團開發者體驗和雲端部門負責人Rasmus Hald之前在哥本哈根一場研討會中,揭露了他們非做不可的原因。

Rasmus Hald指出,一切都是為了商業敏捷力(Business Agility),樂高集團想要靠數位手段,來實現商業敏捷力。目標是希望能讓IT的關鍵基礎設施可以做到,讓企業應用或IT,無縫地存取到所有資料、運算資源和網路資源。

樂高集團所採取的數位手段,包括了鬆耦合的基礎架構,也要全靠API來運作。「在生成式AI崛起的時代,更要考慮GAI技術對API使用的影響。」Rasmus Hald補充。

樂高追求的商業敏捷力三大特質:實驗力、品質與速度、新奇感

這家積木遊戲巨頭想要的商業敏捷力,包括了三大特質,實驗能力、兼顧品質和速度、新奇。Rasmus Hald解釋,想要有能力快速得到回饋來快速實驗各種創新,也要有能力兼顧速度和品質,能以一定速度持續提供品質一致的應用成果,最後一項特質是有能創造新奇感,有能力持續創新、不斷提供嶄新的體驗,「不能用10年前的老方法來做事,現在每一年都要推出新的產品,和全新的產品體驗。」尤其,越來越多小孩擁有手機,他指出:「如何結合實體的樂高玩具和數位世界,正是他們的新挑戰 。」

例如,樂高推出了一款建設者App,在樂高產品紙盒外有一個QRCode,用這個App掃描條碼後,可以在手機上看到實體樂高積木組合成品的3D模型,也可以跟其他人一起組合同一組樂高模型的玩具,透過App分享彼此的拼法。「這個App就是樂高集團用來實驗不同樂高玩法的平臺, 現在已經成了樂高體驗核心的一環。」例如,後來發展出故事式的玩法,結合一個故事,來組合紙盒中的樂高玩具 ,例如捕捉不同的動物的故事,或是開不同的車子。這是樂高數位團隊其中一項創新成果,將實體體驗結合數位的體驗。

「 我們的目標是,只有最好才是夠好。」Rasmus Hald驕傲的說,這是他對數位團隊的期許。但是,想要推動數位轉型,不能被傳統IT思維綁住,「不能抱怨錢不夠、資安太難,就做不到。」

許多企業的數位轉型,是以IT部門為基礎,來發展電商引擎、數位行銷等不同應用,以其對應的AP團隊,不同應用團隊的底層都是 IT部門。樂高集團原本也是如此,有一個分工明確各司其職的IT部門,旗下有專門的維運,專門的開發團隊。但是,Rasmus Hald指出:「這樣的組織架構,最後會淪為一昧追求成本降低、風險控管。」

不惜將傳統IT部門全面改組,成為一個個小型產品團隊

為了推動轉型,樂高集團乾脆重組了整個IT部門,整體IT人力沒有減少,還是同樣的一群人,但是不再有一個龐大的IT部門,而是改為一個個的小型產品團隊,並且發展一套自己的數位維運模式。樂高的改造主要分三個面向來改組傳統IT,包括了產品面、架構面和人力面。

在產品面,改為一個個不同產品的產品團隊,每個產品團隊得負責這個產品的開發、維運、資安等DevSecOops流程的工作,而在架構面,採取了鬆耦合的技術架構,更容易彈性組合,重複利用來減少不同團隊之間的重工。而在人力面,每個產品團隊都要有自己的工程師,自己的開發戰力。

樂高採取不一樣的IT組織運作模式,讓IT綁定商業成果和責任

不只是重組IT部門,樂高集團更採取了一個特別的IT組織運作模式。Rasmus Hald指出,傳統IT是集中式的IT,各個業務部門提出需求,給一個IT部門,由這個部門負責規畫、開發和維運。在這種集中式IT的模式下,每個AP的責任屬於各事業部門而非IT,IT也不一定需要業務領域的專業,對於業績不見得能感同身受,IT只需要對規模效益負責。

另一種IT組織運作模式是徹底分散式的IT,各個業務部門有自己的AP團隊,負責規畫和開發,再統一由一個基礎架構團隊來負責維運。這個模式雖然讓業務與開發更緊密結合,IT能累積足夠專業,並擔起主要的AP責任,但是規模效益變成了維運團隊的事,而非產品團隊的工作,而且因為最後一哩由維運團隊負責,AP團隊仍有藉口推諉說,不一定要對成果負責。樂高集團沒有採取了上述兩種,而是自己發展出了另一種運作模式,Rasmus Hald稱為綁定商業能力的IT運作模式(Business Capability-Aligned iT)。

在這個模式下,單一IT部分雖然重組成了許多的產品團隊,但是沒有直接隸屬於特定的業務團隊,而更像是負責接手業務需求的產品開發團隊,一個業務部門,可以將不同的業務AP,交給不同的產品團隊來負責。而每一個產品團隊,採取同樣的工作流程,因此,在完成一項業務產品的開發後,也可以接手另

一個業務團隊的AP開發需求。每一個產品團隊都要負責自己所開發AP的維運工作,而不是交給一個獨立團隊,但是每個產品團隊共用同樣的一套基礎架構。「這樣的模式,可以讓產品團隊直接與商業成果綁在一起,也能和業務部門共享責任。」Rasmus Hald解釋。

用OKR管理220個產品團隊,還要訂定願景和產品藍圖

目前樂高集團有220多個產品團隊,每當有一項數位服務或數位功能的需求,就會視為是一項產品來開發,有些是用於顧客的產品,也有不少是內部數位團隊自己所用的產品,例如API管理平臺、API探索工具,都是內部自己用的數位產品。

每一個產品都會指派一位產品經理和負責的產品團隊。一個產品團隊大約10人規模,除了產品經理,開發工程師,還會有一位工程經理,以及負責技術管理的首席工程師。「設立首席工程師的職位,是IT職涯發展中很重要的一件事。」Rasmus Hald表示。

對於這些產品團隊,樂高採取OKR(目標關鍵成果)管理模式。每個團隊不只訂出每一季的目標和關鍵產出成果,還要建立自己產品的長期願景以及一套產品發展藍圖。

產品團隊有自己的預算,對自己的成本負責

樂高沒有採用大規模敏捷框架或是設立一個PMO專案辦公室來統籌管理,主要透過敏捷流程每一次的衝刺來迭代開發任務,不同產品團隊都採取同樣的敏捷開發模式。另外,樂高則對產品團隊採取TCO(Total Cost of Ownership,整體擁有成本)策略,讓每個團隊都有自己的IT預算,並由產品團隊自己對自己的成本負責。每個產品團隊都有自己的使用者團體,包括使用產品的小孩和付錢買單的父母,不只顧客,使用者團隊還會找來經銷商和其他同事提供意見,這是他們快速嘗試不同創新實驗的關鍵之一。

為了支援這樣的多產品團隊開發模式,在技術面,樂高集團的原則是盡可能提高API、雲的使用來減少技術債,也要強化資料基礎建設,並將各種IT和開發工具系統化,並採取了鬆耦合的容器化技術架構。

樂高AP優先上雲,但也打造自家K8s邊緣雲來支援工廠地端需求

在雲端優先戰略上,樂高集團希望能盡可能減少技術藍圖中的長尾技術,例如減少或少用老舊技術,大型主機等。目前樂高集團還有一座傳統的實體資料中心,目前只用了20%的空間,他們決定不再租用代管的主機,改為購買公雲業者的服務,來簡化實體設備維護的複雜度。 

不只是一昧上雲,樂高的優先上雲策略還會聚焦「雲+端」的能力,沒有採取全上雲的考量,Rasmus Hald坦言,因為全世界的樂高積木都是由樂高集團旗下工廠生產和包裝,可是,有些積木工廠的地點,位於資訊基礎設施不夠完善的國家或地區,當地的網路連線能力可能不佳,無法透過公有雲來支援這些工廠的內部運作,得靠地端的機房來維運。因此,樂高集團自己用K8s打造了一朵邊緣雲環境,可以不少到這些工廠的地端機房中,來支援這一類工廠的地端執行需求,他們所用的各種應用,也大多透過API呼叫,因此,可以很容易從雲端切換到地端邊緣雲上的系統來接手提供落地工廠的AP需求。

因為要維持這些實體主機和資料中心的成本越來越貴,所以,樂高集團的策略是,在成本太昂貴之前,儘早將工作負載搬到雲上。「 除了實體工廠需要的本地端邊緣運算需求之外,其他應用都會上雲。」Rasmus Hald指出。

將AP上雲時,樂高集團還會特別留意一件事,避免像在雲端管實體機房的作法,而是改採用多租戶架構的雲端管理方式,讓不同的AP擁有各自的公雲帳號,而且,每一個上雲的AP,也由這些AP各自的開發團隊來自己負責維運。另外,樂高集團對於AP的管理,也採取高度自動化的集中式治理,並指派一個產品團隊負責打造雲端治理的相關工具。

徹底實踐「自己打造的AP,自己執行」原則,甚至不惜重構資料庫架構

「想要實現自己打造自己執行(You build it ,you run it.)這一點其實不容易,容易,但這麼做,才能真正鬆綁產品團隊的能力,要讓產品團隊有速度,就要這樣做。」他強調。為了徹底實踐這一點,甚至樂高有產品團隊無法管理自己的資料庫,樂高也不惜改變這個產品的資料架構,就是要能讓產品團隊自己管。如此一來,才可以真正打破團隊和產品之間的相依性。甚至,樂高每一個產品團隊都有自己的VM,自己連線到網際網路,將不同的產品完全切開,盡可能讓不同產品之間沒有關聯。

在選擇公雲業者上,樂高會避免押寶單一業者,採取跨雲戰略,目前樂高集團採用了AWS和微軟的Azure,「公雲業者具有超大規模的創新能力和健康技術生態圈,和不同的公雲結盟,可以降低對單一供應商的風險。」樂高集團這位雲端部門的負責人Rasmus Hald解釋他們的考量。

樂高集團實踐API優先戰略的四大準則

對樂高這種由產品團隊負責開發和維運的模式,除了上雲優先戰略之外,技術架構面的關鍵是API優先戰略。Rasmus Hald表示,樂高對於API的運用也有一套自己的準則,第一個原則是,每一隻API都必須達到全球可用的能力,可以在全世界各地呼叫來使用,來支援樂高集團在全球的業務發展。其次,API設計也必須是考慮對外公開使用的設計,可以接受來自外部、第三方應用的呼叫,而不是只設計給內部使用。另外,每一個API都必須可以探索,也就是可以讓開發者找得到。

最後一項準則是,樂高會要求每一隻API都要訂定明確的規格和使用條款,例如每一隻API都會訂出SLA服務水準,而且全都白紙黑字寫成文件,還會訂定API版本控管方式,每當版本升級、淘汰時都會發送相關通知給利害相關人。所有API都會遵循一套API資料架構(Schema)來設計,上架前都會進行架構分析來確保API的品質,樂高也有自己的API即時品管機制(API Linting),確保API的呼叫和使用都符合所訂定的規格。Rasmus Hald提醒,API的SLA中特別要留意,必須定義API的棄用情況,才能讓API日後有需要時可以淘汰。

打造開發者入口網站,成為2千工程師每天必看網站

為了讓2百多個產品團隊的開發人員,都可以很方便取用到這些API,樂高集團打造了一個開發者入口網站,稱為Baseplate ,這是2千人數位團隊成員,每天上班要打開的網頁。

Baseplate首頁採取了卡片式的設計,開發者可以將自己常用的功能卡片或儀表板卡片放到首頁上,方便快速瀏覽,開發人員甚至可以自訂自己的卡片。這個開發者入口網站上提供了所有產品團隊的各種產品清單、所以可以用的API、相關的技術文件或參考資料,輔助開發或維運的各種系統工具。最近有哪些新的API或新功能異動,都會在開發者入口上發布最新通告。

產品團隊所開發的每一項產品,可能是業務團隊需要的功能,或是數位團隊自己的工具或服務,會上架到開發者入口網站上。像是樂高用商用API管理平臺Kong打造了一款API管理服務,這就是其中一項他們的產品,

每個產品都有自己的產品介紹主頁,列出這個產品的負責團隊,有哪些相關的文件,這個產品被哪些AP使用,甚至是這個產品用了哪些公雲服務以及公雲帳號,也會提供VM快照,方便部署到本地端環境中。

特別重視API探索的設計,來提高開發者體驗

樂高在這個開發者入口網站上,對於API探索的設計,也花了不少著墨。截至2023年底,共有239隻API,提供全文檢索相關文件和規格,開發者也可以快速列出自己負責的API,也能用星號來標記出常用API,打開API主頁,有相關的規格介紹和文件連結,開發者點一個按鈕,就可以直接申請這個API的存取授權,相當簡單。

為了降低開發者的認知負擔,樂高開發者入口網站特別重視API探索的方便性設計

去年開始用OpenAI打造開發者AI助手

去年底,Rasmus Hald還用Open AI的服務,打造了一個開發者AI助手名為樂高ChatAI,可以摘要樂高開發者入口網站上的所有文件,來回答開發者的開發問題或提供建議等,也可以詢問AI助手,如何使用特定某一支API,而不用自己花時間閱讀完整的說明文件。

樂高集團從2021年開始,為了建立想要的商業敏捷力,花了2年大力推動數位團隊的轉型,擁抱雲端優先、API優先戰略,這個開發者入口網站正是強化數位團隊戰力的成果。雖然,Rasmus Hald沒有明說,但樂高集團數位團隊大改造的過程,也正是一種平臺工程的實踐。

熱門新聞

Advertisement