Hello All, Has anyone worked on a product that’s built with a micro-frontends approach? We’re considering making a switch and I’m curious if/how that has impacted the organization of product & design teams.
Can you please explain, What is a micro-frontend? I haven’t heard of it before…
I’m still learning about it quite a bit myself, but the idea is to apply the concept of a micro services backend/database architecture to frontends too so teams truly own vertical stacks. the visuals in this article helped me understand it the most:
We used micro-frontend and we migrated back. What is the main reason you want to use micro-frontend? Faster delivery? Less tech-debt?
There are 2 reason you might want to use micro-frontend:
- you reached Amazon type of scale and you need it to manage complexity
- you are working on use cases that need customization of the last mile or allow customization by the customer
Like APIs it is a cool concept but it does not necessarily work for all organizations or product experiences and you need the engineering talent to drive it.
I think having different different parts of the front-end with self-contained state makes a lot of sense, but I also think you can have decouple front-end apps / widgets without having to completely decouple the build systems and infrastructure. Even at Palantir we had one mega front-end repo
This website seems like it was done by tech purists of some flavor with quotes like this:
I’ve never worked on a project with micro-frontends but I have worked on a couple of projects with Backend For Frontends (BFF). It seems similar to micro-frontends but less siloed. One worked pretty well, the other was a disaster.
@YuriRoman, I have done it, granted that was in the corporate context. I think that team’s general unwillingness to release software (at all) was a bigger inhibitor than the micro-frontend approach.
Reviewing it. I think you need a decent framework to tie it together, I don’t like the roll your own approach. More importantly, ask: “Why does this work well for our team structure?” I am not a mono repo guy, but many an amazing project has been monolithic, and I tend to find the micro approach rarer as a working model, particularly for small organizations.
Also, it requires a ton of discipline. I was in a corporate context where we wrote “Micro Services” that all accessed the same database. This had a predictably tragic result. These terms are fun to throw around, but you have to trust the leadership to be principled