Nubank

Nubank 藉助 Flutter 實現有原則的規模化發展

成功指標

30%

合併成功率高於 iOS

600%

合併速度更快

目標

Nubank 是亞洲以外最大的獨立數字銀行,為超過 4800 萬人提供安全便捷的方式,讓他們透過掌上裝置管理自己的財務生活。該銀行利用雲技術和精簡的使用者介面,旨在為普通大眾簡化銀行業務。

公司發展迅猛,他們需要一種方法來快速開發和釋出新產品,同時不犧牲質量。不幸的是,Nubank 很難找到足夠的原生移動專家來跟上其雄心勃勃的步伐。結果,他們的 iOS 和 Android 團隊經常不平衡,導致一個平臺比另一個平臺更早釋出功能。除此之外,每次都將每個功能編寫兩次開始讓人覺得浪費時間。

Nubank 得出結論,專業團隊難以很好地擴充套件,並開始尋找一種方法讓單個團隊端到端地開發功能。透過一個混合平臺,後端開發人員將能夠為移動前端做出貢獻,產品可以更快地釋出。他們所需要做的就是找到適合 Nubank 需求的正確跨平臺技術。

為什麼選擇 Flutter?

Nubank 組建了一個特別工作組,調查了一些最受歡迎的移動混合平臺,包括 Kotlin Native、React Native 和 Flutter。目標是找到一個解決方案,讓他們的團隊能夠自主工作,在一個單一的架構、程式語言和一套約定下開發移動應用程式並交付價值。

該特別工作組由 Nubank 經驗最豐富的移動開發人員組成,他們根據 11 項主要優先事項評估了他們的選擇。其中包括開發人員體驗、平臺的長期可行性、增量抽象成本、非線性抽象風險以及應用程式在 iOS 和 Android 上外觀和感覺相同的能力。

為此,他們透過動手測試、與專家對話、反饋會議、內部可用性測試等方式,對每個候選平臺在這些領域進行了評分。

在可用性測試中,特別工作組觀察了不同級別和背景的開發人員進行了一個小時的測試。開發人員獲得了一個可執行的應用程式、開發環境、平臺文件和一些要編碼的任務,例如構建一個“快捷方式”按鈕。然後,測試結束後,他們回答了一份簡短的問卷。

正如特別工作組發現的那樣,開發人員喜歡 Flutter。與其他選項相比,它提供了更好的熱過載能力、強大的文件和更穩定的 API。而且它使用起來非常有趣。因此,研究完成後,特別工作組釋出了一份 54 頁的報告,推薦了他們的平臺:Flutter。

他們的解決方案

選擇是明確的。Flutter 在幾乎所有類別中都表現出色,在開發人員體驗、文件、API 穩定性、缺乏平臺專業化等方面都優於其他平臺。團隊還喜歡 Flutter 的測試功能,特別是用於單元測試、整合測試和端到端測試的內建測試基礎設施,而無需渲染到螢幕。

做出決定後,Flutter 成為 Nubank 移動開發的首選解決方案。自那時起,所有新功能都已用 Flutter 編寫,遺留功能則隨著時間的推移進行遷移。

“Flutter 提供了我們所需的一切:關於如何整合應用程式的良好文件、真正有效的熱過載、社群支援和工具。”

- Igor Borges,Nubank 軟體工程師

“將 Flutter 作為我們的主要技術顯著降低了障礙,使新工程師能夠在入職幾天內為我們的應用程式做出貢獻。”

- Noe Branagan,Nubank 工程經理

成果

Flutter 對 Nubank 來說是一個顛覆者,讓他們能夠在不犧牲質量的情況下繼續擴充套件。許多工程師已經能夠轉型為全棧工程師,同時提高了開發人員的生產力和工作樂趣。而且由於 Flutter 的入門流程如此簡單,新工程師可以在入職幾天內為應用程式做出貢獻。甚至非移動工程師也可以在幾周內變得高效。

他們的構建時間也大大縮短了。使用 Flutter,Nubank 在短短三個月內推出了新的壽險功能——這是他們有史以來最快的釋出。此前,開發和釋出新產品需要數月到一年的時間。為了進一步加快開發速度,Nubank 還採用了一種使用 Flutter Desktop 的實驗性內部開發工具,該工具透過跳過模擬器來減少筆記型電腦的電池使用量。它還有助於在不同裝置尺寸下進行快速測試。

事實上,Flutter 帶來了全面的效能提升。使用 Flutter,Nubank 的合併成功率比原生平臺提高了 30%。平均而言,Flutter 的拉取請求只需 9.9 分鐘即可合併,而所有平臺的平均時間為 70.45 分鐘。Flutter 還為 Nubank 提供了更多洞察力,例如能夠按功能或軟體包測量應用程式大小,並將指標與其他系統關聯起來。

它還提供了更多使用者介面一致性。使用原生工具時,Nubank 過去有多個且不一致的元件庫。現在,他們擁有自己的設計系統,產品團隊可以擴充套件和自定義。他們還建立了一個工具,可以動態地向其應用程式提供新內容,從而無需釋出新版本的應用程式即可本地化內容。

在 Nubank,Flutter 現已成為文化的一部分。