Ep. 4: Micro Frontends Architecture in Practice Pt. 1 w/ Rakesh Menon & Gautam Chadha

Posted on Leave a comment

This is the first part of a two-part series. To be continued in Ep. 5.

This episode is hosted by AnuRock. Today we are joined by Rakesh and Gautam to talk about micro frontends.

Rakesh Menon is a Senior Experience Technology Architect and a polyglot developer who specializes in JavaScript. He works with different teams to implement and enforce engineering best practices and modern standards. He’s perhaps best known for consulting on GraphQL and Micro frontends.

Gautam Chadha is a hands-on Senior Experience Technology Architect, specialized in building high-performance web applications. He has architected enterprise applications for Financial, Retail and Hospitality clients. He has also worked in multiple implementations of micro-frontends and microservices in Node.js and demand driven design using GraphQL.

Topics:

  • What is a micro frontend?
  • Micro frontends vs. library of components
  • Independent deployability and testability
  • Different approaches to stitch together micro frontends to create a unified application: client-side composition, server-side composition, edge-side includes
  • Routing
  • Communication patterns
  • State management
  • How to compose a page with a couple of components from Frontend A, one from Frontend B, another couple from Frontend C, and so on
  • Microservices as an inspiration model
  • Core/Platform vs. Domain teams
  • Backend for frontend (BFF) strategy

Quick Snip:

Real-world case study of micro frontends including challenges (by Sudhir Madaan)

Transition music courtesy https://mixkit.co

Declarative Programming

Posted on Leave a comment

One of my latest obsessions is GraphQL. While reading a tutorial, I found out that GraphQL follows declarative programming paradigm. The video tutorial gave examples to differentiate imperative paradigm that REST technologies use from declarative paradigm that GraphQL uses to make our lives easy. It was not the first time I’d come across these two terms, just that in all previous instances I didn’t care enough to investigate them in detail. When I, however, did dig deeper I was pleasantly surprised.

This stackoverflow thread does a good job in explaining the contrast. So, what some people see as convenience features of C# (when comparing with Java) is actually its declarative style of programming. As a developer obsessed with convention over configuration, it was not hard to fall for this style.