Micro-Frontends in the trenches

How to build real-time applications using micro-frontends with Peter Eijgermans


Listen Later

In this episode of Micro-Frontends in the Trenches, Luca Mezzalira sits down with Peter Eijgermans to unpack a five-year journey building Spoorviewer, the real-time dashboard powering operations at the Dutch Railways (NS / ProRail).

Peter walks through how four teams modernized a slowing Angular monolith into a dashboard-style shell hosting five remote applications, loaded dynamically at runtime via Module Federation. You'll hear what worked, what didn't, and why the first attempt with Web Components (Custom Elements) failed to deliver on performance.

CHAPTERS

00:00 Cold open: shipping without fear

01:26 Welcome and introductions

03:02 Meet Peter: full-stack, real-time data, and OIDC

05:16 Spoorviewer: a dashboard, not a page-based app

07:22 The five remote apps: Spoorzicht, Plan, Baanvak, Track Occupancy, Maintenance

10:34 Why micro-frontends? The organizational and technical breaking point

12:47 The performance trap of Custom Elements

14:54 Switching to Module Federation: Lighthouse 30 → 75

16:50 Domain-Driven Design and identifying overlapping boundaries

20:11 Recap: shell, lazy loading, DDD, and team independence

23:30 WebSockets aligned to bounded contexts

26:46 How developers felt about the move to micro-frontends

28:11 Guardrails: framework alignment, versioning, shared libraries

31:14 From client-side OIDC to a Backend-for-Frontend "Lego brick"

34:27 Drawbacks and lessons learned along the way

36:41 Architecture surfaces friction, it doesn't create it

39:17 AI on the horizon: predicting train delays

40:39 AI in the developer workflow

42:31 Closing reflections: start with good design

43:21 Wrap-up and outro

...more
View all episodesView all episodes
Download on the App Store

Micro-Frontends in the trenchesBy Luca Mezzalira