SlideShare a Scribd company logo
"Platform Engineering in practice — Why and How to start", Serg Hospodarets
DevOps and Web contributor:
contributed to Terraform, ECMAScript/JS and Chrome
My path Platforms Creator
Title Managed team size
Tech Lead, Architect ~10
Engineering Manager ~20
Director of Engineering 50+
SDirE, Global Head of Eng. 100+
What problem do we try to solve
and Why Platform Engineering?
🏦Business problem
- Finance (CFO): Cost effective software development
cycle!
- Product (CPO): We want to decrease time to market
- Security (CIO): We want to be able to introduce and
change security checks and deliver fast security fixes
and updates across the products
- CPeopleO, leaders: Provide more common tech stack
to simplify the hiring, and more up-to-date to improve
eNPS
- Architects: We want to enforce a common
architecture (golden path)
- Engineering: We want to quickly create apps and be
able to run them, but concentrate on features
- Operations: We want to run apps as blackboxes, and
not care what is inside
- COO: We want to acquire a company, are we able to
integrate acquired company tech?
- Board: You have 1 year to do all this, otherwise we
sell the company 😳
Organization Problem
💰Finance (CFO) Cost
Product (CPO) ⏰Time to market
🔐Security (CIO) - security checks
- fast security fixes
Leaders, CPeopleO - more common and
modern tech stack
COO 📊Be ready for M&A
Board, CEO Fast results and future
projection
🏛Architects Common architecture
Eng. and Operations Less cognitive load
Problems we encountered
COMPLEXITY GREW EXPONENTIALLY 👉
Cognitive load
and complexity
👈Each team used different tooling,
providers...
DevOps is a good start, but...
Problem: How do we apply DevOps?
Organization structure
Problem: How do we apply Team
Topologies?
So why we
adopted
Platform
Engineering?
1. Way to apply DevOps principles in
practice in large orgs.
2. Helps to enable Team Topologies
How to create Platform Engineering org?
(details and demo)
1. Tooling Demo: Engineering Portal
First step- simple static docs:
-
Next step:
For scale:
-
- Docusaurus- create simple versioned doc sites
Slate- simple static docs for API
- Backstage- open-source Internal Development Portal
Roadie- paid Backstage SaaS
Platform stage at this point:
Childhood
Typical team structure
Development
Platform
overview
2. Tooling Demo: Front-End
- Frontend workshop for UI development (React, Vue, Angular, JS)
- - Provide own app templates
- - own app configs
- Storybook
Create React apps self-service
Customize app config
3. Tooling Demo: Configurable Microservices/Apps self-service
Create a microservice [optionally, with microfrontend]
- (CLI)
- (Web-based)
Other:
- in Jhipster
- in Backstage
-
-
https://www.jhipster.tech/creating-an-app/
https://start.jhipster.tech/generate-application
Provide own application templates
Create own app templates
Integrate you CI/CD
Define DB, Testing tooling, Monitoring etc.
Platform stage at this point:
Adolescence
Typical team structure
Development
Platform
overview
A curated list of tools
and resources for
Platform Engineering.
https://github.com/shospodarets/
awesome-platform-engineering
4. Tooling: Upgradability
Use for automated rollout of new features and versions across Platform customers
Front-End: /
Microservices, apps and infra:
Dependencies:
-
Codeshift Codemods
JHipster Upgrading application
Renovate- multi-platform and multi-language.
Platform stage at this point:
Maturity
Typical team structure
Development
Platform
overview
"Platform Engineering in practice — Why and How to start", Serg Hospodarets
What was achieved
- 50+ platform-based applications delivered to customers
- 100+ platform-based microservices
- 20+ platform-based microfrontends
- time for app MVP to production decrease 2.3 times (p95)
- MTTR decreased from 9 to 4 hours
- Availability improved from 95% to 99.999% (up to ~5
min/year down)
- eNPS score improved for +12
Tips from experience
- Pilot team(s) is super important to become evangelists
- Treat Platform as a product:
1. Internal teams are your customers: provide support, Slack
etc. channels
2. Invest in Platform PM and DevX culture
3. Evangelise- regular releases, demos, newsletters
- For UI adoption put heads together with the UX, infra-
DevOps, security- SecOps
- Cooperate with Architects/Directors/VP/CTO across the org
- Jackpot Platform strategy- find a way and deliver your
platform to your company customers
Inspirational 🗣
- Prefer golden path over golden cage
- Target the right level of abstraction
- Establish the proper "X-as-Service" or
similar definitions for each team
- Foster the Pull vs Push culture
- Work with leadership for a top-down
support for bottom-up enablement
Outcomes for
🏦business problems
Problem Outcome
⏰Time to market Allowed to switch from 3 months product releases to weekly.
Lead time went from 9 days to 6 hours
🔐security checks
- fast security fixes
Common Platform security guardrails (shared CI/CD)
Supply chain fixes delivered in ~3 hours to prod across portfolio
- better tech stack Common and latest tech. stack used across 82 percentile of projects
Be ready for M&A An acquired company fully migrated their stack in 4 months
Future projection Marketing and Sales provided full support as only customers got
access to Platform
Less cognitive load Time to onboarding decreased 2.3 times
💰Cost Onboarding, common features rollout, Upgradability cost save
THANK YOU!
Platform Engineering tooling:
⭐
https://github.com/shospodarets/awesome-
platform-engineering
https://www.linkedin.com/in/shospodarets
Serg Hospodarets

More Related Content

"Platform Engineering in practice — Why and How to start", Serg Hospodarets

  • 2. DevOps and Web contributor: contributed to Terraform, ECMAScript/JS and Chrome My path Platforms Creator Title Managed team size Tech Lead, Architect ~10 Engineering Manager ~20 Director of Engineering 50+ SDirE, Global Head of Eng. 100+
  • 3. What problem do we try to solve and Why Platform Engineering?
  • 4. 🏦Business problem - Finance (CFO): Cost effective software development cycle! - Product (CPO): We want to decrease time to market - Security (CIO): We want to be able to introduce and change security checks and deliver fast security fixes and updates across the products - CPeopleO, leaders: Provide more common tech stack to simplify the hiring, and more up-to-date to improve eNPS - Architects: We want to enforce a common architecture (golden path) - Engineering: We want to quickly create apps and be able to run them, but concentrate on features - Operations: We want to run apps as blackboxes, and not care what is inside - COO: We want to acquire a company, are we able to integrate acquired company tech? - Board: You have 1 year to do all this, otherwise we sell the company 😳 Organization Problem 💰Finance (CFO) Cost Product (CPO) ⏰Time to market 🔐Security (CIO) - security checks - fast security fixes Leaders, CPeopleO - more common and modern tech stack COO 📊Be ready for M&A Board, CEO Fast results and future projection 🏛Architects Common architecture Eng. and Operations Less cognitive load
  • 5. Problems we encountered COMPLEXITY GREW EXPONENTIALLY 👉 Cognitive load and complexity 👈Each team used different tooling, providers...
  • 6. DevOps is a good start, but... Problem: How do we apply DevOps?
  • 7. Organization structure Problem: How do we apply Team Topologies?
  • 8. So why we adopted Platform Engineering? 1. Way to apply DevOps principles in practice in large orgs. 2. Helps to enable Team Topologies
  • 9. How to create Platform Engineering org? (details and demo)
  • 10. 1. Tooling Demo: Engineering Portal First step- simple static docs: - Next step: For scale: - - Docusaurus- create simple versioned doc sites Slate- simple static docs for API - Backstage- open-source Internal Development Portal Roadie- paid Backstage SaaS
  • 11. Platform stage at this point: Childhood Typical team structure Development Platform overview
  • 12. 2. Tooling Demo: Front-End - Frontend workshop for UI development (React, Vue, Angular, JS) - - Provide own app templates - - own app configs - Storybook Create React apps self-service Customize app config
  • 13. 3. Tooling Demo: Configurable Microservices/Apps self-service Create a microservice [optionally, with microfrontend] - (CLI) - (Web-based) Other: - in Jhipster - in Backstage - - https://www.jhipster.tech/creating-an-app/ https://start.jhipster.tech/generate-application Provide own application templates Create own app templates Integrate you CI/CD Define DB, Testing tooling, Monitoring etc.
  • 14. Platform stage at this point: Adolescence Typical team structure Development Platform overview
  • 15. A curated list of tools and resources for Platform Engineering. https://github.com/shospodarets/ awesome-platform-engineering
  • 16. 4. Tooling: Upgradability Use for automated rollout of new features and versions across Platform customers Front-End: / Microservices, apps and infra: Dependencies: - Codeshift Codemods JHipster Upgrading application Renovate- multi-platform and multi-language.
  • 17. Platform stage at this point: Maturity Typical team structure Development Platform overview
  • 19. What was achieved - 50+ platform-based applications delivered to customers - 100+ platform-based microservices - 20+ platform-based microfrontends - time for app MVP to production decrease 2.3 times (p95) - MTTR decreased from 9 to 4 hours - Availability improved from 95% to 99.999% (up to ~5 min/year down) - eNPS score improved for +12
  • 20. Tips from experience - Pilot team(s) is super important to become evangelists - Treat Platform as a product: 1. Internal teams are your customers: provide support, Slack etc. channels 2. Invest in Platform PM and DevX culture 3. Evangelise- regular releases, demos, newsletters - For UI adoption put heads together with the UX, infra- DevOps, security- SecOps - Cooperate with Architects/Directors/VP/CTO across the org - Jackpot Platform strategy- find a way and deliver your platform to your company customers Inspirational 🗣 - Prefer golden path over golden cage - Target the right level of abstraction - Establish the proper "X-as-Service" or similar definitions for each team - Foster the Pull vs Push culture - Work with leadership for a top-down support for bottom-up enablement
  • 21. Outcomes for 🏦business problems Problem Outcome ⏰Time to market Allowed to switch from 3 months product releases to weekly. Lead time went from 9 days to 6 hours 🔐security checks - fast security fixes Common Platform security guardrails (shared CI/CD) Supply chain fixes delivered in ~3 hours to prod across portfolio - better tech stack Common and latest tech. stack used across 82 percentile of projects Be ready for M&A An acquired company fully migrated their stack in 4 months Future projection Marketing and Sales provided full support as only customers got access to Platform Less cognitive load Time to onboarding decreased 2.3 times 💰Cost Onboarding, common features rollout, Upgradability cost save
  • 22. THANK YOU! Platform Engineering tooling: ⭐ https://github.com/shospodarets/awesome- platform-engineering https://www.linkedin.com/in/shospodarets Serg Hospodarets