Gene defines devops using the Jon Smart definition
"Better Value
Sooner. Safer. Happier."
(BTW talk to your support people and principal engineers, they will tell you a lot about this.)
1.) absence of all the invisible structures needed to enable dev productivity
2.) orthogonal problem of getting data from where it is to where it needs to be
3.) strong opposition to new ways of working
4. ambiguity on what behaviors needed to support during a transform
1. Locality and simplicity
2. focus flow and joy
3. improvement of daily work
4. psychological safety
5. customer focus
So, this whole thing leads to 2x less time re-mediating security issues and 29% more time spent on new work. imagine what you could do with 29% more time on new work instead of firefighting!
However this led to a lot of outages, so they wanted to kill it.
Make large scale changes without permission of someone outside the team or depending on other teams
deploy and release their service on demand
do their own testing on demand WITHOUT THE USE OF A SCARCE INTEGRATED TEST ENVIRONMENT
Bus factor, how many people have to be hit by a bus to disrupt things
Lunch factor: How many people do we need to take out to lunch to get something done?
If it takes 200 people to do a complex deployment, that's not ideal, want a low lunch factor
Not Ideal: everything has to be changed and the whole system needs to be understood
Not Ideal: Integrated test environment (again, this couples you to every part of the system)
not ideal: Teams have to escalate up down left right forwards backwards and inbetween
So everyone has access to data we need
Not ideal:
Everyone has to wait months, quarters, hope the reports don't break
Basically for Gene this helped him rediscover the joy of programming while being an ops person. #yow19
But, learning Clojure changed Gene's opinion on this. You can do so much with so little code these days!!! Also DevOps is a word for a reason :P
You can do so many things with so little effort these days!
#yow19
core concepts:
Immutability
composability
Pioneered by LISP and ML
#yow19
Docker, Kubernetes
You can compose stuff but if you want to change things you have to deploy. You can't rewrite history in Apache Kafka.
Immutability is really important and helps drive towards good practices. #yow19
Not Ideal: solving problems no one wants to solve
#yow19
Everything outside of my application
Connecting anything to anything
Bash
YAML
Patching"
XD #yow19
#yow19
Procedural, more in line with flow
One shot learning:
Solving something because you have to not because you want to. No long term value.
#YOW19
#YOW19
#yow19
Ideal: trunk based development
Not Ideal: "50 people and a war room" #yow19
Improvement of Daily work
General Motors Fremont, had a terrible terrible track record because there were no procedures in place to detect problems or what to do when problems were found. HINT: That last one
#yow19
Put as much feedback into your system as possible, because that's how you learn and that's how you innovate and fix more problems. #yow19
Features ->
Technical Debt ->
Defects ->
In the future:
Velocity <-
Defects ->
Everything is so hard and all the time is spent fixing defects
#YOW19
Why did NOKIA axe Symbion? Because the lead time was so long that it was mirage. Yeah Windows Mobile didn't work out but the call was right. And even at the board level, detecting the presence of tech debt is CRITICAL. #yow19
Microsoft 2002: Bill gates memo about security
Google 2005: automated testing culture
Amazon 2004: Though shalt always go through APIs
Twitter 2008
it goes on
You have to find a way to manage technical debt or you will fail #yow19
Allocate 20% of cycles to technical debt reduction.
Yes, 20%.
#YOW19
Ideal is 3-5% of devs dedicated to improving dev productivity
Not Ideal: "It's the interns, it's the low rate developers. These aren't important so give them to the mediocre people"
#YOW19
Ideal: fixing that becomes the most important work of the day
#yow19
Ideal: if someone needs a peer review, drop what you're doing, do the review
#yow19
So yeah, there's a lot to be discovered here
#yow19
#yow19
#yow19
a time waster #yow19
Information being actively sought
Messengers are trained (as opposed to shot)
Responsibilities are shared
Bridging between teams &function groups are rewarded
Failure causes enquiry
New ideas welcome
Great practices enable:
blameless postmortems
chaos engineering
#yow19
Core is what creates lasting durable business advantage
Context:
everything else
(Payroll, etc.)
The risk is that context starves core.
Bring your business to the basics, focus on what you do well and what creates value
#yow19
ideal: it's all focused on customer value, if it doesn't create customer value why are we doing it at all?
#yow19
There's tons of value to be created here, and this is possible at more than just those companies, it's possible at your company. Want to know more? Look for The Unicorn Project , follow @RealGeneKim ,