SlideShare una empresa de Scribd logo
1 de 31
Descargar para leer sin conexión
Microservices, Microfrontends and
Feature Teams
Giulio Roggero
expectations
time
discovery learn improve real world new culture
We told our story.
Feedbacks: “This is
not agile. Agile is …
bla bla”
This is my Culture.
Agile or not Agile it
works for us :-)
Agile at Scale, Agile
Buzzwords, the
“TRUE Agile” is ...
Real life is
hard but we
can do it
I understood
the theory.
Really nice!
This is not correct…
you are not Agile…
(again!)
Starting from here we build
our business! Values,
Principles, Culture, Tools
and Individuals are all
ingredients for our success.
Now we are aware!
Now we are satisfied!
Now we are ready to
improve continuously!
I hate Agile!
We are in production!
It was hard but we’ve
learnt a lot!
Restart from Basics.
Values, Principles,
XP, Improvement
Now it’s clear! Agile is
a mindset, my
mindset, our mindset!
Hey guy, I found my
way! I’m happy and it
works (for us)
WOW!
The first
conference
We are going in production. Not all
moments are easy as were during
the project
Thanks to
retrospectives we
are able to
improve!
Balance
Business objectives
● Wow effect features
● Time-to-marker
● Customer satisfaction
● Upselling/Cross selling
● Profitability
Technical objectives
● Reduce Technical Debt
● Simplicity
● Innovation
● Learning
● Team working
● Talent retention
● Happiness
A Modern approach to create IT systems can
favorite this balance
The balance it’s not so easy to reach.
Technical debt and time-to-market are factors that affect this balance.
Which are the key factors to build Modern Applications?
3 pilastri dei sistemi IT moderni
• Pongono i dati al centro: Big Data, Fast Data
• Interconessi: API as a Product
• Hanno capacità di evolvere: stili architetturali (es: Microservices)
Gestite
• Organizzativo: Agile, Lean
• Pperations e Business Continuity: DevOps
How we can mix this
ingredients?
Technology
The Modern Application Ecosystem
Non esiste un’architettura definitiva. Esistono stili, visioni e modi di pensare ed evolvere!
Stimulus
Big Data
Analytics/Machine Learning
Event Based Integration Layer
Service Integration
Layer
Decoupling High Performance Data Store
APIs
Microservices/Miniservices
Microfrontends (App, Web, Bot, Voice)
System of Record Applications and DBs
User Experience (Click, Touch, Speak, Chat, Watch)
Dev Tools
Ops Tools
Analytics Tools
Come organizzarsi per costruire e
gestire questi sistemi?
Breve intro
“Any organization that
designs a system … will
inevitably produce a
design whose structure is
a copy of the
organization's
communication
structure.”
Melvin Conway, 1968
http://www.melconway.com/research/committees.html
“Digital System
modification and
innovation will inevitably
impact on organization's
communication
structure.”
(my proposal)
Team and Culture
Il “noi” e “loro” rallenta le decisioni e aumenta i costi. Riorganizzarsi e allinearsi con le esigenze dei clienti finali
diventa più efficace e riduce costi aumentando la velocità di delivery.
Ispirato dal libro Monolith to Microservices - Sam Newman.
Team Team Team
PMO
Tech Leadership
(CTO, CIO) Customers
Land of
confusion
POs
Communicationwall
Fabbrica Software Business
Feature Team
Customers Customers
Tech Leadership
(CTO, CIO)
Digital Hub
Team PO
Feature Team
Team PO
Support
Feature teams
Un feature team non è creato in modo temporaneo per fare una o più funzionalità e poi si scioglie.
Un feature team è stabile e gestisce tutto il ciclo di vita dell’insieme delle features che sono di sua responsabilità.
Approfondimenti su less.works – CC BY-ND
Component teams
Approfondimenti su less.works – CC BY-ND
Diversamente dai component team è in grado di toccare tutti i componenti e completare uno o più features.
Approfondimenti su less.works – CC BY-ND
Component teams Feature teams
Esempi concreti
Poca teoria e molta pratica
Trenord 2014-2019
Integration Layer
APIs
Services
App, Website, Moovit, Google
External Systems: timetable, pricing model, live data
Trenord in 5 anni ha costruito una piattaforma
digitale in modo incrementale agganciando
man mano nuovi canali e facendo evolvere
l’architettura in base allo scaling degli utenti.
Fast
Data
Trenord – La storia
Anni 2015
API req/sec 10
Team Scrum 4
Stile
architetturale
Microkernel+
Fast Data
Hosting OnPrem
Backend
Languages
Node.js
Mobile
Languages
Node.js+
ObjectiveC+
Java Android
Trenord – La storia
Anni 2015 2016
API req/sec 10 40
Team Scrum 4 4
Stile
architetturale
Microkernel+
Fast Data
Microkernel+
Fast Data
Hosting OnPrem OnPrem
Backend
Languages
Node.js Node.js
Mobile
Languages
Node.js+
ObjectiveC+
Java Android
Node.js+
ObjectiveC+
Java Android
Trenord – La storia
Anni 2015 2016 2017
API req/sec 10 40 300
Team Scrum 4 4 5
Stile
architetturale
Microkernel+
Fast Data
Microkernel+
Fast Data
Microkernel+
Miniservice+
Fast Data
Hosting OnPrem OnPrem OnPrem
Backend
Languages
Node.js Node.js Node.js
Mobile
Languages
Node.js+
ObjectiveC+
Java Android
Node.js+
ObjectiveC+
Java Android
Node.js+
ObjectiveC+
Java Android
Trenord – La storia
Anni 2015 2016 2017 2018
API req/sec 10 40 300 1500
Team Scrum 4 4 5 6
Stile
architetturale
Microkernel+
Fast Data
Microkernel+
Fast Data
Microkernel+
Miniservice+
Fast Data
Microkernel+
Microservices+
Fast Data
Hosting OnPrem OnPrem OnPrem OnPrem
Backend
Languages
Node.js Node.js Node.js Node.js
Mobile
Languages
Node.js+
ObjectiveC+
Java Android
Node.js+
ObjectiveC+
Java Android
Node.js+
ObjectiveC+
Java Android
Node.js+
ObjectiveC+
Swift+
Java Android+
Kotlin Android
Trenord – La storia
Anni 2015 2016 2017 2018 2019
API req/sec 10 40 300 1500 4000
Team Scrum 4 4 5 6 6
Stile
architetturale
Microkernel+
Fast Data
Microkernel+
Fast Data
Microkernel+
Miniservice+
Fast Data
Microkernel+
Microservices+
Fast Data
Miniservices+
Fast Data
Hosting OnPrem OnPrem OnPrem OnPrem Cloud
Backend
Languages
Node.js Node.js Node.js Node.js Node.js+
Kotlin
Mobile
Languages
Node.js+
ObjectiveC+
Java Android
Node.js+
ObjectiveC+
Java Android
Node.js+
ObjectiveC+
Java Android
Node.js+
ObjectiveC+
Swift+
Java Android+
Kotlin Android
Node.js+
ObjectiveC+
Swift+
Java Android+
Kotlin Android
Trenord – Da Microkernel a Microservizi
Integration Layer
API Gateway
Microkernel
Mobile App
External Systems: timetable, pricing model, live data
Fast
Data
M53 Trip Plan
Train
Status
Push
Tickets
Passes
Paymens Favorites Settings News Stations
Integration Layer
API Gateway
Microkernel
Mobile App
External Systems: timetable, pricing model, live data
Fast
Data
M53 Trip Plan
Train
Status
Push
Tickets
Passes
Paymens Favorites Settings News Stations
Microservices
Un
passaggio
graduale con
l’attenzione
di sempre
avere il
fallback
Trip Plan
Trenord – Canary Releases
Integration Layer
External Systems: timetable, pricing model, live data
API Gateway
App v1/v2
100%
Train Status v5.5
Microservices
100%
Fast
Data
Ogni rilascio di nuove features è
effettuato con Canary Releases sia
lato APP che lato Microservices.
Le API sono quasi sempre
retrocompatibili. In 5 anni hanno
avuto una volta sola una breaking
change su una sotto parte
Trenord – Canary Releases
Integration Layer
App v3
External Systems: timetable, pricing model, live data
API Gateway
App v1/v2
5% 95%
Train Status v5.5
Microservices
100%
Fast
Data
Ogni rilascio di nuove features è
effettuato con Canary Releases sia
lato APP che lato Microservices.
Le API sono quasi sempre
retrocompatibili. In 5 anni hanno
avuto una volta sola una breaking
change su una sotto parte
Trenord – Canary Releases
Integration Layer
App v3
External Systems: timetable, pricing model, live data
API Gateway
App v1/v2
5% 95%
Train Status v5.5
Microservices
Train Status v6
20% 80%
Fast
Data
Ogni rilascio di nuove features è
effettuato con Canary Releases sia
lato APP che lato Microservices.
Le API sono quasi sempre
retrocompatibili. In 5 anni hanno
avuto una volta sola una breaking
change su una sotto parte
Trenord – Il team e l’organizzazione
Caratteristiche
● Un team unico Scrum
● Sprint da 1 settimana
● Rilasci continui
● 3 Ambienti: integration, beta, prod
Responsabilità
● Uptime 24/7 di tutto il sistema
end-to-end
● Customer care app
● Analisi analitici e proposta
features
● Coding, Testing, Ops, …
Mia-Platform – Il team e l’organizzazione 2017
API Gateway
Microservices
(Node.js)
Angular
Core Team
Customers
Tech Leadership
(CTO, CIO)
Team PO
Mia-Platform Products
Mia-Platform – Accelerazione (+servizi, +FE capabilities)
Microservices
(Java, Node.js, Kotlin, Python, Go)
React
Core Team
Customers
Tech Leadership
(CTO, CIO)
Team PO
Contributors Team
Team PO
API Gateway
Angular
I contributors team lavorano su progetti cliente e fanno evolvere il prodotto in stile open source
Mia-Platform Products
Mia-Platform – Microfrontends
React
Core Team
Team PO
Node.js Microservices
Java/Kotlin Microservices
Go Microservices
Contributors Team
Team PO
Angular
Contributors Team
Team PO
React
• Un insieme di regole comuni sulla
gestione dei feature branch, merge
request e code design.
• Pipelines automatizzate in diversi
ambieti per conituous Delibery.
• Kata, Mob Programming, Pair
Programming per condividere la
conoscenza.
Librerie comuni per
JavaScript per
integrare diversi
Framework e Librerie
Petr Kratochvil CC0
«Quanto Basta»
Culture is your asset!
Don’t copy and paste from other companies
but build your own!
This is the real competitive advantage for
your business!
Giulio Roggero
CTO and Founder Mia-Platform
Chief Strategist and Partner Intré
Advisor and Founder Agile Reloaded

Más contenido relacionado

La actualidad más candente

apidays LIVE Paris 2021 - Generating OpenAPIs from business models by Frederi...
apidays LIVE Paris 2021 - Generating OpenAPIs from business models by Frederi...apidays LIVE Paris 2021 - Generating OpenAPIs from business models by Frederi...
apidays LIVE Paris 2021 - Generating OpenAPIs from business models by Frederi...apidays
 
Case Study of Financial Web System Development and Operations with Oracle Web...
Case Study of Financial Web System Development and Operations with Oracle Web...Case Study of Financial Web System Development and Operations with Oracle Web...
Case Study of Financial Web System Development and Operations with Oracle Web...Arshal Ameen
 
Beyond API Spray & Pray: Developer Portals in Digital Transformation
Beyond API Spray & Pray: Developer Portals in Digital TransformationBeyond API Spray & Pray: Developer Portals in Digital Transformation
Beyond API Spray & Pray: Developer Portals in Digital TransformationPronovix
 
Accelerate Your Digital Transformation Journey with Cloud Native and Low-Cod...
Accelerate Your Digital Transformation  Journey with Cloud Native and Low-Cod...Accelerate Your Digital Transformation  Journey with Cloud Native and Low-Cod...
Accelerate Your Digital Transformation Journey with Cloud Native and Low-Cod...DevOps.com
 
Cubet Techno Labs Corporate Brochure
Cubet Techno Labs Corporate Brochure Cubet Techno Labs Corporate Brochure
Cubet Techno Labs Corporate Brochure Kiran K.S
 
Case Study: Creating a DocOps/Docs-As-Code DevPortal for C3.ai
Case Study: Creating a DocOps/Docs-As-Code DevPortal for C3.aiCase Study: Creating a DocOps/Docs-As-Code DevPortal for C3.ai
Case Study: Creating a DocOps/Docs-As-Code DevPortal for C3.aiPronovix
 
Support unlimited and ever changing customer experiences with GraphQL by Andr...
Support unlimited and ever changing customer experiences with GraphQL by Andr...Support unlimited and ever changing customer experiences with GraphQL by Andr...
Support unlimited and ever changing customer experiences with GraphQL by Andr...Andrew Kumar
 
Low code - empower the capability to accelerate | Swatantra Kumar
Low code - empower the capability to accelerate | Swatantra KumarLow code - empower the capability to accelerate | Swatantra Kumar
Low code - empower the capability to accelerate | Swatantra KumarSwatantra Kumar
 
apidays LIVE New York 2021 - Docs Driven API Development by Rahul Dighe, Paypal
apidays LIVE New York 2021 - Docs Driven API Development by Rahul Dighe, Paypalapidays LIVE New York 2021 - Docs Driven API Development by Rahul Dighe, Paypal
apidays LIVE New York 2021 - Docs Driven API Development by Rahul Dighe, Paypalapidays
 
Voices of Product: Discovery and Framing
Voices of Product: Discovery and FramingVoices of Product: Discovery and Framing
Voices of Product: Discovery and FramingRoxanne Mustafa
 
The subtle art of building scalable apps using low code
The subtle art of building scalable apps using low codeThe subtle art of building scalable apps using low code
The subtle art of building scalable apps using low codeWaveMaker, Inc.
 
apidays LIVE India - Data Pipelines to Dashboards by Rudranshu Praharaj, Gold...
apidays LIVE India - Data Pipelines to Dashboards by Rudranshu Praharaj, Gold...apidays LIVE India - Data Pipelines to Dashboards by Rudranshu Praharaj, Gold...
apidays LIVE India - Data Pipelines to Dashboards by Rudranshu Praharaj, Gold...apidays
 
Mendix - Cloud PAAS App Platform
Mendix - Cloud PAAS App PlatformMendix - Cloud PAAS App Platform
Mendix - Cloud PAAS App PlatformTarandeep Singh
 
DEVOPS ENGINEER - CAREER PATH, JOB SCOPE, AND CERTIFICATIONS
DEVOPS ENGINEER - CAREER PATH, JOB SCOPE, AND CERTIFICATIONSDEVOPS ENGINEER - CAREER PATH, JOB SCOPE, AND CERTIFICATIONS
DEVOPS ENGINEER - CAREER PATH, JOB SCOPE, AND CERTIFICATIONSSprintzeal
 
cubet_corporate_brochure
cubet_corporate_brochurecubet_corporate_brochure
cubet_corporate_brochureMathews Abraham
 
FutureLink | Strategic Tooling Decisions in ALM Engineering: Migrate or Coexi...
FutureLink | Strategic Tooling Decisions in ALM Engineering: Migrate or Coexi...FutureLink | Strategic Tooling Decisions in ALM Engineering: Migrate or Coexi...
FutureLink | Strategic Tooling Decisions in ALM Engineering: Migrate or Coexi...Intland Software GmbH
 
Intland Software | Welcome and Opening Remarks - Intland Connect - 22 Oct 2020
Intland Software | Welcome and Opening Remarks - Intland Connect - 22 Oct 2020Intland Software | Welcome and Opening Remarks - Intland Connect - 22 Oct 2020
Intland Software | Welcome and Opening Remarks - Intland Connect - 22 Oct 2020Intland Software GmbH
 

La actualidad más candente (19)

apidays LIVE Paris 2021 - Generating OpenAPIs from business models by Frederi...
apidays LIVE Paris 2021 - Generating OpenAPIs from business models by Frederi...apidays LIVE Paris 2021 - Generating OpenAPIs from business models by Frederi...
apidays LIVE Paris 2021 - Generating OpenAPIs from business models by Frederi...
 
Case Study of Financial Web System Development and Operations with Oracle Web...
Case Study of Financial Web System Development and Operations with Oracle Web...Case Study of Financial Web System Development and Operations with Oracle Web...
Case Study of Financial Web System Development and Operations with Oracle Web...
 
Beyond API Spray & Pray: Developer Portals in Digital Transformation
Beyond API Spray & Pray: Developer Portals in Digital TransformationBeyond API Spray & Pray: Developer Portals in Digital Transformation
Beyond API Spray & Pray: Developer Portals in Digital Transformation
 
Accelerate Your Digital Transformation Journey with Cloud Native and Low-Cod...
Accelerate Your Digital Transformation  Journey with Cloud Native and Low-Cod...Accelerate Your Digital Transformation  Journey with Cloud Native and Low-Cod...
Accelerate Your Digital Transformation Journey with Cloud Native and Low-Cod...
 
Cubet Techno Labs Corporate Brochure
Cubet Techno Labs Corporate Brochure Cubet Techno Labs Corporate Brochure
Cubet Techno Labs Corporate Brochure
 
Case Study: Creating a DocOps/Docs-As-Code DevPortal for C3.ai
Case Study: Creating a DocOps/Docs-As-Code DevPortal for C3.aiCase Study: Creating a DocOps/Docs-As-Code DevPortal for C3.ai
Case Study: Creating a DocOps/Docs-As-Code DevPortal for C3.ai
 
Migration to Liferay DXP - Digital Experience Platform | KNOWARTH
 Migration to Liferay DXP - Digital Experience Platform | KNOWARTH Migration to Liferay DXP - Digital Experience Platform | KNOWARTH
Migration to Liferay DXP - Digital Experience Platform | KNOWARTH
 
Support unlimited and ever changing customer experiences with GraphQL by Andr...
Support unlimited and ever changing customer experiences with GraphQL by Andr...Support unlimited and ever changing customer experiences with GraphQL by Andr...
Support unlimited and ever changing customer experiences with GraphQL by Andr...
 
Low code - empower the capability to accelerate | Swatantra Kumar
Low code - empower the capability to accelerate | Swatantra KumarLow code - empower the capability to accelerate | Swatantra Kumar
Low code - empower the capability to accelerate | Swatantra Kumar
 
apidays LIVE New York 2021 - Docs Driven API Development by Rahul Dighe, Paypal
apidays LIVE New York 2021 - Docs Driven API Development by Rahul Dighe, Paypalapidays LIVE New York 2021 - Docs Driven API Development by Rahul Dighe, Paypal
apidays LIVE New York 2021 - Docs Driven API Development by Rahul Dighe, Paypal
 
Voices of Product: Discovery and Framing
Voices of Product: Discovery and FramingVoices of Product: Discovery and Framing
Voices of Product: Discovery and Framing
 
The subtle art of building scalable apps using low code
The subtle art of building scalable apps using low codeThe subtle art of building scalable apps using low code
The subtle art of building scalable apps using low code
 
apidays LIVE India - Data Pipelines to Dashboards by Rudranshu Praharaj, Gold...
apidays LIVE India - Data Pipelines to Dashboards by Rudranshu Praharaj, Gold...apidays LIVE India - Data Pipelines to Dashboards by Rudranshu Praharaj, Gold...
apidays LIVE India - Data Pipelines to Dashboards by Rudranshu Praharaj, Gold...
 
Mendix - Cloud PAAS App Platform
Mendix - Cloud PAAS App PlatformMendix - Cloud PAAS App Platform
Mendix - Cloud PAAS App Platform
 
DEVOPS ENGINEER - CAREER PATH, JOB SCOPE, AND CERTIFICATIONS
DEVOPS ENGINEER - CAREER PATH, JOB SCOPE, AND CERTIFICATIONSDEVOPS ENGINEER - CAREER PATH, JOB SCOPE, AND CERTIFICATIONS
DEVOPS ENGINEER - CAREER PATH, JOB SCOPE, AND CERTIFICATIONS
 
cubet_corporate_brochure
cubet_corporate_brochurecubet_corporate_brochure
cubet_corporate_brochure
 
FutureLink | Strategic Tooling Decisions in ALM Engineering: Migrate or Coexi...
FutureLink | Strategic Tooling Decisions in ALM Engineering: Migrate or Coexi...FutureLink | Strategic Tooling Decisions in ALM Engineering: Migrate or Coexi...
FutureLink | Strategic Tooling Decisions in ALM Engineering: Migrate or Coexi...
 
Intland Software | Welcome and Opening Remarks - Intland Connect - 22 Oct 2020
Intland Software | Welcome and Opening Remarks - Intland Connect - 22 Oct 2020Intland Software | Welcome and Opening Remarks - Intland Connect - 22 Oct 2020
Intland Software | Welcome and Opening Remarks - Intland Connect - 22 Oct 2020
 
SAAS @ Cubet
SAAS @ CubetSAAS @ Cubet
SAAS @ Cubet
 

Similar a Microservices, Microfrontends and Feature Teams

Platform governance, gestire un ecosistema di microservizi a livello enterprise
Platform governance, gestire un ecosistema di microservizi a livello enterprisePlatform governance, gestire un ecosistema di microservizi a livello enterprise
Platform governance, gestire un ecosistema di microservizi a livello enterpriseGiulio Roggero
 
DevOps Days Toronto: From 6 Months Waterfall to 1 hour Code Deploys
DevOps Days Toronto: From 6 Months Waterfall to 1 hour Code DeploysDevOps Days Toronto: From 6 Months Waterfall to 1 hour Code Deploys
DevOps Days Toronto: From 6 Months Waterfall to 1 hour Code DeploysAndreas Grabner
 
Tech foundations-slides
Tech foundations-slidesTech foundations-slides
Tech foundations-slidestranquynh93
 
AWS Community Day: From Monolith to Microservices - What Could Go Wrong?
AWS Community Day: From Monolith to Microservices - What Could Go Wrong?AWS Community Day: From Monolith to Microservices - What Could Go Wrong?
AWS Community Day: From Monolith to Microservices - What Could Go Wrong?Phuong Mai Nguyen
 
Actminds Outsourcing Summit 07
Actminds Outsourcing Summit 07Actminds Outsourcing Summit 07
Actminds Outsourcing Summit 07cnetto
 
DevOpsDays Jakarta Igites
DevOpsDays Jakarta IgitesDevOpsDays Jakarta Igites
DevOpsDays Jakarta IgitesDevOpsDaysJKT
 
Serverless projects at Myplanet
Serverless projects at MyplanetServerless projects at Myplanet
Serverless projects at MyplanetDaniel Zivkovic
 
The Need for Speed
The Need for SpeedThe Need for Speed
The Need for SpeedCapgemini
 
DevOps in the Amazon Warehouse - Shawn Gandhi
DevOps in the Amazon Warehouse - Shawn GandhiDevOps in the Amazon Warehouse - Shawn Gandhi
DevOps in the Amazon Warehouse - Shawn GandhiTriNimbus
 
Microservices the Good Bad and the Ugly
Microservices the Good Bad and the UglyMicroservices the Good Bad and the Ugly
Microservices the Good Bad and the UglyAdrian Cockcroft
 
Innovate Better Through Machine data Analytics
Innovate Better Through Machine data AnalyticsInnovate Better Through Machine data Analytics
Innovate Better Through Machine data AnalyticsHal Rottenberg
 
From Monoliths to Microservices at Realestate.com.au
From Monoliths to Microservices at Realestate.com.auFrom Monoliths to Microservices at Realestate.com.au
From Monoliths to Microservices at Realestate.com.auevanbottcher
 
Maintainable Machine Learning Products
Maintainable Machine Learning ProductsMaintainable Machine Learning Products
Maintainable Machine Learning ProductsAndrew Musselman
 
Lean UX + DevOps
Lean UX + DevOpsLean UX + DevOps
Lean UX + DevOpsSynerzip
 
How do we drive tech changes
How do we drive tech changesHow do we drive tech changes
How do we drive tech changesJaewoo Ahn
 
Von JavaEE auf Microservice in 6 Monaten - The Good, the Bad, and the wtfs...
Von JavaEE auf Microservice in 6 Monaten - The Good, the Bad, and the wtfs...Von JavaEE auf Microservice in 6 Monaten - The Good, the Bad, and the wtfs...
Von JavaEE auf Microservice in 6 Monaten - The Good, the Bad, and the wtfs...André Goliath
 
Data-Driven DevOps: Mining Machine Data for 'Metrics that Matter' in a DevOps...
Data-Driven DevOps: Mining Machine Data for 'Metrics that Matter' in a DevOps...Data-Driven DevOps: Mining Machine Data for 'Metrics that Matter' in a DevOps...
Data-Driven DevOps: Mining Machine Data for 'Metrics that Matter' in a DevOps...Splunk
 
DevOps-driving-blind
DevOps-driving-blindDevOps-driving-blind
DevOps-driving-blindPaul Peissner
 

Similar a Microservices, Microfrontends and Feature Teams (20)

Platform governance, gestire un ecosistema di microservizi a livello enterprise
Platform governance, gestire un ecosistema di microservizi a livello enterprisePlatform governance, gestire un ecosistema di microservizi a livello enterprise
Platform governance, gestire un ecosistema di microservizi a livello enterprise
 
DevOps Days Toronto: From 6 Months Waterfall to 1 hour Code Deploys
DevOps Days Toronto: From 6 Months Waterfall to 1 hour Code DeploysDevOps Days Toronto: From 6 Months Waterfall to 1 hour Code Deploys
DevOps Days Toronto: From 6 Months Waterfall to 1 hour Code Deploys
 
Tech foundations-slides
Tech foundations-slidesTech foundations-slides
Tech foundations-slides
 
AWS Community Day: From Monolith to Microservices - What Could Go Wrong?
AWS Community Day: From Monolith to Microservices - What Could Go Wrong?AWS Community Day: From Monolith to Microservices - What Could Go Wrong?
AWS Community Day: From Monolith to Microservices - What Could Go Wrong?
 
Actminds Outsourcing Summit 07
Actminds Outsourcing Summit 07Actminds Outsourcing Summit 07
Actminds Outsourcing Summit 07
 
DevOpsDays Jakarta Igites
DevOpsDays Jakarta IgitesDevOpsDays Jakarta Igites
DevOpsDays Jakarta Igites
 
Serverless projects at Myplanet
Serverless projects at MyplanetServerless projects at Myplanet
Serverless projects at Myplanet
 
The Need for Speed
The Need for SpeedThe Need for Speed
The Need for Speed
 
DevOps in the Amazon Warehouse - Shawn Gandhi
DevOps in the Amazon Warehouse - Shawn GandhiDevOps in the Amazon Warehouse - Shawn Gandhi
DevOps in the Amazon Warehouse - Shawn Gandhi
 
Microservices the Good Bad and the Ugly
Microservices the Good Bad and the UglyMicroservices the Good Bad and the Ugly
Microservices the Good Bad and the Ugly
 
qs_presentation_v_1_0
qs_presentation_v_1_0qs_presentation_v_1_0
qs_presentation_v_1_0
 
Innovate Better Through Machine data Analytics
Innovate Better Through Machine data AnalyticsInnovate Better Through Machine data Analytics
Innovate Better Through Machine data Analytics
 
From Monoliths to Microservices at Realestate.com.au
From Monoliths to Microservices at Realestate.com.auFrom Monoliths to Microservices at Realestate.com.au
From Monoliths to Microservices at Realestate.com.au
 
Engineering at Slido
Engineering at SlidoEngineering at Slido
Engineering at Slido
 
Maintainable Machine Learning Products
Maintainable Machine Learning ProductsMaintainable Machine Learning Products
Maintainable Machine Learning Products
 
Lean UX + DevOps
Lean UX + DevOpsLean UX + DevOps
Lean UX + DevOps
 
How do we drive tech changes
How do we drive tech changesHow do we drive tech changes
How do we drive tech changes
 
Von JavaEE auf Microservice in 6 Monaten - The Good, the Bad, and the wtfs...
Von JavaEE auf Microservice in 6 Monaten - The Good, the Bad, and the wtfs...Von JavaEE auf Microservice in 6 Monaten - The Good, the Bad, and the wtfs...
Von JavaEE auf Microservice in 6 Monaten - The Good, the Bad, and the wtfs...
 
Data-Driven DevOps: Mining Machine Data for 'Metrics that Matter' in a DevOps...
Data-Driven DevOps: Mining Machine Data for 'Metrics that Matter' in a DevOps...Data-Driven DevOps: Mining Machine Data for 'Metrics that Matter' in a DevOps...
Data-Driven DevOps: Mining Machine Data for 'Metrics that Matter' in a DevOps...
 
DevOps-driving-blind
DevOps-driving-blindDevOps-driving-blind
DevOps-driving-blind
 

Más de Giulio Roggero

Platform Engineering - a 360 degree view
Platform Engineering - a 360 degree viewPlatform Engineering - a 360 degree view
Platform Engineering - a 360 degree viewGiulio Roggero
 
Kubernetes and CNCF Landscape 101
Kubernetes and CNCF Landscape 101Kubernetes and CNCF Landscape 101
Kubernetes and CNCF Landscape 101Giulio Roggero
 
Modernize Legacy Systems with Kubernetes
Modernize Legacy Systems with KubernetesModernize Legacy Systems with Kubernetes
Modernize Legacy Systems with KubernetesGiulio Roggero
 
Stili architetturali in Kubernetes
Stili architetturali in KubernetesStili architetturali in Kubernetes
Stili architetturali in KubernetesGiulio Roggero
 
Do pair programming with an artificial intelligence
Do pair programming with an artificial intelligenceDo pair programming with an artificial intelligence
Do pair programming with an artificial intelligenceGiulio Roggero
 
Come i Microservizi favoriscono il lavoro dei Feature Teams
Come i Microservizi favoriscono il lavoro dei Feature TeamsCome i Microservizi favoriscono il lavoro dei Feature Teams
Come i Microservizi favoriscono il lavoro dei Feature TeamsGiulio Roggero
 
Invisible infrastructures
Invisible infrastructuresInvisible infrastructures
Invisible infrastructuresGiulio Roggero
 
Stop Meeting, Start Coding!
Stop Meeting, Start Coding!Stop Meeting, Start Coding!
Stop Meeting, Start Coding!Giulio Roggero
 
Eliminare gli Spaghetti API
Eliminare gli Spaghetti APIEliminare gli Spaghetti API
Eliminare gli Spaghetti APIGiulio Roggero
 
Da spaghetti API a Piattaforma Digitale
Da spaghetti API a Piattaforma DigitaleDa spaghetti API a Piattaforma Digitale
Da spaghetti API a Piattaforma DigitaleGiulio Roggero
 
API Conf 2017 - Allineare il business e la tecnologia grazie alle api
API Conf 2017 - Allineare il business e la tecnologia grazie alle apiAPI Conf 2017 - Allineare il business e la tecnologia grazie alle api
API Conf 2017 - Allineare il business e la tecnologia grazie alle apiGiulio Roggero
 
Progettare l’intangibile - Progettando 2017
Progettare l’intangibile - Progettando 2017Progettare l’intangibile - Progettando 2017
Progettare l’intangibile - Progettando 2017Giulio Roggero
 
Trust me, I'm a developer
Trust me, I'm a developerTrust me, I'm a developer
Trust me, I'm a developerGiulio Roggero
 
Agilità interculturale
Agilità interculturaleAgilità interculturale
Agilità interculturaleGiulio Roggero
 
Favorire i feature teams con architetture microservices
Favorire i feature teams con architetture microservicesFavorire i feature teams con architetture microservices
Favorire i feature teams con architetture microservicesGiulio Roggero
 
Agile Fixed Price - XP Days 2015
Agile Fixed Price - XP Days 2015Agile Fixed Price - XP Days 2015
Agile Fixed Price - XP Days 2015Giulio Roggero
 
Le aspettative delle trasformazioni agili
Le aspettative delle trasformazioni agiliLe aspettative delle trasformazioni agili
Le aspettative delle trasformazioni agiliGiulio Roggero
 

Más de Giulio Roggero (20)

Platform Engineering - a 360 degree view
Platform Engineering - a 360 degree viewPlatform Engineering - a 360 degree view
Platform Engineering - a 360 degree view
 
Kubernetes and CNCF Landscape 101
Kubernetes and CNCF Landscape 101Kubernetes and CNCF Landscape 101
Kubernetes and CNCF Landscape 101
 
Modernize Legacy Systems with Kubernetes
Modernize Legacy Systems with KubernetesModernize Legacy Systems with Kubernetes
Modernize Legacy Systems with Kubernetes
 
Stili architetturali in Kubernetes
Stili architetturali in KubernetesStili architetturali in Kubernetes
Stili architetturali in Kubernetes
 
Do pair programming with an artificial intelligence
Do pair programming with an artificial intelligenceDo pair programming with an artificial intelligence
Do pair programming with an artificial intelligence
 
Come i Microservizi favoriscono il lavoro dei Feature Teams
Come i Microservizi favoriscono il lavoro dei Feature TeamsCome i Microservizi favoriscono il lavoro dei Feature Teams
Come i Microservizi favoriscono il lavoro dei Feature Teams
 
Agile Journey
Agile JourneyAgile Journey
Agile Journey
 
Invisible infrastructures
Invisible infrastructuresInvisible infrastructures
Invisible infrastructures
 
Stop Meeting, Start Coding!
Stop Meeting, Start Coding!Stop Meeting, Start Coding!
Stop Meeting, Start Coding!
 
Eliminare gli Spaghetti API
Eliminare gli Spaghetti APIEliminare gli Spaghetti API
Eliminare gli Spaghetti API
 
Innovare nel B2C
Innovare nel B2CInnovare nel B2C
Innovare nel B2C
 
Da spaghetti API a Piattaforma Digitale
Da spaghetti API a Piattaforma DigitaleDa spaghetti API a Piattaforma Digitale
Da spaghetti API a Piattaforma Digitale
 
Kanban board!
Kanban board!Kanban board!
Kanban board!
 
API Conf 2017 - Allineare il business e la tecnologia grazie alle api
API Conf 2017 - Allineare il business e la tecnologia grazie alle apiAPI Conf 2017 - Allineare il business e la tecnologia grazie alle api
API Conf 2017 - Allineare il business e la tecnologia grazie alle api
 
Progettare l’intangibile - Progettando 2017
Progettare l’intangibile - Progettando 2017Progettare l’intangibile - Progettando 2017
Progettare l’intangibile - Progettando 2017
 
Trust me, I'm a developer
Trust me, I'm a developerTrust me, I'm a developer
Trust me, I'm a developer
 
Agilità interculturale
Agilità interculturaleAgilità interculturale
Agilità interculturale
 
Favorire i feature teams con architetture microservices
Favorire i feature teams con architetture microservicesFavorire i feature teams con architetture microservices
Favorire i feature teams con architetture microservices
 
Agile Fixed Price - XP Days 2015
Agile Fixed Price - XP Days 2015Agile Fixed Price - XP Days 2015
Agile Fixed Price - XP Days 2015
 
Le aspettative delle trasformazioni agili
Le aspettative delle trasformazioni agiliLe aspettative delle trasformazioni agili
Le aspettative delle trasformazioni agili
 

Último

Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...gurkirankumar98700
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 

Último (20)

Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 

Microservices, Microfrontends and Feature Teams

  • 2. expectations time discovery learn improve real world new culture We told our story. Feedbacks: “This is not agile. Agile is … bla bla” This is my Culture. Agile or not Agile it works for us :-) Agile at Scale, Agile Buzzwords, the “TRUE Agile” is ... Real life is hard but we can do it I understood the theory. Really nice! This is not correct… you are not Agile… (again!) Starting from here we build our business! Values, Principles, Culture, Tools and Individuals are all ingredients for our success. Now we are aware! Now we are satisfied! Now we are ready to improve continuously! I hate Agile! We are in production! It was hard but we’ve learnt a lot! Restart from Basics. Values, Principles, XP, Improvement Now it’s clear! Agile is a mindset, my mindset, our mindset! Hey guy, I found my way! I’m happy and it works (for us) WOW! The first conference We are going in production. Not all moments are easy as were during the project Thanks to retrospectives we are able to improve!
  • 3. Balance Business objectives ● Wow effect features ● Time-to-marker ● Customer satisfaction ● Upselling/Cross selling ● Profitability Technical objectives ● Reduce Technical Debt ● Simplicity ● Innovation ● Learning ● Team working ● Talent retention ● Happiness
  • 4. A Modern approach to create IT systems can favorite this balance The balance it’s not so easy to reach. Technical debt and time-to-market are factors that affect this balance. Which are the key factors to build Modern Applications?
  • 5. 3 pilastri dei sistemi IT moderni • Pongono i dati al centro: Big Data, Fast Data • Interconessi: API as a Product • Hanno capacità di evolvere: stili architetturali (es: Microservices) Gestite • Organizzativo: Agile, Lean • Pperations e Business Continuity: DevOps
  • 6. How we can mix this ingredients?
  • 7. Technology The Modern Application Ecosystem Non esiste un’architettura definitiva. Esistono stili, visioni e modi di pensare ed evolvere! Stimulus Big Data Analytics/Machine Learning Event Based Integration Layer Service Integration Layer Decoupling High Performance Data Store APIs Microservices/Miniservices Microfrontends (App, Web, Bot, Voice) System of Record Applications and DBs User Experience (Click, Touch, Speak, Chat, Watch) Dev Tools Ops Tools Analytics Tools
  • 8. Come organizzarsi per costruire e gestire questi sistemi? Breve intro
  • 9. “Any organization that designs a system … will inevitably produce a design whose structure is a copy of the organization's communication structure.” Melvin Conway, 1968 http://www.melconway.com/research/committees.html
  • 10. “Digital System modification and innovation will inevitably impact on organization's communication structure.” (my proposal)
  • 11. Team and Culture Il “noi” e “loro” rallenta le decisioni e aumenta i costi. Riorganizzarsi e allinearsi con le esigenze dei clienti finali diventa più efficace e riduce costi aumentando la velocità di delivery. Ispirato dal libro Monolith to Microservices - Sam Newman. Team Team Team PMO Tech Leadership (CTO, CIO) Customers Land of confusion POs Communicationwall Fabbrica Software Business Feature Team Customers Customers Tech Leadership (CTO, CIO) Digital Hub Team PO Feature Team Team PO Support
  • 12. Feature teams Un feature team non è creato in modo temporaneo per fare una o più funzionalità e poi si scioglie. Un feature team è stabile e gestisce tutto il ciclo di vita dell’insieme delle features che sono di sua responsabilità. Approfondimenti su less.works – CC BY-ND
  • 13. Component teams Approfondimenti su less.works – CC BY-ND
  • 14. Diversamente dai component team è in grado di toccare tutti i componenti e completare uno o più features. Approfondimenti su less.works – CC BY-ND Component teams Feature teams
  • 15. Esempi concreti Poca teoria e molta pratica
  • 16. Trenord 2014-2019 Integration Layer APIs Services App, Website, Moovit, Google External Systems: timetable, pricing model, live data Trenord in 5 anni ha costruito una piattaforma digitale in modo incrementale agganciando man mano nuovi canali e facendo evolvere l’architettura in base allo scaling degli utenti. Fast Data
  • 17. Trenord – La storia Anni 2015 API req/sec 10 Team Scrum 4 Stile architetturale Microkernel+ Fast Data Hosting OnPrem Backend Languages Node.js Mobile Languages Node.js+ ObjectiveC+ Java Android
  • 18. Trenord – La storia Anni 2015 2016 API req/sec 10 40 Team Scrum 4 4 Stile architetturale Microkernel+ Fast Data Microkernel+ Fast Data Hosting OnPrem OnPrem Backend Languages Node.js Node.js Mobile Languages Node.js+ ObjectiveC+ Java Android Node.js+ ObjectiveC+ Java Android
  • 19. Trenord – La storia Anni 2015 2016 2017 API req/sec 10 40 300 Team Scrum 4 4 5 Stile architetturale Microkernel+ Fast Data Microkernel+ Fast Data Microkernel+ Miniservice+ Fast Data Hosting OnPrem OnPrem OnPrem Backend Languages Node.js Node.js Node.js Mobile Languages Node.js+ ObjectiveC+ Java Android Node.js+ ObjectiveC+ Java Android Node.js+ ObjectiveC+ Java Android
  • 20. Trenord – La storia Anni 2015 2016 2017 2018 API req/sec 10 40 300 1500 Team Scrum 4 4 5 6 Stile architetturale Microkernel+ Fast Data Microkernel+ Fast Data Microkernel+ Miniservice+ Fast Data Microkernel+ Microservices+ Fast Data Hosting OnPrem OnPrem OnPrem OnPrem Backend Languages Node.js Node.js Node.js Node.js Mobile Languages Node.js+ ObjectiveC+ Java Android Node.js+ ObjectiveC+ Java Android Node.js+ ObjectiveC+ Java Android Node.js+ ObjectiveC+ Swift+ Java Android+ Kotlin Android
  • 21. Trenord – La storia Anni 2015 2016 2017 2018 2019 API req/sec 10 40 300 1500 4000 Team Scrum 4 4 5 6 6 Stile architetturale Microkernel+ Fast Data Microkernel+ Fast Data Microkernel+ Miniservice+ Fast Data Microkernel+ Microservices+ Fast Data Miniservices+ Fast Data Hosting OnPrem OnPrem OnPrem OnPrem Cloud Backend Languages Node.js Node.js Node.js Node.js Node.js+ Kotlin Mobile Languages Node.js+ ObjectiveC+ Java Android Node.js+ ObjectiveC+ Java Android Node.js+ ObjectiveC+ Java Android Node.js+ ObjectiveC+ Swift+ Java Android+ Kotlin Android Node.js+ ObjectiveC+ Swift+ Java Android+ Kotlin Android
  • 22. Trenord – Da Microkernel a Microservizi Integration Layer API Gateway Microkernel Mobile App External Systems: timetable, pricing model, live data Fast Data M53 Trip Plan Train Status Push Tickets Passes Paymens Favorites Settings News Stations Integration Layer API Gateway Microkernel Mobile App External Systems: timetable, pricing model, live data Fast Data M53 Trip Plan Train Status Push Tickets Passes Paymens Favorites Settings News Stations Microservices Un passaggio graduale con l’attenzione di sempre avere il fallback Trip Plan
  • 23. Trenord – Canary Releases Integration Layer External Systems: timetable, pricing model, live data API Gateway App v1/v2 100% Train Status v5.5 Microservices 100% Fast Data Ogni rilascio di nuove features è effettuato con Canary Releases sia lato APP che lato Microservices. Le API sono quasi sempre retrocompatibili. In 5 anni hanno avuto una volta sola una breaking change su una sotto parte
  • 24. Trenord – Canary Releases Integration Layer App v3 External Systems: timetable, pricing model, live data API Gateway App v1/v2 5% 95% Train Status v5.5 Microservices 100% Fast Data Ogni rilascio di nuove features è effettuato con Canary Releases sia lato APP che lato Microservices. Le API sono quasi sempre retrocompatibili. In 5 anni hanno avuto una volta sola una breaking change su una sotto parte
  • 25. Trenord – Canary Releases Integration Layer App v3 External Systems: timetable, pricing model, live data API Gateway App v1/v2 5% 95% Train Status v5.5 Microservices Train Status v6 20% 80% Fast Data Ogni rilascio di nuove features è effettuato con Canary Releases sia lato APP che lato Microservices. Le API sono quasi sempre retrocompatibili. In 5 anni hanno avuto una volta sola una breaking change su una sotto parte
  • 26. Trenord – Il team e l’organizzazione Caratteristiche ● Un team unico Scrum ● Sprint da 1 settimana ● Rilasci continui ● 3 Ambienti: integration, beta, prod Responsabilità ● Uptime 24/7 di tutto il sistema end-to-end ● Customer care app ● Analisi analitici e proposta features ● Coding, Testing, Ops, …
  • 27. Mia-Platform – Il team e l’organizzazione 2017 API Gateway Microservices (Node.js) Angular Core Team Customers Tech Leadership (CTO, CIO) Team PO Mia-Platform Products
  • 28. Mia-Platform – Accelerazione (+servizi, +FE capabilities) Microservices (Java, Node.js, Kotlin, Python, Go) React Core Team Customers Tech Leadership (CTO, CIO) Team PO Contributors Team Team PO API Gateway Angular I contributors team lavorano su progetti cliente e fanno evolvere il prodotto in stile open source Mia-Platform Products
  • 29. Mia-Platform – Microfrontends React Core Team Team PO Node.js Microservices Java/Kotlin Microservices Go Microservices Contributors Team Team PO Angular Contributors Team Team PO React • Un insieme di regole comuni sulla gestione dei feature branch, merge request e code design. • Pipelines automatizzate in diversi ambieti per conituous Delibery. • Kata, Mob Programming, Pair Programming per condividere la conoscenza. Librerie comuni per JavaScript per integrare diversi Framework e Librerie
  • 31. Culture is your asset! Don’t copy and paste from other companies but build your own! This is the real competitive advantage for your business! Giulio Roggero CTO and Founder Mia-Platform Chief Strategist and Partner Intré Advisor and Founder Agile Reloaded