Preparing for Growth: Architecting Giant Apps for Scalability and Build Speed
summary
Spotify runs over 300 modules and replaces concrete cross-module imports with a runtime DI engine called the spt service system that reads YAML manifests, validates a service graph as a DAG with topological sort, and lazy loads scoped services. It uses api modules for stable protocol boundaries, static linking to cut launch time, and a navigation service registry for identifier-based, backend-driven UI. Minified demo apps and fake services let single modules build and run quickly and the system scales in production.
AI-written summary · about
chapters (13)
- 0:00Introduction
- 1:56Evolution of app architecture
- 6:49Modularization benefits
- 8:16Challenges of giant apps
- 12:26Horizontal dependencies solution
- 16:45Service system introduction
- 21:17Defining services
- 24:07Service orchestrator setup
- 26:14Lazy service loading
- 28:18Running modules in isolation
- 30:45Dynamic navigation system
- 33:54Backend-driven UI
- 34:36Architecture advice
related talks
38mScaling an application without microfrontends
20mBuilding for Scale: How not to get Caught out at Global Launch
55mArchitectural Patterns for Rapid, Reliable, Frequent and Sustainable Development
49mHypergrowth scaling made simple
39mMinimal Viable Architecture
26mCreating a scalable ecosystem of Microservices
11mStarting Small to Growing Big
15mHow to System Design - Running a startup in a corporate company
