SlideShare a Scribd company logo
How to survive a
Microservices Migration
André Christ
Co-CEO LeanIX
2
About me
50
Employees
> 120
Customers
2012
Founded
2
Offices
> 100%
Y-o-Y Growth
Software-as-a-Service for Enterprise Architecture
4
5
Our Journey to (Micro)-Services from 2015 - 2017
6
2 Developers 15 Developers
Fixed Data Model Flexible Data Model
MVC API First + SPA
10 Customers 120 Customers
MVP Enterprise Ready
7
What was essential?
How did we build it?
What did we learn?
Establish foundation in knowledge & processes
8
2012 2013 2014 2015 2016 2017
Build MVP & Grow (LAMP) Maintain
1st (Micro-) Services
“Pathfinder”
Migrate
v 3.x
v 4.x
2 2 3 15 20 43
Team
Size
2018
50
Scrum
Create a Mission for the entire company!
9
Self-service staging environment for every version
10
/beta
Version 3 Version 4 - “Pathfinder”
Hypercare Mode: Switch from SCRUM to KANBAN
11
• ”War”-Room
• Every morning:
60 min Session
Dev-Leads &
Migration-Team
• For ~ 6 months:
KANBAN
Celebrate success – it is a tough journey!
12
13
What was essential?
How did we build it?
What did we learn?
14
View
Controller
Model
LeanIX 2012 - 2014 LeanIX 2015 - 2017
Single Page App
REST-
API
REST-
API
REST-
API
REST-
API
REST-
API
REST-
API
Pathfinder MTM Survey Metrics Export Webhooks
REST-
API
Images
We have completed our transition
15
All REST-APIs have Swagger, secured via oAuth2 based on JWT
JWT-Token (jwt.io)
16
/applications /capabilities
GET GET
Display interactive reports very fast Many requests & unnecessary network load
REST-APIs are great – but have performance limits
17
query
{
allBusinessCapabilities {
factSheets {
id
displayName
relToChild {factSheet{id}}
}
}
allApplications {
factSheets {
id
displayName
relToChild {factSheet{id}}
relApplToBusCapability {factSheet{id}}
}
}
}
• JSON-based query language to
request required data
• Graph-based access to data
• Strongly typed API for each
LeanIX workspace (full multi-
tenancy)
Example: One request to build report
Solution: Facebook’s GraphQL – “SQL” for APIs
18
Load-Balancer (default = blue)
Svc A
1.0
Svc B
1.0
Svc C
1.0
DB, Index, Queue DB, Elastic
Green-Blue Deployment to quickly release functionality
Containers with new version are started
19
Load-Balancer (default = blue)
Svc A
1.0
Svc A
1.1
Svc B
1.0
Svc C
1.0
DB, Index, Queue DB, Elastic
Svc B
1.1
Svc C
1.1
20
Load-Balancer (default = BLUE)
Svc A
1.0
Svc A
1.1
Svc B
1.0
Svc C
1.0
DB, Index, Queue DB, Elastic
Test
Svc B
1.1
Svc C
1.1
Special users / Testers can access them in production
21
Load-Balancer (default = GREEN)
Svc A
1.0
Svc A
1.1
Svc B
1.0
Svc C
1.0
DB, Index, Queue DB, Elastic
Svc B
1.1
Svc C
1.1
Load-Balancer switches to new versions
Full-schema rebuild without downtime
22
v42,
in_use
Index
Info A
(global) workspace y
Business
data
workspace x
Business
data
V43,
not_in
_use
Index
Info B
(global)
Schema v43,
rebuilding
(blue)
Schema v42,
active
(green)
Side A Side B
Operations monitoring toolchain
23
InstanceInstanceInstances
GET /healthcheck
Servers
CPU / Mem / Errors
Logfiles
Incidents
Incidents
DISABLED
#status
OCE on duty
status.leanix.net
Escalation
InstanceShared
Services
Servers
CPU / Mem / Errors
Logfiles DISABLED
Incidents
GET /healthcheck Incidents
CS classifies
as EC-1
EC-1
Bugs
Engineering
via Zendesk Tab
support@leanix.net
Incident auto-generated
Incident manual
Engineering
Customer Success
24
What was essential?
How did we build it?
What did we learn?
You are not Netflix – Find your definition
25
# Developers > # of Services
API first
Swagger Docs
One Function Concern
Containerized
No shared DBs Config via Env*
*See The 12-Factor App
Good Application Performance Monitoring (APM) is crucial
26
Establish Team Ownership earlier
27
pfapi
opportunity
postgres kafka elastic arango
pfweb
admin
auth
self-
service mtm webhooks images
ex-
port
integrations poll metrics
postgreskafka influxdbpostgres
elastic
postgres files
synclog
postgres
idp
postfix
rabbitmq
elastic
Tornado
Neuro
resource
Teams white only
transaction
factsheet
postgres
postgres
workspace
user
instance
…
subscription
delivery
event
event
event
…
event factsheet
…
factsheet
metrics
poll result
poll
…
event
workspace
KPIs
…
avatarsTechno-
pedia
syncs
sync items
jobs
configs
Data Object
svc.leanix.net
app.leanix.net
Operations
• etcd
• nginx
• deploy
Flow
todos inventory reporting
Invent
home
inventory
reporting
admin
admin
survey
metrics
integration
n/a
iPhone App
Deployment is the new Monolith!
28
Automate, Automate, Automate
Eat your own dogfood! – Automatic Documentation
29
Source-Code Repository
Source code
Build Info
YAML-Metadata file
Continuous
Integration (CI)
Pivio
Client
Inventory
1
1 Dependencies from build system, e.g. uses Hibernate3, Java8, etc.
2 Automatically triggered, when a new release is created
3 Updates Information in Inventory
2 3
… based on open-source description format Pivio
30
• Developer-friendly
„YAML“ format
• Open-Source Client
and Server: pivio.io
• Extracts Dependencies
from Java & Javascript
Projects
• Easily extensible for
more build-systems
Don’t forget the fun - Carnival is big in Bonn ;-)
31
</>
WE ARE
HIRING!
Thank you!
@christ_andre | www.leanix.net | Booth @ WeAreDevs

More Related Content

PDF
LeanIX Architecture Gathering 2018
PDF
Custom Reports & Integrations with GraphQL
PDF
GraphQL Part 3: LeanIX Reporting Framework
PDF
GraphQL Basics
PDF
LoQutus: Leveraging the full power of 'The Cloud' - beyond lift & shift
PPTX
Automated DevOps for your Digital Transformation Journey!
PDF
The LeanIX Microservices Integration
PDF
System Engineering
LeanIX Architecture Gathering 2018
Custom Reports & Integrations with GraphQL
GraphQL Part 3: LeanIX Reporting Framework
GraphQL Basics
LoQutus: Leveraging the full power of 'The Cloud' - beyond lift & shift
Automated DevOps for your Digital Transformation Journey!
The LeanIX Microservices Integration
System Engineering

What's hot (20)

PDF
Répondre aux défis de la gestion des factures fournisseurs
PDF
SharePoint Development Services
PDF
From EAI to Serverless
PDF
Architecting Design Development Test Request System in Aras
PPTX
CRM Integration Options–Scribe, SmartConnect, Microsoft Connector. What's the...
PPTX
Model-Driven Apps with PowerApps
PPTX
Webinar: Out of the Box Features of an iPaaS - Cloud Integration Platform as ...
PDF
API Trends & Use Cases
PPTX
How to speed up your SAP PI/CPI development
PPTX
Key takeaways for SAP PI Integration 2018
PDF
Connect SAP Business One using Service Layer (HANA)
PPTX
Hvordan få mer ut av qlik
PDF
The Impact of SMACT on the Data Management Stack
PDF
Apama and Terracotta World: Getting Started in Predictive Analytics
PPTX
GraphConnect Europe 2016 - Inside the Spider’s Web: Dependency Management wit...
PPTX
Webinar: Introducing the SnapLogic Elastic Integration Platform Summer 2014 R...
PPTX
Webinar: APPSeCONNECT iPaaS Q3 2020 Release - Major Highlights and Walkthrough
PDF
LeverX - Live Engineering with IoT on SAP Leonardo
PPTX
Migrating FSG Reports To Oracle BI Applications
PPTX
Flow and logic apps a tale of two reactive engines
Répondre aux défis de la gestion des factures fournisseurs
SharePoint Development Services
From EAI to Serverless
Architecting Design Development Test Request System in Aras
CRM Integration Options–Scribe, SmartConnect, Microsoft Connector. What's the...
Model-Driven Apps with PowerApps
Webinar: Out of the Box Features of an iPaaS - Cloud Integration Platform as ...
API Trends & Use Cases
How to speed up your SAP PI/CPI development
Key takeaways for SAP PI Integration 2018
Connect SAP Business One using Service Layer (HANA)
Hvordan få mer ut av qlik
The Impact of SMACT on the Data Management Stack
Apama and Terracotta World: Getting Started in Predictive Analytics
GraphConnect Europe 2016 - Inside the Spider’s Web: Dependency Management wit...
Webinar: Introducing the SnapLogic Elastic Integration Platform Summer 2014 R...
Webinar: APPSeCONNECT iPaaS Q3 2020 Release - Major Highlights and Walkthrough
LeverX - Live Engineering with IoT on SAP Leonardo
Migrating FSG Reports To Oracle BI Applications
Flow and logic apps a tale of two reactive engines
Ad

Similar to LeanIX WeAreDevelopers 2018 (20)

PDF
Gartner 2017 London: How to re-invent your IT Architecture?
PPTX
CipherCloud Microservice Meetup - Managing Services in a Lean Startup
PPTX
Containers and microservices create new performance challenges kowall - app...
PDF
AppSphere 15 - Containers and Microservices Create New Performance Challenges
PPTX
Get complete visibility into containers based application environment
PPTX
Migrate existing web services and build native microservices in bluemix
PPTX
Running microservice environments is no free lunch
PDF
Microservices: Keep Complexity under Control with LeanIX Enterprise Architect...
PPT
Why Managed Service Providers Should Embrace Container Technology
PPTX
Accelerate DevOps/Microservices and Kubernetes
PPTX
Accelerate Delivery: Business case for Agile DevOps, CI/CD and Microservices
PPTX
Webinar : Microservices and Containerization
PPTX
Continuous delivery by sergey seletsky
PPTX
Microservices and IBM Bluemix meetup presentation
PDF
Haufe #msaday - Building a Microservice Ecosystem by Daniel Bryant
PDF
Building a microservice ecosystem
PDF
Haufe #msaday: "Building a Microservice Ecosystem"
PPTX
Microservices and Best Practices
PDF
QConSF2016-JoshEvans-MasteringChaosANetflixGuidetoMicroservices-compressed.pdf
PDF
Microservices: moving parts around
Gartner 2017 London: How to re-invent your IT Architecture?
CipherCloud Microservice Meetup - Managing Services in a Lean Startup
Containers and microservices create new performance challenges kowall - app...
AppSphere 15 - Containers and Microservices Create New Performance Challenges
Get complete visibility into containers based application environment
Migrate existing web services and build native microservices in bluemix
Running microservice environments is no free lunch
Microservices: Keep Complexity under Control with LeanIX Enterprise Architect...
Why Managed Service Providers Should Embrace Container Technology
Accelerate DevOps/Microservices and Kubernetes
Accelerate Delivery: Business case for Agile DevOps, CI/CD and Microservices
Webinar : Microservices and Containerization
Continuous delivery by sergey seletsky
Microservices and IBM Bluemix meetup presentation
Haufe #msaday - Building a Microservice Ecosystem by Daniel Bryant
Building a microservice ecosystem
Haufe #msaday: "Building a Microservice Ecosystem"
Microservices and Best Practices
QConSF2016-JoshEvans-MasteringChaosANetflixGuidetoMicroservices-compressed.pdf
Microservices: moving parts around
Ad

More from LeanIX GmbH (20)

PDF
LeanIX Virtual Workspaces
PDF
How to reduce complexity by segregating your data with Virtual Workspaces
PDF
Gartner EA: The Rise of Data-driven Architectures
PDF
Application Harmonisation using Design Principles in LeanIX
PPT
Effective EAM: whet your appetite & deliver solutions
PPTX
Lean EAM with the Microservices Add-on and the Signavio Integration
PPTX
Next Level Enterprise Architecture
PDF
Integration Architecture with the Data Flow
PPTX
LeanIX-ServiceNow Integration
PPTX
Application Rationalization with LeanIX
PPTX
LeanIX Inventory: Import & Export
PDF
Survey Add-on Showcase: Cloud Transformation
PPTX
Ensure GDPR Compliance with LeanIX
PPTX
LeanIX-Signavio Integration
PPTX
How to set up a Lean Standards Governance
PPTX
Innovative API-Based LeanIX Enhancements
PDF
Moving EA - from where we are to where we should be
PDF
Is next generation EAM more than just agile IT planning?
PPTX
Beyond CIO - Will there still be Architecture Management in 2025
PDF
The Day After Tomorrow
LeanIX Virtual Workspaces
How to reduce complexity by segregating your data with Virtual Workspaces
Gartner EA: The Rise of Data-driven Architectures
Application Harmonisation using Design Principles in LeanIX
Effective EAM: whet your appetite & deliver solutions
Lean EAM with the Microservices Add-on and the Signavio Integration
Next Level Enterprise Architecture
Integration Architecture with the Data Flow
LeanIX-ServiceNow Integration
Application Rationalization with LeanIX
LeanIX Inventory: Import & Export
Survey Add-on Showcase: Cloud Transformation
Ensure GDPR Compliance with LeanIX
LeanIX-Signavio Integration
How to set up a Lean Standards Governance
Innovative API-Based LeanIX Enhancements
Moving EA - from where we are to where we should be
Is next generation EAM more than just agile IT planning?
Beyond CIO - Will there still be Architecture Management in 2025
The Day After Tomorrow

Recently uploaded (20)

PDF
Claude Code: Everyone is a 10x Developer - A Comprehensive AI-Powered CLI Tool
PDF
System and Network Administraation Chapter 3
PDF
Nekopoi APK 2025 free lastest update
PPTX
Agentic AI : A Practical Guide. Undersating, Implementing and Scaling Autono...
PPTX
Odoo POS Development Services by CandidRoot Solutions
PPTX
Lecture 3: Operating Systems Introduction to Computer Hardware Systems
PPTX
Introduction to Artificial Intelligence
PDF
PTS Company Brochure 2025 (1).pdf.......
PPTX
history of c programming in notes for students .pptx
PDF
Why TechBuilder is the Future of Pickup and Delivery App Development (1).pdf
PDF
Raksha Bandhan Grocery Pricing Trends in India 2025.pdf
PDF
Flood Susceptibility Mapping Using Image-Based 2D-CNN Deep Learnin. Overview ...
PPTX
L1 - Introduction to python Backend.pptx
PDF
Softaken Excel to vCard Converter Software.pdf
PDF
Audit Checklist Design Aligning with ISO, IATF, and Industry Standards — Omne...
PDF
Which alternative to Crystal Reports is best for small or large businesses.pdf
PPTX
Agentic AI Use Case- Contract Lifecycle Management (CLM).pptx
PPT
Introduction Database Management System for Course Database
PDF
Odoo Companies in India – Driving Business Transformation.pdf
PDF
AI in Product Development-omnex systems
Claude Code: Everyone is a 10x Developer - A Comprehensive AI-Powered CLI Tool
System and Network Administraation Chapter 3
Nekopoi APK 2025 free lastest update
Agentic AI : A Practical Guide. Undersating, Implementing and Scaling Autono...
Odoo POS Development Services by CandidRoot Solutions
Lecture 3: Operating Systems Introduction to Computer Hardware Systems
Introduction to Artificial Intelligence
PTS Company Brochure 2025 (1).pdf.......
history of c programming in notes for students .pptx
Why TechBuilder is the Future of Pickup and Delivery App Development (1).pdf
Raksha Bandhan Grocery Pricing Trends in India 2025.pdf
Flood Susceptibility Mapping Using Image-Based 2D-CNN Deep Learnin. Overview ...
L1 - Introduction to python Backend.pptx
Softaken Excel to vCard Converter Software.pdf
Audit Checklist Design Aligning with ISO, IATF, and Industry Standards — Omne...
Which alternative to Crystal Reports is best for small or large businesses.pdf
Agentic AI Use Case- Contract Lifecycle Management (CLM).pptx
Introduction Database Management System for Course Database
Odoo Companies in India – Driving Business Transformation.pdf
AI in Product Development-omnex systems

LeanIX WeAreDevelopers 2018

  • 1. How to survive a Microservices Migration André Christ Co-CEO LeanIX
  • 5. 5
  • 6. Our Journey to (Micro)-Services from 2015 - 2017 6 2 Developers 15 Developers Fixed Data Model Flexible Data Model MVC API First + SPA 10 Customers 120 Customers MVP Enterprise Ready
  • 7. 7 What was essential? How did we build it? What did we learn?
  • 8. Establish foundation in knowledge & processes 8 2012 2013 2014 2015 2016 2017 Build MVP & Grow (LAMP) Maintain 1st (Micro-) Services “Pathfinder” Migrate v 3.x v 4.x 2 2 3 15 20 43 Team Size 2018 50 Scrum
  • 9. Create a Mission for the entire company! 9
  • 10. Self-service staging environment for every version 10 /beta Version 3 Version 4 - “Pathfinder”
  • 11. Hypercare Mode: Switch from SCRUM to KANBAN 11 • ”War”-Room • Every morning: 60 min Session Dev-Leads & Migration-Team • For ~ 6 months: KANBAN
  • 12. Celebrate success – it is a tough journey! 12
  • 13. 13 What was essential? How did we build it? What did we learn?
  • 14. 14 View Controller Model LeanIX 2012 - 2014 LeanIX 2015 - 2017 Single Page App REST- API REST- API REST- API REST- API REST- API REST- API Pathfinder MTM Survey Metrics Export Webhooks REST- API Images We have completed our transition
  • 15. 15 All REST-APIs have Swagger, secured via oAuth2 based on JWT JWT-Token (jwt.io)
  • 16. 16 /applications /capabilities GET GET Display interactive reports very fast Many requests & unnecessary network load REST-APIs are great – but have performance limits
  • 17. 17 query { allBusinessCapabilities { factSheets { id displayName relToChild {factSheet{id}} } } allApplications { factSheets { id displayName relToChild {factSheet{id}} relApplToBusCapability {factSheet{id}} } } } • JSON-based query language to request required data • Graph-based access to data • Strongly typed API for each LeanIX workspace (full multi- tenancy) Example: One request to build report Solution: Facebook’s GraphQL – “SQL” for APIs
  • 18. 18 Load-Balancer (default = blue) Svc A 1.0 Svc B 1.0 Svc C 1.0 DB, Index, Queue DB, Elastic Green-Blue Deployment to quickly release functionality
  • 19. Containers with new version are started 19 Load-Balancer (default = blue) Svc A 1.0 Svc A 1.1 Svc B 1.0 Svc C 1.0 DB, Index, Queue DB, Elastic Svc B 1.1 Svc C 1.1
  • 20. 20 Load-Balancer (default = BLUE) Svc A 1.0 Svc A 1.1 Svc B 1.0 Svc C 1.0 DB, Index, Queue DB, Elastic Test Svc B 1.1 Svc C 1.1 Special users / Testers can access them in production
  • 21. 21 Load-Balancer (default = GREEN) Svc A 1.0 Svc A 1.1 Svc B 1.0 Svc C 1.0 DB, Index, Queue DB, Elastic Svc B 1.1 Svc C 1.1 Load-Balancer switches to new versions
  • 22. Full-schema rebuild without downtime 22 v42, in_use Index Info A (global) workspace y Business data workspace x Business data V43, not_in _use Index Info B (global) Schema v43, rebuilding (blue) Schema v42, active (green) Side A Side B
  • 23. Operations monitoring toolchain 23 InstanceInstanceInstances GET /healthcheck Servers CPU / Mem / Errors Logfiles Incidents Incidents DISABLED #status OCE on duty status.leanix.net Escalation InstanceShared Services Servers CPU / Mem / Errors Logfiles DISABLED Incidents GET /healthcheck Incidents CS classifies as EC-1 EC-1 Bugs Engineering via Zendesk Tab support@leanix.net Incident auto-generated Incident manual Engineering Customer Success
  • 24. 24 What was essential? How did we build it? What did we learn?
  • 25. You are not Netflix – Find your definition 25 # Developers > # of Services API first Swagger Docs One Function Concern Containerized No shared DBs Config via Env* *See The 12-Factor App
  • 26. Good Application Performance Monitoring (APM) is crucial 26
  • 27. Establish Team Ownership earlier 27 pfapi opportunity postgres kafka elastic arango pfweb admin auth self- service mtm webhooks images ex- port integrations poll metrics postgreskafka influxdbpostgres elastic postgres files synclog postgres idp postfix rabbitmq elastic Tornado Neuro resource Teams white only transaction factsheet postgres postgres workspace user instance … subscription delivery event event event … event factsheet … factsheet metrics poll result poll … event workspace KPIs … avatarsTechno- pedia syncs sync items jobs configs Data Object svc.leanix.net app.leanix.net Operations • etcd • nginx • deploy Flow todos inventory reporting Invent home inventory reporting admin admin survey metrics integration n/a iPhone App
  • 28. Deployment is the new Monolith! 28 Automate, Automate, Automate
  • 29. Eat your own dogfood! – Automatic Documentation 29 Source-Code Repository Source code Build Info YAML-Metadata file Continuous Integration (CI) Pivio Client Inventory 1 1 Dependencies from build system, e.g. uses Hibernate3, Java8, etc. 2 Automatically triggered, when a new release is created 3 Updates Information in Inventory 2 3
  • 30. … based on open-source description format Pivio 30 • Developer-friendly „YAML“ format • Open-Source Client and Server: pivio.io • Extracts Dependencies from Java & Javascript Projects • Easily extensible for more build-systems
  • 31. Don’t forget the fun - Carnival is big in Bonn ;-) 31 </> WE ARE HIRING!
  • 32. Thank you! @christ_andre | www.leanix.net | Booth @ WeAreDevs