SlideShare a Scribd company logo
Micro Frontend and How
come we work with it.
Ishaan Puniani
Game Framework Developer
About me
 Full Stack Developer at NetEnt
 Previously,
Associate Architect, Blogger,
Mentor, Free Lancer, Motivator, Speaker,
Team Leader
E-mail: Ishaan.Puniani@gmail.com
GitHub:
https://github.com/ishaan-puniani
LinkedIn:
https://www.linkedin.com/in/ishaanpuniani/
Glossary
Full-Stack Dev Team
Frontend Dev Team
Backend Dev Team
How we start web development?
--- In late 90’s
Back to the basic
 A simple Web application and a team responsible for developing this
application
Impact and Benefits
 Best suits for small projects and simple functionalities.
 Encourages face-to-face communication between backend, frontend and
QA.
 Consistent area of focus that accelerate Development speed.
Issues
 Feature scaling and parallel implementation of features is close to
impossible.
 Hard to maintain.
 Scalability, A/B Testing, RCA’s, troubleshooting, Impact Analysis,
Deployments etc.., are the major issues.
--Even few terms did not exists.
Let’s start Divide and Rule….
Team splits based on their interests
 Named as Frontend Team and Backend Team
Frontend Development Team Backend Development Team
Impact and Benefits
 Best suits for medium sized projects and many functionalities.
 Encourages API’s communication related documentation.
 Still a consistent area of focus that accelerate Development speed.
Issues
 Feature scaling and parallel implementation of features is at-least possible
in a scalable manner.
 Still Hard to maintain.
 Scalability, A/B Testing, RCA’s, troubleshooting, Impact Analysis,
Deployments etc.., are still major issues.
Something happed mysteriously….
Backend Team splits based on their focus area
 Named as Frontend Team and Micro Service Teams.
Frontend Development Team Backend- Microservice Team
Impact and Benefits
 Has all the benefits of previous approach like High speed of development,
feature intensive, good documentation, well defined focus area etc..
 Best suits for large sized projects and many functionalities.
 Encourages API’s communication related documentation.
 We start understanding Scalability, A/B Testing, RCA’s, troubleshooting,
Impact Analysis, Deployments etc.., to much extent.
Issues
 Communication is challenging
 Product vision start deviating
 Lot’s and Lot’s of documentation is required.
 With the growing backend features, Frontend is still a monolith and
becomes bottleneck of Time to Market.
It’s a part of plan...
Frontend techniques starts evolving
 Browsers starts getting matured.
 New standards for W3C and Browser API’s
 Frameworks and Patterns for Frontend become super active.
And comes the Micro-Frontend.
Approach 1 ) Teams based on their focused features
 Named as Vertical Teams (A team of full-stack developers of mixed
competences).
Approach 2 ) Teams based on their focused areas
 Named as Micro-Frontend Teams and Micro Service Teams.
Impact and Benefits
 Has all the benefits of previous approach (that fits in) like High speed of
development, feature intensive, good documentation, well defined focus
area etc..
 Best suits for large sized projects and many functionalities.
 Feature scaling and parallel implementation of features is possible to much
extent in a scalable manner.
 We start understanding Scalability, A/B Testing, RCA’s, troubleshooting,
Impact Analysis, Deployments etc.., to much extent.
How come WE achieve this…
A glimpse of Business Goals
 Receive any type of Notification from the Back Office
 Display according to the priority of notification in the new system
 Allow us to be able to set up new type of notifications in the future
 Extendable to handle messages from other sources
Technical Goals
 Separate it from Game and treat them as add-ons.
 Easy to deploy, modify, update without modifying games.
 Flexible and Extendable to handle messages from other sources with
different communication protocols (HTTP REST API, Web Sockets etc..)
 Independent and have clear separation between business logic and view.
Implementation
 We are trying to implement it as Micro Frontend and Micro Service
Approach
 It will have its own Continuous Integration pipeline.
 Each component can be delivered independently.
Implementation
High level design of a small component
Time for Action
Interoperability and language independence
 Motivation
▫ Microservices are independent of technology stack we choose.
 Implementation
▫ We achieved is each component can be developed using technology
stack that suits the business requirements effectively.
▫ TypeScript empower us to have interfaces that are available for
developing standard components and defining base.
Service Router / Locator
 Motivation
▫ Microservices are load-balancer and service locators to resolve the
application behind the end-point based on the conditions.
 Implementation
▫ We achieved this by using script-loaders to load the components and
its dependencies on run-time.
Event Bus / Communication
 Motivation
▫ Microservices generally uses event driven pattern, queues or event bus
for communicating with each other.
 Implementation
▫ We use event based patterns that allows one component to coordinate
with the other component and with the state of application.
Service versioning and Multi-Instance
 Motivation
▫ Microservices generally runs on multiple instances (might be with
different versions for A/B testing).
 Implementation
▫ With script-loader we can easily make conditional script loading and
perform A/B testing and actually multiple instances are not required
directly CDN’s will take care of that.
Other small details
 Logging Modules
▫ In the similar fashion with microservices, logging module can be
implemented separately.
 Fail Resistant
▫ In case of failure only impacted components stop rendering and display
message in a nice way.
 A/B testing support, flexible, extensible and decoupled.
 Evolutionary and extended future support
Other approaches that did not fit
 Micro Frontend By Page
▫ Didn’t fit in as our games are running on a single page.
 iFrames for different components
▫ Makes things too much complicated and very hard in terms of
communication between different iFrames.
 Custom Elements
▫ Since there is not SSI or there is no scope of packaging them in the
game release due to Regulations.
Power comes with responsibilities
 Compromises the runtime performance, load time of the application.
 Runtime Dependencies lead bug reporting's to the later stages.
 Needs a careful look at System Integration Testing.
 CSS collisions and impacts.
 Consistencies might vary and needs to be taken care.
 Multiple versions of vendor libraries used in different components
 Tool chain needs to be revamped.
Questions……
ngStockholm #8 at NetEnt - Micro Frontend Architecture

More Related Content

PPTX
Shift Remote FRONTEND: Micro Frontend Architecture: A Look Into the Future - ...
PDF
FEVR - Micro Frontend
PDF
State of Micro Frontend
PPTX
Micro Front Ends : Divided We Rule by Parth Ghiya - AhmedabadJS
PDF
Micro frontends
PPTX
Introduction To Micro Frontends
PDF
5 Key Steps To Implementing Micro Frontends On Kubernetes
PDF
The Modern Web with Microfrontends
Shift Remote FRONTEND: Micro Frontend Architecture: A Look Into the Future - ...
FEVR - Micro Frontend
State of Micro Frontend
Micro Front Ends : Divided We Rule by Parth Ghiya - AhmedabadJS
Micro frontends
Introduction To Micro Frontends
5 Key Steps To Implementing Micro Frontends On Kubernetes
The Modern Web with Microfrontends

What's hot (20)

PDF
Micro Frontends
PDF
Microservice Approach for Web Development with Micro Frontends
PPTX
Micro frontend architecture_presentation_ssoni
PDF
Micro Frontend Platforms for Kubernetes
PDF
Ivan Jovanovic - Micro Frontends - Codemotion Rome_2019
PPTX
Micro Front Ends for Micro Services using Oracle JET
PDF
Vue3: nuove funzionalità, differenze e come migrare
PPTX
Web application framework
PDF
React with rails a perfect combination to build modern web application
PDF
Sander Mak - Keeping Up With Java - Codemotion Rome 2019
PDF
Introduction to event based microservices
PPTX
Frameworks in java
PPTX
Aeternity Blockchain - Ecosystem & Devtools [2019]
PPTX
10 top web development frameworks (new version 21 11)
PPTX
Feature flag launchdarkly
PDF
Top Web Development Frameworks Comparison: All You Need To Know
PPTX
Top 10 Frameworks Programmers Should Learn in 2020
PDF
Java Framework comparison
PDF
JavaCro'15 - Creating Android Apps that Use Liferay - Igor Bešlić
PDF
JS Framework Comparison - An infographic
Micro Frontends
Microservice Approach for Web Development with Micro Frontends
Micro frontend architecture_presentation_ssoni
Micro Frontend Platforms for Kubernetes
Ivan Jovanovic - Micro Frontends - Codemotion Rome_2019
Micro Front Ends for Micro Services using Oracle JET
Vue3: nuove funzionalità, differenze e come migrare
Web application framework
React with rails a perfect combination to build modern web application
Sander Mak - Keeping Up With Java - Codemotion Rome 2019
Introduction to event based microservices
Frameworks in java
Aeternity Blockchain - Ecosystem & Devtools [2019]
10 top web development frameworks (new version 21 11)
Feature flag launchdarkly
Top Web Development Frameworks Comparison: All You Need To Know
Top 10 Frameworks Programmers Should Learn in 2020
Java Framework comparison
JavaCro'15 - Creating Android Apps that Use Liferay - Igor Bešlić
JS Framework Comparison - An infographic
Ad

Similar to ngStockholm #8 at NetEnt - Micro Frontend Architecture (20)

PDF
Microservices Architecture
PDF
Building Microservices Software practics
PPTX
Integration & Microservices
PPTX
How do we drive tech changes
PDF
System design for Web Application
ODP
micro services architecture (FrosCon2014)
PPTX
Unit No. II Architecture.pptx Cloud Microservices & Application
PPTX
Session
PPTX
Micro Front-End & Microservices - Plansoft
PPTX
Building Next Gen Applications and Microservices
PPTX
Microservices
PDF
Changing application demands: What developers need to know
PPTX
Microservice intro
PDF
An Introduction to Microservices
PPTX
PHP in Enterprise: Modernize Application Development to Bring Projects to …
PPTX
Building applications in a Micro-frontends way
PPTX
Microservices Vienna 2015
PDF
#JaxLondon keynote: Developing applications with a microservice architecture
PDF
Developing Applications with a Micro Service Architecture - Chris Richardson
PPTX
Over view of software artitecture
Microservices Architecture
Building Microservices Software practics
Integration & Microservices
How do we drive tech changes
System design for Web Application
micro services architecture (FrosCon2014)
Unit No. II Architecture.pptx Cloud Microservices & Application
Session
Micro Front-End & Microservices - Plansoft
Building Next Gen Applications and Microservices
Microservices
Changing application demands: What developers need to know
Microservice intro
An Introduction to Microservices
PHP in Enterprise: Modernize Application Development to Bring Projects to …
Building applications in a Micro-frontends way
Microservices Vienna 2015
#JaxLondon keynote: Developing applications with a microservice architecture
Developing Applications with a Micro Service Architecture - Chris Richardson
Over view of software artitecture
Ad

Recently uploaded (20)

PDF
Why TechBuilder is the Future of Pickup and Delivery App Development (1).pdf
PDF
Addressing The Cult of Project Management Tools-Why Disconnected Work is Hold...
PDF
Softaken Excel to vCard Converter Software.pdf
PDF
Claude Code: Everyone is a 10x Developer - A Comprehensive AI-Powered CLI Tool
PPTX
Transform Your Business with a Software ERP System
PDF
Which alternative to Crystal Reports is best for small or large businesses.pdf
PDF
Design an Analysis of Algorithms II-SECS-1021-03
PDF
Internet Downloader Manager (IDM) Crack 6.42 Build 42 Updates Latest 2025
PDF
System and Network Administration Chapter 2
PPTX
Introduction to Artificial Intelligence
PDF
Internet Downloader Manager (IDM) Crack 6.42 Build 41
PDF
Wondershare Filmora 15 Crack With Activation Key [2025
PPTX
ai tools demonstartion for schools and inter college
PDF
Odoo Companies in India – Driving Business Transformation.pdf
PDF
How to Choose the Right IT Partner for Your Business in Malaysia
PPTX
Oracle E-Business Suite: A Comprehensive Guide for Modern Enterprises
PDF
Raksha Bandhan Grocery Pricing Trends in India 2025.pdf
PDF
Audit Checklist Design Aligning with ISO, IATF, and Industry Standards — Omne...
PPTX
ISO 45001 Occupational Health and Safety Management System
PDF
Navsoft: AI-Powered Business Solutions & Custom Software Development
Why TechBuilder is the Future of Pickup and Delivery App Development (1).pdf
Addressing The Cult of Project Management Tools-Why Disconnected Work is Hold...
Softaken Excel to vCard Converter Software.pdf
Claude Code: Everyone is a 10x Developer - A Comprehensive AI-Powered CLI Tool
Transform Your Business with a Software ERP System
Which alternative to Crystal Reports is best for small or large businesses.pdf
Design an Analysis of Algorithms II-SECS-1021-03
Internet Downloader Manager (IDM) Crack 6.42 Build 42 Updates Latest 2025
System and Network Administration Chapter 2
Introduction to Artificial Intelligence
Internet Downloader Manager (IDM) Crack 6.42 Build 41
Wondershare Filmora 15 Crack With Activation Key [2025
ai tools demonstartion for schools and inter college
Odoo Companies in India – Driving Business Transformation.pdf
How to Choose the Right IT Partner for Your Business in Malaysia
Oracle E-Business Suite: A Comprehensive Guide for Modern Enterprises
Raksha Bandhan Grocery Pricing Trends in India 2025.pdf
Audit Checklist Design Aligning with ISO, IATF, and Industry Standards — Omne...
ISO 45001 Occupational Health and Safety Management System
Navsoft: AI-Powered Business Solutions & Custom Software Development

ngStockholm #8 at NetEnt - Micro Frontend Architecture

  • 1. Micro Frontend and How come we work with it. Ishaan Puniani Game Framework Developer
  • 2. About me  Full Stack Developer at NetEnt  Previously, Associate Architect, Blogger, Mentor, Free Lancer, Motivator, Speaker, Team Leader E-mail: Ishaan.Puniani@gmail.com GitHub: https://github.com/ishaan-puniani LinkedIn: https://www.linkedin.com/in/ishaanpuniani/
  • 3. Glossary Full-Stack Dev Team Frontend Dev Team Backend Dev Team
  • 4. How we start web development? --- In late 90’s
  • 5. Back to the basic  A simple Web application and a team responsible for developing this application
  • 6. Impact and Benefits  Best suits for small projects and simple functionalities.  Encourages face-to-face communication between backend, frontend and QA.  Consistent area of focus that accelerate Development speed.
  • 7. Issues  Feature scaling and parallel implementation of features is close to impossible.  Hard to maintain.  Scalability, A/B Testing, RCA’s, troubleshooting, Impact Analysis, Deployments etc.., are the major issues. --Even few terms did not exists.
  • 8. Let’s start Divide and Rule….
  • 9. Team splits based on their interests  Named as Frontend Team and Backend Team Frontend Development Team Backend Development Team
  • 10. Impact and Benefits  Best suits for medium sized projects and many functionalities.  Encourages API’s communication related documentation.  Still a consistent area of focus that accelerate Development speed.
  • 11. Issues  Feature scaling and parallel implementation of features is at-least possible in a scalable manner.  Still Hard to maintain.  Scalability, A/B Testing, RCA’s, troubleshooting, Impact Analysis, Deployments etc.., are still major issues.
  • 13. Backend Team splits based on their focus area  Named as Frontend Team and Micro Service Teams. Frontend Development Team Backend- Microservice Team
  • 14. Impact and Benefits  Has all the benefits of previous approach like High speed of development, feature intensive, good documentation, well defined focus area etc..  Best suits for large sized projects and many functionalities.  Encourages API’s communication related documentation.  We start understanding Scalability, A/B Testing, RCA’s, troubleshooting, Impact Analysis, Deployments etc.., to much extent.
  • 15. Issues  Communication is challenging  Product vision start deviating  Lot’s and Lot’s of documentation is required.  With the growing backend features, Frontend is still a monolith and becomes bottleneck of Time to Market.
  • 16. It’s a part of plan...
  • 17. Frontend techniques starts evolving  Browsers starts getting matured.  New standards for W3C and Browser API’s  Frameworks and Patterns for Frontend become super active.
  • 18. And comes the Micro-Frontend.
  • 19. Approach 1 ) Teams based on their focused features  Named as Vertical Teams (A team of full-stack developers of mixed competences).
  • 20. Approach 2 ) Teams based on their focused areas  Named as Micro-Frontend Teams and Micro Service Teams.
  • 21. Impact and Benefits  Has all the benefits of previous approach (that fits in) like High speed of development, feature intensive, good documentation, well defined focus area etc..  Best suits for large sized projects and many functionalities.  Feature scaling and parallel implementation of features is possible to much extent in a scalable manner.  We start understanding Scalability, A/B Testing, RCA’s, troubleshooting, Impact Analysis, Deployments etc.., to much extent.
  • 22. How come WE achieve this…
  • 23. A glimpse of Business Goals  Receive any type of Notification from the Back Office  Display according to the priority of notification in the new system  Allow us to be able to set up new type of notifications in the future  Extendable to handle messages from other sources
  • 24. Technical Goals  Separate it from Game and treat them as add-ons.  Easy to deploy, modify, update without modifying games.  Flexible and Extendable to handle messages from other sources with different communication protocols (HTTP REST API, Web Sockets etc..)  Independent and have clear separation between business logic and view.
  • 25. Implementation  We are trying to implement it as Micro Frontend and Micro Service Approach  It will have its own Continuous Integration pipeline.  Each component can be delivered independently.
  • 27. High level design of a small component
  • 29. Interoperability and language independence  Motivation ▫ Microservices are independent of technology stack we choose.  Implementation ▫ We achieved is each component can be developed using technology stack that suits the business requirements effectively. ▫ TypeScript empower us to have interfaces that are available for developing standard components and defining base.
  • 30. Service Router / Locator  Motivation ▫ Microservices are load-balancer and service locators to resolve the application behind the end-point based on the conditions.  Implementation ▫ We achieved this by using script-loaders to load the components and its dependencies on run-time.
  • 31. Event Bus / Communication  Motivation ▫ Microservices generally uses event driven pattern, queues or event bus for communicating with each other.  Implementation ▫ We use event based patterns that allows one component to coordinate with the other component and with the state of application.
  • 32. Service versioning and Multi-Instance  Motivation ▫ Microservices generally runs on multiple instances (might be with different versions for A/B testing).  Implementation ▫ With script-loader we can easily make conditional script loading and perform A/B testing and actually multiple instances are not required directly CDN’s will take care of that.
  • 33. Other small details  Logging Modules ▫ In the similar fashion with microservices, logging module can be implemented separately.  Fail Resistant ▫ In case of failure only impacted components stop rendering and display message in a nice way.  A/B testing support, flexible, extensible and decoupled.  Evolutionary and extended future support
  • 34. Other approaches that did not fit  Micro Frontend By Page ▫ Didn’t fit in as our games are running on a single page.  iFrames for different components ▫ Makes things too much complicated and very hard in terms of communication between different iFrames.  Custom Elements ▫ Since there is not SSI or there is no scope of packaging them in the game release due to Regulations.
  • 35. Power comes with responsibilities  Compromises the runtime performance, load time of the application.  Runtime Dependencies lead bug reporting's to the later stages.  Needs a careful look at System Integration Testing.  CSS collisions and impacts.  Consistencies might vary and needs to be taken care.  Multiple versions of vendor libraries used in different components  Tool chain needs to be revamped.

Editor's Notes

  • #8: Hard to bring in talent. Very tight coupling. Time to market is high.
  • #11: Competence grooming is enhanced. Attract talent of a particular focus area (back, frontend).
  • #12: Competence grooming is enhanced. Attract talent of a particular focus area (back, frontend).
  • #13: Lots of big players come forward to improve machinery. Compute become cheap. We start diving further.
  • #15: Feature scaling and parallel implementation of features is possible to much extent in a scalable manner. Maintenance of a product become easier. Encourages API’s communication related documentation. Competence grooming is enhanced.
  • #16: Time to market is increased from a different point of view like w.r.t. people, team size and communication involved
  • #22: Feature scaling and parallel implementation of features is possible to much extent in a scalable manner. Maintenance of a product become easier. Encourages API’s communication related documentation. Competence grooming is enhanced.