Value Matrix ~ Pain Outcomes Flashcards
Less Frequent Deployments - Pain Points
Pain ~
- Higher risk of the deployments that are happening (more changes packaged in one deployment)
- Business challenge - less competitive in the market as a business
Inconsistent implementation of the deployment process / pipelines
Pain ~
- Waste of time on onboarding new services to be deployed
- Not knowing the state of the deployed service
Long time to recover from a failure
Pains ~
- Application downtime which means losing money
- Waste time of SW developers and DevOps engineers to try and identify the problem
- No one likes to be called in the middle of the night
Inconsistent deployments on all levels (code / config / infra) - no one stop shop for changes*
Problems ~
No single source of truth for all changes. The applicaiton code changes are in git but the configurations might be in other locations and infrastrucutre configurations might be somewhere else
Failed promtion (Dev -> QA -> Staging -> Production) process due to missing configurations
(there were changes in staging that were not promoted to prod because there is no single source of truth fo all changes)
Problem~
- Changes in staging were not documented and then when getting to produciton there are issues (the change that was made in staging is not in production)
- The common issue of ““it works in my environment”” / forgeting about changes that needs to be promoted to the next environment
- If the staging -> production is not an issue then what is the status in the lower environments (dev / qa / etc.)
Maintaining multiple pipelines (due to pipeline sprawl)
Problem ~
- Pipelines must go through testing and require engineers to make changes or fix the scripting behind the deployment.
- Required pipelines SME
On boarding takes too long. Less than ideal Dev Exp
No live status of deployments / applicaitons
Problems ~
- No Live state dashboard available to end user (the SW developer who wants to deliver his code to production)
- The user must find a way to view the deployment of the application for any troubleshooting or to confirm version information.
Limited Protection from Introduction of Non Approved/Reviewed Changes
Problem ~
Pipelines are mainly responsible for update versions of the deployment not all configuration of the application which usually go through without any approval
No live feedback / status of pipeline execution
Problem ~
Pipelines are only monitoring the deployment process during the execution of the command to deploy or after through additional commands but these normally have a short duration
Developers has access to the k8s cluster in order to do their daily job (see what is where)
Problems ~
- High risk for security issues, larger blast radius in case something happens
User management on k8s at scale can be an issue - Managing k8s security is difficult / painful / prone for errors
Different Development Practices - Inconsistent Developer experience between app development to app deployment (which includes configuration / infra)
Problems ~
Pipelines are updating the live state with the new changes but there is no source of truth to audit.
Pipeline SME Required
Problems ~
“1. Pipelines for deployments often require a SME familiar with the automation systems, the application configurations and Kubernetes.
- This person is normally very expensive and also a bottle neck for many organizations.”
Developers have varying degrees of internal processes and k8s knowledge
- On boarding takes too long.
- Less than ideal Dev Exp