Microservices → BFF Decomposition
Confidential · 2023 — 2024
Decomposing a 15-service distributed estate plus three databases on on-prem infrastructure into a Backend-for-Frontend architecture — one BFF per experience, talking to a shared data platform and shared services behind a single identity provider.
- Period
- 2023 — 2024
- Domain
- FinTech / Wealth Management
- Stack
- BFF per experience
- Identity provider
- Shared data platform
- Dynatrace
- Grafana
- Prometheus
A line of business with 15+ microservices, 3+ databases, and a meaningful on-premises footprint had reached the point where every client app — mobile, web, internal admin — had to know about every service. Onboarding a new feature meant touching half a dozen teams.
The brief was to introduce a Backend-for-Frontend layer: one BFF per client experience (mobile, web), each owning its own database and contracts, all talking to a shared data platform and shared common services through a single identity provider. The architectural details and topology are kept private — this is a project-information case study, not an architecture reveal.
— 01 —
BFF per experience, not BFF per consumer.
CostTwo BFFs to maintain instead of one shared aggregator.
WinMobile and web have genuinely different latency, payload, and offline requirements; sharing one BFF would have averaged the worst of both.
— 02 —
Each BFF owns its own database.
CostData flows through the shared data platform and shared services rather than direct DB reads.
WinBFFs can evolve their persistence independently; no team is blocked behind a shared schema.
— 03 —
Single identity provider terminating auth at the edge.
CostAn identity service to operate across the whole estate.
WinEvery BFF and every service trusts the same JWT contract; no per-service auth logic.
— 04 —
Observability standardized on Dynatrace + Grafana + Prometheus.
CostThree tools to run, with overlapping responsibilities.
WinApplication traces in Dynatrace, infrastructure metrics in Prometheus, dashboards and alerting in Grafana — the team has the right tool for each layer of the stack.
- 15+ microservices and 3+ databases consolidated behind a per-experience BFF layer.
- Mobile and web client apps migrated off direct service calls onto their respective BFFs.
- Shared data platform and shared services pattern established across the line of business.
- Observability rolled out across application and infrastructure layers — single-pane-of-glass for on-call.
Software Solution Architect / Tech Lead. Designed the BFF decomposition, the data platform contracts, the identity provider integration pattern, and the observability rollout. Mentored the implementation teams across the BFFs.
Architectural details and topology are kept private out of respect for the client.