Micro Frontends: A Senior Frontend Engineer's Perspective

R

ROHIT KUMAR

Guest

Table of Contents​

  • Introduction to Micro Frontends
  • What Are Micro Frontends?
  • Why Micro Frontends?
  • Implementation Strategies
  • Industry Examples
  • My Personal Experience with Micro Frontends
  • Best Practices for Senior Engineers
  • Common Pitfalls and How to Avoid Them
  • When to Avoid Micro Frontends
  • Conclusion

Introduction to Micro Frontends​


Over the past decade, frontend engineering has transformed from jQuery-driven pages to monolithic SPAs, and now toward modular architectures like micro frontends.

As someone who has led frontend initiatives at both startups and large-scale travel-tech platforms (Vio.com, Atlas), I’ve seen the scaling pains of large monolithic apps. When teams grow and codebases reach hundreds of thousands of lines, maintaining velocity and consistency becomes a battle. Micro frontends bring the microservices philosophy to the UI layerβ€”empowering independent teams to ship features faster without stepping on each other’s toes.

But they’re not a silver bullet. Micro frontends solve very real problems at scale, but they also introduce complexity in orchestration, governance, and performance. This article covers what they are, why they matter, how they’re implemented, and what I’ve learned as a senior engineer applying them in real-world projects.

What Are Micro Frontends?​


A micro frontend is a self-contained application that owns a feature or business domain (like Checkout, Search, or Profile). Multiple micro frontends compose into a single product that feels seamless to the user.

Key Characteristics​

  • Independent Development – Teams can use their framework of choice (React, Vue, Angular, Svelte).
  • Independent Deployment – Ship updates to one feature without redeploying the entire app.
  • Autonomous Ownership – Cross-functional teams own everything from backend APIs to the UI slice.
  • Composable Integration – Micro frontends combine at runtime (client/server) or build time.
πŸ’‘ Think of micro frontends like LEGO bricksβ€”each independently built but fitting into a cohesive structure.

Why Micro Frontends?​


From my own experience managing white-label hotel search platforms (100k+ SEM pages) and modular booking flows, the benefits and challenges are clear.

Benefits​

  • Team Autonomy – Our checkout team could ship a new payment provider without waiting for the hotel search team.
  • Tech Agnosticism – In one project, we used React for core flows and vanilla JS for lightweight landing pagesβ€”each deployed independently.
  • Scalability – At Vio.com, where multiple teams iterated on the same product, micro frontends kept velocity high even as the engineering org grew.
  • Maintainability – Smaller codebases with clear ownership reduced onboarding time for new engineers.

Challenges​

  • Orchestration Complexity – Ensuring consistent theming across 5+ brands required building a robust design system (Atlas) and token-based theming.
  • Performance – Duplicate React runtimes and shared dependency issues needed to be solved with Webpack Module Federation and CDN optimizations.
  • Consistency – Without strong governance, UX could fragment quickly across different brand sites.
  • Cultural Shift – Moving from a monolith to distributed ownership required retraining developers and enforcing CI/CD discipline.

Implementation Strategies​


There are three main approaches to composing micro frontends:

1. Server-Side Composition​


The server stitches together fragments before sending the page.

  • Pros: Better SEO, fast initial render.
  • Cons: Server dependency adds latency.

Example: IKEA uses this for catalog/checkout integration.

2. Client-Side Composition​


The browser loads and integrates micro frontends (via iframes, Web Components, Module Federation).

  • Pros: True independence for teams, no backend coupling.
  • Cons: Can increase JS payload and runtime costs.

Example: Spotify’s web playerβ€”playlists, search, profile, all independently owned.

3. Build-Time Composition​


All micro frontends are bundled at build, producing one deployable artifact.

  • Pros: Simpler, fewer runtime issues.
  • Cons: Loses independent deployability, becomes closer to a monolith.

Diagram: Comparing Composition Approaches​


Composition comparison

Industry Examples​

  • Spotify – Client-side composition, unified by the Encore design system.
  • IKEA – Server-side composition for SEO-heavy catalog/checkout flows.
  • Zalando – Pioneered micro frontends in e-commerce with strict DDD-aligned boundaries.

My Personal Experience with Micro Frontends​


I’ve worked on large-scale travel applications where micro frontends were essential:


  • White-Label Automation at Vio.com –

    We had to launch branded hotel booking sites (like demo.vio.com, kiwi.vio.com) in days, not months.
    • Used Webpack Module Federation to integrate cart, search, and checkout flows.
    • Automated domain setup (Route53 + ACM certificates + CloudFront) via Terraform.
    • Result: Reduced white-label launch time from 30 days β†’ 3 days.

  • Atlas Startup –


    I built the entire mobile app (Flutter) as a monolith, but scaling would have been easier with micro frontends. Lessons from that shaped my later workβ€”especially around separating creator and traveler roles into distinct modules.


  • Atlas Design System –


    We built a token-driven design system shared across multiple micro frontends. This reduced UI inconsistencies by 40% and enabled brand theming at scale.

These experiences taught me that micro frontends succeed only when paired with tooling + governance + culture.

Best Practices for Senior Engineers​

  1. Shared Design System – Centralize components with Storybook/Bit.
  2. Domain-Driven Boundaries – Align frontend boundaries with business domains.
  3. Performance Discipline – Lazy load, share dependencies, use CDNs.
  4. Clear Communication Channels – Event bus or shared state (Redux/Zustand).

Code:
   eventBus.emit('cartUpdated', { itemCount: 3 });
   eventBus.on('cartUpdated', d => console.log('Cart updated:', d));
  1. CI/CD Automation – Use GitHub Actions/Terraform for reproducible deploys.
  2. Migration Strategy – Start smallβ€”extract one feature (e.g., user profile) before scaling.

Common Pitfalls and How to Avoid Them​

  • Over-Fragmentation – Don’t break into 50 micro frontends; keep it domain-aligned.
  • Ignoring Performance – Use Lighthouse/Web Vitals monitoring from day one.
  • Lack of Governance – Form a frontend guild to enforce standards.
  • Team Misalignment – Educate teams on ownership; avoid "throw it over the wall" mindset.

When to Avoid Micro Frontends​


Don’t use them if:

  • Team size <5 developers.
  • App is short-lived or simple.
  • Infrastructure investment (CI/CD, domain orchestration, design system) isn’t possible.

Conclusion​


Micro frontends unlock scalability and autonomy for large teamsβ€”but they’re not free. They demand investment in design systems, CI/CD pipelines, and governance.

From my experience in scaling SEM pages, automating white-label brands, and leading design system adoption, the ROI was clear: faster launches, consistent UX, and teams that shipped independently without waiting in line.

πŸ’‘ If you’re considering micro frontends: start small, measure impact, and invest in governance early. The payoff compounds as your team and product grow.

Continue reading...
 


Join 𝕋𝕄𝕋 on Telegram
Channel PREVIEW:
Back
Top