Slide 1

Slide 1 text

MICRO APPLICATIONS INDEPENDENTLY TOGETHER: BETTER DEVELOPER EXPERIENCE & APP PERFORMANCE

Slide 2

Slide 2 text

BILAL CINARLI Sr. Engineering Manager @RapidAPI @bcinarli

Slide 3

Slide 3 text

While developing web applications, we have some common asks!

Slide 4

Slide 4 text

I want to deploy anytime I need!

Slide 5

Slide 5 text

I want to have a faster pipeline

Slide 6

Slide 6 text

I want my application loads faster

Slide 7

Slide 7 text

I want to have a faster local environment

Slide 8

Slide 8 text

MONOREPO HOW WE LIKE TO MANAGE OUR CODE

Slide 9

Slide 9 text

SPA WE LIKE JAVASCRIPT, AND WHO WANTS A FULL PAGE REFRESH?

Slide 10

Slide 10 text

MONOLITH HOW WE USUALLY BUILD AND RUN OUR FRONTEND APPLICATION

Slide 11

Slide 11 text

SPOF MULTIPLE DIFFERENT ASPECTS CAN TAKE THE ENTIRE APP DOWN

Slide 12

Slide 12 text

Multiple teams working on the same app add additional complexity to the tech stack

Slide 13

Slide 13 text

DEPENDENCIES EVERY SINGLE THING BECOMES DEPENDENT ON EACH OTHER

Slide 14

Slide 14 text

Multiple alignments, complex tooling, longer pipelines, slow releases, different roadmaps, lots of blockers…

Slide 15

Slide 15 text

Everything is in the same box

Slide 16

Slide 16 text

Monolith SPA Team A Team B Team D Team C

Slide 17

Slide 17 text

Team D Team C Team B Team A Monolith SPA App A App D App B App C

Slide 18

Slide 18 text

Team D App D Team C App C Team B App B Team A App A Router

Slide 19

Slide 19 text

Team D App D Team C App C Team B App B Team A App A Router CDN for Common Libraries

Slide 20

Slide 20 text

CDN for Common Libraries Team D App D Team C App C Team B App B Team A App A Router

Slide 21

Slide 21 text

CDN for Common Libraries Team D App D Team C App C Team B App B Team A App A Router Cookies Local Storage

Slide 22

Slide 22 text

In development, we do not have magical solutions, we have trade-offs!

Slide 23

Slide 23 text

MICRO APP A SMALL SPA FOR EACH PAGE OR FOR A FLOW

Slide 24

Slide 24 text

MICRO APP FULLY INDEPENDENT APPLICATION

Slide 25

Slide 25 text

MICRO APP CAN BE DEPLOYED AND SCALED INDEPENDENTLY

Slide 26

Slide 26 text

Split by responsibilities or whatever works in your organisation

Slide 27

Slide 27 text

Independent apps have an independent development cycle

Slide 28

Slide 28 text

Independent apps can deploy and scale individually

Slide 29

Slide 29 text

Shared dependencies provide better caching and reduces the downloads

Slide 30

Slide 30 text

Smaller apps load faster

Slide 31

Slide 31 text

Smaller apps have faster local environment

Slide 32

Slide 32 text

Smaller apps need smaller resources to run

Slide 33

Slide 33 text

With a faster pipeline and local, improved developer experience

Slide 34

Slide 34 text

Reduces your carbon footprint

Slide 35

Slide 35 text

MICRO APPLICATIONS BILAL CINARLI THANK YOU @bcinarli