SlideShare une entreprise Scribd logo
1  sur  33
Télécharger pour lire hors ligne
Kubernetes Community Days x OpenInfra Days Indonesia 2022
Managing Infrastructure as a
Product: Introduction to Platform
Engineering
Adityo Pratomo
Product Manager, GoTo Financial
Kubernetes Community Days x OpenInfra Days Indonesia 2022
Hi, I’m Didit
Currently managing Gopay.sh, our
homebrew internal developer tool
Used by 450+ engineers on a daily basis
Speed up our migration and
deployment effort
Accelerate fixing compliance and
governance issues
Build from the ground up by and
utilizing various open source projects
Today, we’ll talk about
internal platform
📖 adityop.medium.com
⏱ Short history on how
we get here
🦸 Giving developers
super power
🏗 Managing
infrastructure as product
Kubernetes Community Days x OpenInfra Days Indonesia 2022
Short history, how we get here?
Kubernetes Community Days x OpenInfra Days Indonesia 2022
Some years ago…
��🏻💻
App
developer
��🏽
Network
engineer
��
Kubernetes Community Days x OpenInfra Days Indonesia 2022
Some years ago…
��🏻💻
App
developer
��🏽
Network
engineer
��
“It’s the network fault” “It’s the application issue”
Kubernetes Community Days x OpenInfra Days Indonesia 2022
Some years ago…
��🏻💻
App
developer
��🏽
Network
engineer
��
”Ah, so that’s where the problem is!”
Kubernetes Community Days x OpenInfra Days Indonesia 2022
Microservice is here
Embraced by enterprises and
startups to improve the
organization’s agility
Architectural decision that
represents organizational domain
and governance
Provides teams ability to move
independently and tackle each
domain’s issue
Kubernetes Community Days x OpenInfra Days Indonesia 2022
DevOps as the enabler
For teams to truly achieve
independence, they have to be
able to fully own the end-to-end
process of building and operating
services
“You build it, you own it”
Kubernetes Community Days x OpenInfra Days Indonesia 2022
However…
Building AND operating service are 2
vastly different domain and problems
Both requires different set of skills,
stemming from different background
with different practices as well
It become a tall order if we want
developers to be able to operate their
own services
Remedied through manual process ✅
Kubernetes Community Days x OpenInfra Days Indonesia 2022
The problem
- Not scalable
- Repetitive
- Back to square one
��🏻💻
App
developer
��
DevOps
engineer
��
Kubernetes Community Days x OpenInfra Days Indonesia 2022
The problem
I build it, but do I own it?
Kubernetes Community Days x OpenInfra Days Indonesia 2022
The solution
Codify the practice to operate the
services, so developers can do it on
their own
Provide manual intervention only for
edge cases
Exposes abstractions over the
underlying infrastructure to make it
more developer friendly
We call this platform
Kubernetes Community Days x OpenInfra Days Indonesia 2022
Giving developers super powers
Kubernetes Community Days x OpenInfra Days Indonesia 2022
Ensuring platform gives values
Platform is a wide domain and
building it would be very contextual
for every organization,
A uniform goal: improving developer
productivity
To ensure it’ll be successful, let’s step
back and see developers’ workflow.
Kubernetes Community Days x OpenInfra Days Indonesia 2022
Modelling developer activity
1. Discover: gathering information
required to start writing code
2. Build: translating requirements into
code
3. Test: testing the recently written code to
ensure that it fits the requirement
4. Integrate: build and deploy the code, to
make it integrated with the wider
system
5. Verify: testing the recently integrated
code, to ensure the functionality
correctness
Kubernetes Community Days x OpenInfra Days Indonesia 2022
Improving developer activity
The key value of a developer is realized in
write and test steps, these are the main
productive time
Improving developer productivity can be
started by reducing the time spent by
developers to do discover, integrate, and
verify steps
That’s where our platform can play
fundamental part.
Kubernetes Community Days x OpenInfra Days Indonesia 2022
As an example
let’s tackle point 4.
help developer in speed up the process of
deploying the code to our underlying
- freeing developers from writing brittle
YAML file?
- verification that the process works?
- feedback so they can act accordingly?
- utilize a graphical UI to give additional
information?
Kubernetes Community Days x OpenInfra Days Indonesia 2022
We know the problem, but
solution can go either way
Whichever solution we choose, it could work,
but now, you can imagine the subsequent
complexity
Now we’re exploring the solution space, but
even after we make our choice, we need to
validate the solution
This is where product thinking can help
Kubernetes Community Days x OpenInfra Days Indonesia 2022
Managing infrastructure as
product
Kubernetes Community Days x OpenInfra Days Indonesia 2022
Platform is a product
we shifted platform from a one and done foundational
layer to malleable product that we can iteratively craft
it becomes imperative for us, as the builder to think of:
● what are the business outcome that we want to
address?
● what are the pain points that the developers are
experiencing?
● how big is the problem?
● can we validate that what we provide the desired
solution?
● what to prioritize next?
Infrastructure
Platform
Kubernetes Community Days x OpenInfra Days Indonesia 2022
Product thinking
Product thinking helps us see things in 3 different
lenses:
- Business (viability)
- Technical (feasibility)
- User (desirability)
You can say that product management is the bridge
that connects these 3 islands
Kubernetes Community Days x OpenInfra Days Indonesia 2022
Feasibility
The underlying layer itself is already taking shape in
form of higher level abstraction (e.g. Kubernetes, Istio)
over lower level building block (e.g. OS).
Exposing bare Kubernetes or Istio to developer, isn’t the
correct strategy since each has its own complexity
Utilize their APIs to create more valuable abstraction and
automation that empowers developers to operate their
services.
Kubernetes Community Days x OpenInfra Days Indonesia 2022
Desirability
Aimed towards experts
Feature wise, the product will go deep and focused
towards specific domains
highly contextual to how the company is organized and
governed
✅ Identify the current workflow -> map it -> systemize it
via platform -> gradually optimize it
✅ provide better UX on each iteration
Kubernetes Community Days x OpenInfra Days Indonesia 2022
Example
As a developer, I want to be able to deploy my
services to our Kubernetes cluster without
having to write YAML configuration from
scratch, so I can confidently complete it
myself
Solution through GitOps and Kubernetes
friendly CD provider. Deployment is 1 trigger
away, platform provides the pipeline template
March sprint
Kubernetes Community Days x OpenInfra Days Indonesia 2022
Example
As a developer, I want to be able to deploy my
services to our Kubernetes cluster without
having to write YAML configuration from
scratch, so I can confidently complete it
myself
Solution through GitOps and Kubernetes
friendly CD provider. Deployment is 1 trigger
away, platform provides the pipeline template
❗developers still feel that sometime, they
have to do context switching between
platform and CD provider to ensure
successful deployment
March sprint
Kubernetes Community Days x OpenInfra Days Indonesia 2022
Example
As a developer, I want to be able to deploy my
services to our Kubernetes cluster without
having to write YAML configuration from
scratch, so I can confidently complete it
myself
Solution through GitOps and Kubernetes
friendly CD provider. Deployment is 1 trigger
away, platform provides the pipeline template
❗developers still feel that sometime, they
have to do context switching between
platform and CD provider to ensure
successful deployment
As a developer, I want to be able to check my
deployment status straight from the platform,
so I can verify without having to do any
context switching
March sprint
May sprint
Kubernetes Community Days x OpenInfra Days Indonesia 2022
Viability
Business outcomes will also move over time, even if it’s
not that often
Example of desired outcomes:
- Reducing infrastructure cost by 10% at the end of
2022
- New joiners can deploy to production within the
first week of joining
- 100% services adhere to the regulatory compliance
Kubernetes Community Days x OpenInfra Days Indonesia 2022
Eventually, the
platform evolves
The platform
should evolve
guided by the
lenses.
It’s a living
product
Kubernetes Community Days x OpenInfra Days Indonesia 2022
So we need to
create direction
Product vision: to improve developer
efficiency inside organization
Goal: reduce time to
complete deployment
Goal: reduce number of
issues related to
deprecated libraries
Goal: reduce average
time to resolve incidents
Kubernetes Community Days x OpenInfra Days Indonesia 2022
In the end
��🏻💻
App developers use
it to operate services
��🏽
DevOps engineers provide both
infra and its abstractions
��
��
��
��
Kubernetes Community Days x OpenInfra Days Indonesia 2022
To summarize
Platform enables DevOps culture
Platform needs to be crafted to solve specific developer pain points first,
before tackling another
Platform will evolve and we need to manage it as a product
Kubernetes Community Days x OpenInfra Days Indonesia 2022
Thank You
Let’s Connect
@kotakmakan
adityop.medium.com

Contenu connexe

Tendances

Team Topologies - how and why to design your teams - AllDayDevOps 2017
Team Topologies - how and why to design your teams - AllDayDevOps 2017Team Topologies - how and why to design your teams - AllDayDevOps 2017
Team Topologies - how and why to design your teams - AllDayDevOps 2017Matthew Skelton
 
Team Topologies at Parts Unlimited, The Unicorn Project Book Club, Jan 2020
Team Topologies at Parts Unlimited, The Unicorn Project Book Club, Jan 2020Team Topologies at Parts Unlimited, The Unicorn Project Book Club, Jan 2020
Team Topologies at Parts Unlimited, The Unicorn Project Book Club, Jan 2020Manuel Pais
 
Six Signs You Need Platform Engineering
Six Signs You Need Platform EngineeringSix Signs You Need Platform Engineering
Six Signs You Need Platform EngineeringWeaveworks
 
How to Build a Platform Team
How to Build a Platform TeamHow to Build a Platform Team
How to Build a Platform TeamVMware Tanzu
 
Platform Engineering - a 360 degree view
Platform Engineering - a 360 degree viewPlatform Engineering - a 360 degree view
Platform Engineering - a 360 degree viewGiulio Roggero
 
Designing a complete ci cd pipeline using argo events, workflow and cd products
Designing a complete ci cd pipeline using argo events, workflow and cd productsDesigning a complete ci cd pipeline using argo events, workflow and cd products
Designing a complete ci cd pipeline using argo events, workflow and cd productsJulian Mazzitelli
 
DevOps 101 - an Introduction to DevOps
DevOps 101  - an Introduction to DevOpsDevOps 101  - an Introduction to DevOps
DevOps 101 - an Introduction to DevOpsRed Gate Software
 
Continues Integration and Continuous Delivery with Azure DevOps - Deploy Anyt...
Continues Integration and Continuous Delivery with Azure DevOps - Deploy Anyt...Continues Integration and Continuous Delivery with Azure DevOps - Deploy Anyt...
Continues Integration and Continuous Delivery with Azure DevOps - Deploy Anyt...Janusz Nowak
 
Efficient platform engineering with Microk8s & gopaddle.pdf
Efficient platform engineering  with  Microk8s & gopaddle.pdfEfficient platform engineering  with  Microk8s & gopaddle.pdf
Efficient platform engineering with Microk8s & gopaddle.pdfVinothini Raju
 
What is Platform as a Product? Clues from Team Topologies @ DevOps Porto meet...
What is Platform as a Product? Clues from Team Topologies @ DevOps Porto meet...What is Platform as a Product? Clues from Team Topologies @ DevOps Porto meet...
What is Platform as a Product? Clues from Team Topologies @ DevOps Porto meet...Manuel Pais
 
Domain Driven Design - Strategic Patterns and Microservices
Domain Driven Design - Strategic Patterns and MicroservicesDomain Driven Design - Strategic Patterns and Microservices
Domain Driven Design - Strategic Patterns and MicroservicesRadosław Maziarka
 
stupid-simple-kubernetes-final.pdf
stupid-simple-kubernetes-final.pdfstupid-simple-kubernetes-final.pdf
stupid-simple-kubernetes-final.pdfDaniloQueirozMota
 
Deploy 22 microservices from scratch in 30 mins with GitOps
Deploy 22 microservices from scratch in 30 mins with GitOpsDeploy 22 microservices from scratch in 30 mins with GitOps
Deploy 22 microservices from scratch in 30 mins with GitOpsOpsta
 
The journey to GitOps
The journey to GitOpsThe journey to GitOps
The journey to GitOpsNicola Baldi
 
Devops Devops Devops
Devops Devops DevopsDevops Devops Devops
Devops Devops DevopsKris Buytaert
 
Hands-On Introduction to Kubernetes at LISA17
Hands-On Introduction to Kubernetes at LISA17Hands-On Introduction to Kubernetes at LISA17
Hands-On Introduction to Kubernetes at LISA17Ryan Jarvinen
 

Tendances (20)

Team Topologies - how and why to design your teams - AllDayDevOps 2017
Team Topologies - how and why to design your teams - AllDayDevOps 2017Team Topologies - how and why to design your teams - AllDayDevOps 2017
Team Topologies - how and why to design your teams - AllDayDevOps 2017
 
Team Topologies at Parts Unlimited, The Unicorn Project Book Club, Jan 2020
Team Topologies at Parts Unlimited, The Unicorn Project Book Club, Jan 2020Team Topologies at Parts Unlimited, The Unicorn Project Book Club, Jan 2020
Team Topologies at Parts Unlimited, The Unicorn Project Book Club, Jan 2020
 
Six Signs You Need Platform Engineering
Six Signs You Need Platform EngineeringSix Signs You Need Platform Engineering
Six Signs You Need Platform Engineering
 
How to Build a Platform Team
How to Build a Platform TeamHow to Build a Platform Team
How to Build a Platform Team
 
Platform Engineering - a 360 degree view
Platform Engineering - a 360 degree viewPlatform Engineering - a 360 degree view
Platform Engineering - a 360 degree view
 
DevOps - A Gentle Introduction
DevOps - A Gentle IntroductionDevOps - A Gentle Introduction
DevOps - A Gentle Introduction
 
Designing a complete ci cd pipeline using argo events, workflow and cd products
Designing a complete ci cd pipeline using argo events, workflow and cd productsDesigning a complete ci cd pipeline using argo events, workflow and cd products
Designing a complete ci cd pipeline using argo events, workflow and cd products
 
DevOps 101 - an Introduction to DevOps
DevOps 101  - an Introduction to DevOpsDevOps 101  - an Introduction to DevOps
DevOps 101 - an Introduction to DevOps
 
Continues Integration and Continuous Delivery with Azure DevOps - Deploy Anyt...
Continues Integration and Continuous Delivery with Azure DevOps - Deploy Anyt...Continues Integration and Continuous Delivery with Azure DevOps - Deploy Anyt...
Continues Integration and Continuous Delivery with Azure DevOps - Deploy Anyt...
 
Kubernetes Introduction
Kubernetes IntroductionKubernetes Introduction
Kubernetes Introduction
 
CTO Summit 2022
CTO Summit 2022 CTO Summit 2022
CTO Summit 2022
 
Efficient platform engineering with Microk8s & gopaddle.pdf
Efficient platform engineering  with  Microk8s & gopaddle.pdfEfficient platform engineering  with  Microk8s & gopaddle.pdf
Efficient platform engineering with Microk8s & gopaddle.pdf
 
What is Platform as a Product? Clues from Team Topologies @ DevOps Porto meet...
What is Platform as a Product? Clues from Team Topologies @ DevOps Porto meet...What is Platform as a Product? Clues from Team Topologies @ DevOps Porto meet...
What is Platform as a Product? Clues from Team Topologies @ DevOps Porto meet...
 
Domain Driven Design - Strategic Patterns and Microservices
Domain Driven Design - Strategic Patterns and MicroservicesDomain Driven Design - Strategic Patterns and Microservices
Domain Driven Design - Strategic Patterns and Microservices
 
stupid-simple-kubernetes-final.pdf
stupid-simple-kubernetes-final.pdfstupid-simple-kubernetes-final.pdf
stupid-simple-kubernetes-final.pdf
 
Deploy 22 microservices from scratch in 30 mins with GitOps
Deploy 22 microservices from scratch in 30 mins with GitOpsDeploy 22 microservices from scratch in 30 mins with GitOps
Deploy 22 microservices from scratch in 30 mins with GitOps
 
Azure DevOps
Azure DevOpsAzure DevOps
Azure DevOps
 
The journey to GitOps
The journey to GitOpsThe journey to GitOps
The journey to GitOps
 
Devops Devops Devops
Devops Devops DevopsDevops Devops Devops
Devops Devops Devops
 
Hands-On Introduction to Kubernetes at LISA17
Hands-On Introduction to Kubernetes at LISA17Hands-On Introduction to Kubernetes at LISA17
Hands-On Introduction to Kubernetes at LISA17
 

Similaire à Managing Infrastructure as a Product - Introduction to Platform Engineering

Commit to the Cause, Push for Change: Contributing to Call for Code Open Sour...
Commit to the Cause, Push for Change: Contributing to Call for Code Open Sour...Commit to the Cause, Push for Change: Contributing to Call for Code Open Sour...
Commit to the Cause, Push for Change: Contributing to Call for Code Open Sour...Daniel Krook
 
GCP Meetup #3 - Approaches to Cloud Native Architectures
GCP Meetup #3 - Approaches to Cloud Native ArchitecturesGCP Meetup #3 - Approaches to Cloud Native Architectures
GCP Meetup #3 - Approaches to Cloud Native Architecturesnine
 
Why we should consider Open Hybrid Cloud.pdf
Why we should  consider Open Hybrid Cloud.pdfWhy we should  consider Open Hybrid Cloud.pdf
Why we should consider Open Hybrid Cloud.pdfMasahiko Umeno
 
Accelerate Your Application Modernization Journey with Konveyor - Kubernetes ...
Accelerate Your Application Modernization Journey with Konveyor - Kubernetes ...Accelerate Your Application Modernization Journey with Konveyor - Kubernetes ...
Accelerate Your Application Modernization Journey with Konveyor - Kubernetes ...Muhammad Edwin
 
Developing Microservices Directly in AKS/Kubernetes
Developing Microservices Directly in AKS/KubernetesDeveloping Microservices Directly in AKS/Kubernetes
Developing Microservices Directly in AKS/KubernetesChakradhar Rao Jonagam
 
How Azure DevOps can boost your organization's productivity
How Azure DevOps can boost your organization's productivityHow Azure DevOps can boost your organization's productivity
How Azure DevOps can boost your organization's productivityIvan Porta
 
Detail Guide - Hire Dedicated React Native Developers for your Project
Detail Guide - Hire Dedicated React Native Developers for your ProjectDetail Guide - Hire Dedicated React Native Developers for your Project
Detail Guide - Hire Dedicated React Native Developers for your ProjectSemaphoreSoftware1
 
Automated Provisioning, Management & Cost Control for Kubernetes Clusters
Automated Provisioning, Management & Cost Control for Kubernetes ClustersAutomated Provisioning, Management & Cost Control for Kubernetes Clusters
Automated Provisioning, Management & Cost Control for Kubernetes ClustersWeaveworks
 
Cloud Native Transformation (Alexis Richardson) - Continuous Lifecycle 2018 ...
 Cloud Native Transformation (Alexis Richardson) - Continuous Lifecycle 2018 ... Cloud Native Transformation (Alexis Richardson) - Continuous Lifecycle 2018 ...
Cloud Native Transformation (Alexis Richardson) - Continuous Lifecycle 2018 ...Weaveworks
 
Enterprise CI as-a-Service using Jenkins
Enterprise CI as-a-Service using JenkinsEnterprise CI as-a-Service using Jenkins
Enterprise CI as-a-Service using JenkinsCollabNet
 
[API World 2021 ] - Understanding Cloud Native Deployment
[API World 2021 ] - Understanding Cloud Native Deployment[API World 2021 ] - Understanding Cloud Native Deployment
[API World 2021 ] - Understanding Cloud Native DeploymentWSO2
 
Deploying Mule Applications with Jenkins, Azure and BitBucket (1).pptx
Deploying Mule Applications with Jenkins, Azure and BitBucket (1).pptxDeploying Mule Applications with Jenkins, Azure and BitBucket (1).pptx
Deploying Mule Applications with Jenkins, Azure and BitBucket (1).pptxPankaj Goyal
 
Bahrain ch9 introduction to docker 5th birthday
Bahrain ch9 introduction to docker 5th birthday Bahrain ch9 introduction to docker 5th birthday
Bahrain ch9 introduction to docker 5th birthday Walid Shaari
 
CI/CD on Google Cloud Platform
CI/CD on Google Cloud PlatformCI/CD on Google Cloud Platform
CI/CD on Google Cloud PlatformDevOps Indonesia
 
When Automation Keeps Your T-shirt Clean
When Automation Keeps Your T-shirt CleanWhen Automation Keeps Your T-shirt Clean
When Automation Keeps Your T-shirt CleanDevOps Indonesia
 
MACHINE LEARNING AUTOMATIONS PIPELINE WITH CI/CD
MACHINE LEARNING AUTOMATIONS PIPELINE WITH CI/CDMACHINE LEARNING AUTOMATIONS PIPELINE WITH CI/CD
MACHINE LEARNING AUTOMATIONS PIPELINE WITH CI/CDIRJET Journal
 
Hybrid and Multi-Cloud Strategies for Kubernetes with GitOps
Hybrid and Multi-Cloud Strategies for Kubernetes with GitOpsHybrid and Multi-Cloud Strategies for Kubernetes with GitOps
Hybrid and Multi-Cloud Strategies for Kubernetes with GitOpsWeaveworks
 
Hybrid and Multi-Cloud Strategies for Kubernetes with GitOps
Hybrid and Multi-Cloud Strategies for Kubernetes with GitOpsHybrid and Multi-Cloud Strategies for Kubernetes with GitOps
Hybrid and Multi-Cloud Strategies for Kubernetes with GitOpsSonja Schweigert
 
How can Enterprises benefit from GitOps.pdf
How can  Enterprises benefit from GitOps.pdfHow can  Enterprises benefit from GitOps.pdf
How can Enterprises benefit from GitOps.pdfOpsTree solutions
 

Similaire à Managing Infrastructure as a Product - Introduction to Platform Engineering (20)

Commit to the Cause, Push for Change: Contributing to Call for Code Open Sour...
Commit to the Cause, Push for Change: Contributing to Call for Code Open Sour...Commit to the Cause, Push for Change: Contributing to Call for Code Open Sour...
Commit to the Cause, Push for Change: Contributing to Call for Code Open Sour...
 
GCP Meetup #3 - Approaches to Cloud Native Architectures
GCP Meetup #3 - Approaches to Cloud Native ArchitecturesGCP Meetup #3 - Approaches to Cloud Native Architectures
GCP Meetup #3 - Approaches to Cloud Native Architectures
 
Why we should consider Open Hybrid Cloud.pdf
Why we should  consider Open Hybrid Cloud.pdfWhy we should  consider Open Hybrid Cloud.pdf
Why we should consider Open Hybrid Cloud.pdf
 
Accelerate Your Application Modernization Journey with Konveyor - Kubernetes ...
Accelerate Your Application Modernization Journey with Konveyor - Kubernetes ...Accelerate Your Application Modernization Journey with Konveyor - Kubernetes ...
Accelerate Your Application Modernization Journey with Konveyor - Kubernetes ...
 
Developing Microservices Directly in AKS/Kubernetes
Developing Microservices Directly in AKS/KubernetesDeveloping Microservices Directly in AKS/Kubernetes
Developing Microservices Directly in AKS/Kubernetes
 
BUDDY White Paper
BUDDY White PaperBUDDY White Paper
BUDDY White Paper
 
How Azure DevOps can boost your organization's productivity
How Azure DevOps can boost your organization's productivityHow Azure DevOps can boost your organization's productivity
How Azure DevOps can boost your organization's productivity
 
Detail Guide - Hire Dedicated React Native Developers for your Project
Detail Guide - Hire Dedicated React Native Developers for your ProjectDetail Guide - Hire Dedicated React Native Developers for your Project
Detail Guide - Hire Dedicated React Native Developers for your Project
 
Automated Provisioning, Management & Cost Control for Kubernetes Clusters
Automated Provisioning, Management & Cost Control for Kubernetes ClustersAutomated Provisioning, Management & Cost Control for Kubernetes Clusters
Automated Provisioning, Management & Cost Control for Kubernetes Clusters
 
Cloud Native Transformation (Alexis Richardson) - Continuous Lifecycle 2018 ...
 Cloud Native Transformation (Alexis Richardson) - Continuous Lifecycle 2018 ... Cloud Native Transformation (Alexis Richardson) - Continuous Lifecycle 2018 ...
Cloud Native Transformation (Alexis Richardson) - Continuous Lifecycle 2018 ...
 
Enterprise CI as-a-Service using Jenkins
Enterprise CI as-a-Service using JenkinsEnterprise CI as-a-Service using Jenkins
Enterprise CI as-a-Service using Jenkins
 
[API World 2021 ] - Understanding Cloud Native Deployment
[API World 2021 ] - Understanding Cloud Native Deployment[API World 2021 ] - Understanding Cloud Native Deployment
[API World 2021 ] - Understanding Cloud Native Deployment
 
Deploying Mule Applications with Jenkins, Azure and BitBucket (1).pptx
Deploying Mule Applications with Jenkins, Azure and BitBucket (1).pptxDeploying Mule Applications with Jenkins, Azure and BitBucket (1).pptx
Deploying Mule Applications with Jenkins, Azure and BitBucket (1).pptx
 
Bahrain ch9 introduction to docker 5th birthday
Bahrain ch9 introduction to docker 5th birthday Bahrain ch9 introduction to docker 5th birthday
Bahrain ch9 introduction to docker 5th birthday
 
CI/CD on Google Cloud Platform
CI/CD on Google Cloud PlatformCI/CD on Google Cloud Platform
CI/CD on Google Cloud Platform
 
When Automation Keeps Your T-shirt Clean
When Automation Keeps Your T-shirt CleanWhen Automation Keeps Your T-shirt Clean
When Automation Keeps Your T-shirt Clean
 
MACHINE LEARNING AUTOMATIONS PIPELINE WITH CI/CD
MACHINE LEARNING AUTOMATIONS PIPELINE WITH CI/CDMACHINE LEARNING AUTOMATIONS PIPELINE WITH CI/CD
MACHINE LEARNING AUTOMATIONS PIPELINE WITH CI/CD
 
Hybrid and Multi-Cloud Strategies for Kubernetes with GitOps
Hybrid and Multi-Cloud Strategies for Kubernetes with GitOpsHybrid and Multi-Cloud Strategies for Kubernetes with GitOps
Hybrid and Multi-Cloud Strategies for Kubernetes with GitOps
 
Hybrid and Multi-Cloud Strategies for Kubernetes with GitOps
Hybrid and Multi-Cloud Strategies for Kubernetes with GitOpsHybrid and Multi-Cloud Strategies for Kubernetes with GitOps
Hybrid and Multi-Cloud Strategies for Kubernetes with GitOps
 
How can Enterprises benefit from GitOps.pdf
How can  Enterprises benefit from GitOps.pdfHow can  Enterprises benefit from GitOps.pdf
How can Enterprises benefit from GitOps.pdf
 

Plus de Adityo Pratomo

Developing Serverless Microservice in Rust
Developing Serverless Microservice in RustDeveloping Serverless Microservice in Rust
Developing Serverless Microservice in RustAdityo Pratomo
 
Developing VR in Unity
Developing VR in UnityDeveloping VR in Unity
Developing VR in UnityAdityo Pratomo
 
Empowering Users: UX Lesson from Game Design
Empowering Users: UX Lesson from Game DesignEmpowering Users: UX Lesson from Game Design
Empowering Users: UX Lesson from Game DesignAdityo Pratomo
 
Prototyping GNOME UI for Gestural Input
Prototyping GNOME UI for Gestural InputPrototyping GNOME UI for Gestural Input
Prototyping GNOME UI for Gestural InputAdityo Pratomo
 
Coding as Intersection of Art and Technology
Coding as Intersection of Art and TechnologyCoding as Intersection of Art and Technology
Coding as Intersection of Art and TechnologyAdityo Pratomo
 
Interactive Data Visualization with Tangible User Interface
Interactive Data Visualization with Tangible User InterfaceInteractive Data Visualization with Tangible User Interface
Interactive Data Visualization with Tangible User InterfaceAdityo Pratomo
 
Adityo Pratomo - Grounding Presentation PDF
Adityo Pratomo - Grounding Presentation PDFAdityo Pratomo - Grounding Presentation PDF
Adityo Pratomo - Grounding Presentation PDFAdityo Pratomo
 
Adityo Pratomo - Grounding Assignment
Adityo Pratomo - Grounding AssignmentAdityo Pratomo - Grounding Assignment
Adityo Pratomo - Grounding AssignmentAdityo Pratomo
 

Plus de Adityo Pratomo (11)

Designing with Code
Designing with CodeDesigning with Code
Designing with Code
 
Developing Serverless Microservice in Rust
Developing Serverless Microservice in RustDeveloping Serverless Microservice in Rust
Developing Serverless Microservice in Rust
 
Let The Machine Helps
Let The Machine HelpsLet The Machine Helps
Let The Machine Helps
 
Introducing Rust
Introducing RustIntroducing Rust
Introducing Rust
 
Developing VR in Unity
Developing VR in UnityDeveloping VR in Unity
Developing VR in Unity
 
Empowering Users: UX Lesson from Game Design
Empowering Users: UX Lesson from Game DesignEmpowering Users: UX Lesson from Game Design
Empowering Users: UX Lesson from Game Design
 
Prototyping GNOME UI for Gestural Input
Prototyping GNOME UI for Gestural InputPrototyping GNOME UI for Gestural Input
Prototyping GNOME UI for Gestural Input
 
Coding as Intersection of Art and Technology
Coding as Intersection of Art and TechnologyCoding as Intersection of Art and Technology
Coding as Intersection of Art and Technology
 
Interactive Data Visualization with Tangible User Interface
Interactive Data Visualization with Tangible User InterfaceInteractive Data Visualization with Tangible User Interface
Interactive Data Visualization with Tangible User Interface
 
Adityo Pratomo - Grounding Presentation PDF
Adityo Pratomo - Grounding Presentation PDFAdityo Pratomo - Grounding Presentation PDF
Adityo Pratomo - Grounding Presentation PDF
 
Adityo Pratomo - Grounding Assignment
Adityo Pratomo - Grounding AssignmentAdityo Pratomo - Grounding Assignment
Adityo Pratomo - Grounding Assignment
 

Dernier

EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEarley Information Science
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsJoaquim Jorge
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
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
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
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
 
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
 
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
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CVKhem
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?Igalia
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?Antenna Manufacturer Coco
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
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
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
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
 

Dernier (20)

EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
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
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
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
 
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
 
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
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
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
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
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
 

Managing Infrastructure as a Product - Introduction to Platform Engineering

  • 1. Kubernetes Community Days x OpenInfra Days Indonesia 2022 Managing Infrastructure as a Product: Introduction to Platform Engineering Adityo Pratomo Product Manager, GoTo Financial
  • 2. Kubernetes Community Days x OpenInfra Days Indonesia 2022 Hi, I’m Didit Currently managing Gopay.sh, our homebrew internal developer tool Used by 450+ engineers on a daily basis Speed up our migration and deployment effort Accelerate fixing compliance and governance issues Build from the ground up by and utilizing various open source projects
  • 3. Today, we’ll talk about internal platform 📖 adityop.medium.com ⏱ Short history on how we get here 🦸 Giving developers super power 🏗 Managing infrastructure as product
  • 4. Kubernetes Community Days x OpenInfra Days Indonesia 2022 Short history, how we get here?
  • 5. Kubernetes Community Days x OpenInfra Days Indonesia 2022 Some years ago… ��🏻💻 App developer ��🏽 Network engineer ��
  • 6. Kubernetes Community Days x OpenInfra Days Indonesia 2022 Some years ago… ��🏻💻 App developer ��🏽 Network engineer �� “It’s the network fault” “It’s the application issue”
  • 7. Kubernetes Community Days x OpenInfra Days Indonesia 2022 Some years ago… ��🏻💻 App developer ��🏽 Network engineer �� ”Ah, so that’s where the problem is!”
  • 8. Kubernetes Community Days x OpenInfra Days Indonesia 2022 Microservice is here Embraced by enterprises and startups to improve the organization’s agility Architectural decision that represents organizational domain and governance Provides teams ability to move independently and tackle each domain’s issue
  • 9. Kubernetes Community Days x OpenInfra Days Indonesia 2022 DevOps as the enabler For teams to truly achieve independence, they have to be able to fully own the end-to-end process of building and operating services “You build it, you own it”
  • 10. Kubernetes Community Days x OpenInfra Days Indonesia 2022 However… Building AND operating service are 2 vastly different domain and problems Both requires different set of skills, stemming from different background with different practices as well It become a tall order if we want developers to be able to operate their own services Remedied through manual process ✅
  • 11. Kubernetes Community Days x OpenInfra Days Indonesia 2022 The problem - Not scalable - Repetitive - Back to square one ��🏻💻 App developer �� DevOps engineer ��
  • 12. Kubernetes Community Days x OpenInfra Days Indonesia 2022 The problem I build it, but do I own it?
  • 13. Kubernetes Community Days x OpenInfra Days Indonesia 2022 The solution Codify the practice to operate the services, so developers can do it on their own Provide manual intervention only for edge cases Exposes abstractions over the underlying infrastructure to make it more developer friendly We call this platform
  • 14. Kubernetes Community Days x OpenInfra Days Indonesia 2022 Giving developers super powers
  • 15. Kubernetes Community Days x OpenInfra Days Indonesia 2022 Ensuring platform gives values Platform is a wide domain and building it would be very contextual for every organization, A uniform goal: improving developer productivity To ensure it’ll be successful, let’s step back and see developers’ workflow.
  • 16. Kubernetes Community Days x OpenInfra Days Indonesia 2022 Modelling developer activity 1. Discover: gathering information required to start writing code 2. Build: translating requirements into code 3. Test: testing the recently written code to ensure that it fits the requirement 4. Integrate: build and deploy the code, to make it integrated with the wider system 5. Verify: testing the recently integrated code, to ensure the functionality correctness
  • 17. Kubernetes Community Days x OpenInfra Days Indonesia 2022 Improving developer activity The key value of a developer is realized in write and test steps, these are the main productive time Improving developer productivity can be started by reducing the time spent by developers to do discover, integrate, and verify steps That’s where our platform can play fundamental part.
  • 18. Kubernetes Community Days x OpenInfra Days Indonesia 2022 As an example let’s tackle point 4. help developer in speed up the process of deploying the code to our underlying - freeing developers from writing brittle YAML file? - verification that the process works? - feedback so they can act accordingly? - utilize a graphical UI to give additional information?
  • 19. Kubernetes Community Days x OpenInfra Days Indonesia 2022 We know the problem, but solution can go either way Whichever solution we choose, it could work, but now, you can imagine the subsequent complexity Now we’re exploring the solution space, but even after we make our choice, we need to validate the solution This is where product thinking can help
  • 20. Kubernetes Community Days x OpenInfra Days Indonesia 2022 Managing infrastructure as product
  • 21. Kubernetes Community Days x OpenInfra Days Indonesia 2022 Platform is a product we shifted platform from a one and done foundational layer to malleable product that we can iteratively craft it becomes imperative for us, as the builder to think of: ● what are the business outcome that we want to address? ● what are the pain points that the developers are experiencing? ● how big is the problem? ● can we validate that what we provide the desired solution? ● what to prioritize next? Infrastructure Platform
  • 22. Kubernetes Community Days x OpenInfra Days Indonesia 2022 Product thinking Product thinking helps us see things in 3 different lenses: - Business (viability) - Technical (feasibility) - User (desirability) You can say that product management is the bridge that connects these 3 islands
  • 23. Kubernetes Community Days x OpenInfra Days Indonesia 2022 Feasibility The underlying layer itself is already taking shape in form of higher level abstraction (e.g. Kubernetes, Istio) over lower level building block (e.g. OS). Exposing bare Kubernetes or Istio to developer, isn’t the correct strategy since each has its own complexity Utilize their APIs to create more valuable abstraction and automation that empowers developers to operate their services.
  • 24. Kubernetes Community Days x OpenInfra Days Indonesia 2022 Desirability Aimed towards experts Feature wise, the product will go deep and focused towards specific domains highly contextual to how the company is organized and governed ✅ Identify the current workflow -> map it -> systemize it via platform -> gradually optimize it ✅ provide better UX on each iteration
  • 25. Kubernetes Community Days x OpenInfra Days Indonesia 2022 Example As a developer, I want to be able to deploy my services to our Kubernetes cluster without having to write YAML configuration from scratch, so I can confidently complete it myself Solution through GitOps and Kubernetes friendly CD provider. Deployment is 1 trigger away, platform provides the pipeline template March sprint
  • 26. Kubernetes Community Days x OpenInfra Days Indonesia 2022 Example As a developer, I want to be able to deploy my services to our Kubernetes cluster without having to write YAML configuration from scratch, so I can confidently complete it myself Solution through GitOps and Kubernetes friendly CD provider. Deployment is 1 trigger away, platform provides the pipeline template ❗developers still feel that sometime, they have to do context switching between platform and CD provider to ensure successful deployment March sprint
  • 27. Kubernetes Community Days x OpenInfra Days Indonesia 2022 Example As a developer, I want to be able to deploy my services to our Kubernetes cluster without having to write YAML configuration from scratch, so I can confidently complete it myself Solution through GitOps and Kubernetes friendly CD provider. Deployment is 1 trigger away, platform provides the pipeline template ❗developers still feel that sometime, they have to do context switching between platform and CD provider to ensure successful deployment As a developer, I want to be able to check my deployment status straight from the platform, so I can verify without having to do any context switching March sprint May sprint
  • 28. Kubernetes Community Days x OpenInfra Days Indonesia 2022 Viability Business outcomes will also move over time, even if it’s not that often Example of desired outcomes: - Reducing infrastructure cost by 10% at the end of 2022 - New joiners can deploy to production within the first week of joining - 100% services adhere to the regulatory compliance
  • 29. Kubernetes Community Days x OpenInfra Days Indonesia 2022 Eventually, the platform evolves The platform should evolve guided by the lenses. It’s a living product
  • 30. Kubernetes Community Days x OpenInfra Days Indonesia 2022 So we need to create direction Product vision: to improve developer efficiency inside organization Goal: reduce time to complete deployment Goal: reduce number of issues related to deprecated libraries Goal: reduce average time to resolve incidents
  • 31. Kubernetes Community Days x OpenInfra Days Indonesia 2022 In the end ��🏻💻 App developers use it to operate services ��🏽 DevOps engineers provide both infra and its abstractions �� �� �� ��
  • 32. Kubernetes Community Days x OpenInfra Days Indonesia 2022 To summarize Platform enables DevOps culture Platform needs to be crafted to solve specific developer pain points first, before tackling another Platform will evolve and we need to manage it as a product
  • 33. Kubernetes Community Days x OpenInfra Days Indonesia 2022 Thank You Let’s Connect @kotakmakan adityop.medium.com