Grover 提供每月科技產品訂閱服務,並將其服務的工作分散到多個團隊。最近,有些團隊透過採用 Prisma 獲得了巨大的生產力提升。繼續閱讀以了解 Prisma 如何使 Grover 受益,以及您如何也能受益。
更新我的裝置
Grover 提供每月科技產品訂閱服務。Grover 提供客戶租賃設備的方式,並在有新品上市時進行更新,而無需總是全價購買最新的手機、平板電腦和電腦。這不僅打破了所有權和使用權之間的障礙,而且也是一種更永續和循環使用科技產品的方式。
超過 80 萬人選擇使用 Grover,不讓舊科技設備在抽屜裡積灰塵,並且隨著他們最近籌集了 6000 萬歐元的 B 輪融資,他們的消費電子產品訂閱數量預計將顯著增長。
跨團隊拆分服務
隨著組織的成長,擁有多個開發人員團隊是很常見的,每個團隊都負責特定的服務或產品領域。當團隊分散並擁有自己的技術堆疊和偏好時,資料和知識可能會被孤立,溝通可能會變得具有挑戰性。
Grover 是一個很好的例子,說明一家公司如何在團隊獨立性和自主性與整體協作之間取得平衡:他們能夠透過獨立的開發人員團隊快速行動,每個團隊使用不同的堆疊,但將其服務有凝聚力地結合在一起。
Grover 在這方面取得成功,很大程度上是因為他們如何將資料整合在一起,並透過聯合 GraphQL API 使其可存取。Prisma 越來越成為這種成功在全新專案和既有專案中的關鍵組成部分。
讓我們更仔細地看看這種設定:Grover 的所有服務都透過聯合 GraphQL API 公開,這意味著每個團隊都可以在他們選擇的堆疊中工作,只要輸出可以透過 GraphQL 使用即可。
具體來說,對於他們的 Apollo Federation,Grover 有 14 個獨特的服務,由多個開發團隊開發和維護(並且正在不斷新增更多服務)。
跨團隊使用的語言包括 TypeScript、Ruby 和 Python。有些團隊使用 TypeGraphQL,而另一些團隊則使用 Nexus。
鼓勵實驗
Grover 鼓勵和獎勵實驗,以及團隊之間的知識共享。透過跨團隊協作,Grover 的開發人員分享重要的經驗教訓,並能夠推廣可能使彼此生活更輕鬆的技術。
我們與 Grover 的軟體工程師 Ricardo Almeida 進行了交談,他分享了他使用 Prisma 的歷程,以及他的團隊如何鼓勵他使用 Prisma。他於 2020 年開始實驗 Prisma,並立即看到了成效。Ricardo 對 Prisma 的興趣很快引起了他的團隊(在生產環境中實作了 Prisma)以及 Grover 其他人的關注,從而導致 Prisma 在新專案中的自然採用不斷增加。
「Prisma 的學習曲線很低。由於它與使用 TypeScript 的端對端類型安全相結合,因此生產力變得更高。」
這種引入創新技術並允許嘗試各種語言和程式庫的自由,確保 Grover 能夠滿足客戶的需求並縮短上市時間。
Prisma 的成功
Prisma 提供三款核心產品,可協助開發人員快速行動並安全地編碼。
-
Prisma Client - 適用於 TypeScript 和 Node.js 的類型安全資料庫存取用戶端。
Prisma Client 透過在進行查詢時提供類型安全,讓 Grover 對其資料庫存取充滿信心。
-
Prisma Migrate - 用於無縫資料庫遷移的工具
對於 Grover 來說,使用 Prisma Migrate,資料庫內省和遷移變得順暢而簡單,尤其是在他們需要在生產環境中變更資料庫結構時
-
Prisma Studio - 適用於瀏覽器和桌面的現代資料庫 GUI
Grover 的開發人員受益於其資料庫的豐富使用者介面,使他們能夠輕鬆查看和編輯資料。
對於 Ricardo 來說,Prisma 的所有三款核心產品共同提供卓越的開發人員體驗,並在編寫程式碼時節省時間。
「Prisma 提供了一種更標準化的方式來存取資料庫、執行遷移和查看資料,所有這些都是開箱即用的。Prisma 提供了一種單一且標準化的方式來建構查詢,我們確信不會面臨資料分組的問題,不必擔心聯結或將不同的程式庫組合在一起。」
借助 Prisma,開發人員可以獲得開箱即用的類型安全資料庫存取用戶端。
資料庫模型是使用 Prisma Schema Language 撰寫的,TypeScript 類型是從中自動產生的。
使用 Prisma 建模的資料庫易於讀取和寫入。
只需一個命令,Prisma 模型即可提供類型安全的資料庫存取用戶端。
Prisma 在 Grover 的許多不同堆疊中逐漸普及
Grover 對實驗的鼓勵意味著公司內的不同團隊擁有不同的堆疊。對於大多數團隊來說,它是 TypeScript 和 GraphQL 的某種組合,但細節各不相同。
自 Ricardo 開始在 Grover 使用 Prisma 以來,他一直在與其他團隊舉辦學習課程,開發人員可以在其中看到 Prisma 提供的類型安全的好處,以及使資料庫工作更輕鬆的綜合工具。
當 Grover 的開發人員看到 Prisma 的產品在實際運作時,奇蹟通常就會發生。
資料庫內省等功能讓您強烈感受到 Prisma 的功能。透過內省,開發人員可以從現有的資料庫開始,並透過單一命令從中衍生出 Prisma 模型。這為開發人員節省了許多小時,否則他們需要花費這些時間來重新建立模型。相反,他們可以立即投入生產。
Prisma Migrate 提供了另一個強大的功能。借助 Migrate,幾個命令將修改資料庫以與 Prisma 模型的状态對齊。可以沿著 CI/CD 管道觸發 Migrate,以便遷移輕鬆地在生產環境中生效。
由於 Prisma 在任何可以安裝 node 模組的地方都很有用,因此它非常適合 Grover 使用的各種堆疊。
結論
雖然有些團隊仍在觀望,但 Ricardo 預見 Prisma 的採用在不久的將來會增加。
「我非常有興趣看到其他團隊遷移到使用 Prisma,因為我只能看到使用它的好處。」
Prisma 使 Ricardo、他的團隊以及 Grover 的許多其他團隊在處理資料庫時效率更高。
若要進一步了解 Prisma 如何協助您的團隊提高生產力,請加入 Prisma Slack 社群。
不要錯過下一篇文章!
註冊 Prisma 電子報