a devops mentality @patrickdeboishttp://spencerfry.com/how-to-bootstrap
devops Cultural and Professional Movementhttp://www.youtube.com/watch?v=Fx8OBeNmaWw Adam Jacob
My Background• Independent consultant• Have worked in different roles• Agile and Infrastructure• Just Enough Developed Infrastructure - http://jedi.be• Started organizing devopsdays• Recently joined Cutter Consortium
Background check?analysts databasedeveloper securityoperations middlewaretesters salesnetwork managerstorage hr people
The movement is inclusive Awesome Happy Cool Built neat stuff! Adam Jacob
There are exclusive people Grumpy Tool Centric Us vs Them I’m a devop you’re a sysadmin Adam Jacob
Looking for tools?
Looking for tools?You can still leave ...
DEV OPS The problem
“It’s NOT a technical problem”
“It’s a human problem”
We don’t trust We don’t trust the guys from the guys from operations. development. They suck They suck We don’t trust the guys from management. They suck
Premise today“It’s a trust problem”
Starting a devops culture = restoring trust http://voetstappen.blogspot.com/
Traditional Business Formula(Strategy X Execution)= Results
Tax Dividend• 10 x 10 = 100 (- Tax 40 %) = 60• 10 x 10 = 100 (- Tax 10 %) = 90• 10 x 10 = 100 (+ Div 20%) = 120
Trust = f(character, competence)
Waves of Trust Self Relationship Organizational Market Societal
1. Self Trust
“We trust people,who make things happen”
But ...Can otherstrust you?
“We judge others by their behavior,we judge ourselves by our intentions”
Principle of Credibility “The 4 Cores”• Trust = f(character, competence)• Character = f(integrity, intent)• Competence = f(capabilities, results)
Ah, so this is where the (cool)tools come in !
Chef Ruby Mysql LinuxPuppet Java Redis Mac OSX Event EC2MachineNode.js I <3 technology Vmware Fog Nginx Vagrant SinatraJclouds Thin Virtualbox Rails
Technology ManagementBut there’s a *lot* moreSocial Financial Communication
WTF, do I need to learn all that?
Broader knowledge,will make your actions more balanced
It’s NOT about devstaking over ops or ops taking over devs.
It’s about collaborationwith people you trust.
Results:• Take responsibility for results not just your action. Avoid , my job is only to ...• Expect to ﬁnish the job• Finish strong
Make a personal backlog• Plan an item you can really make happen • No too big, make it feasible• (Result)Deﬁne what you want to achieve• (Competence)Learn what you need• Do : trust comes if you make things happen• Check the result• Act on it
As a person• I want to develop these capabilities• I want to achieve results• When I fail , I want to learn and improve!
As a manager, I want to • help people develop these capabilities • help people achieve results • (support the people) • help people fail and learn and improve!(+) Trust =(+) Speed!(-) Cost!
2. Relational Trust
Reach out to others
Agile already did a great job
Get together ﬁnd allies forward links organize meetups distribute books ﬁnd people with real issueskindly ignore nay sayers (for now)
You can use technology to get theconversation started• Continuous Delivery • Testing, Monitoring• Automation • Fixing a problem• Scalability • Infrastructure as code• Performance • <whatever>
“Seek to establish trust” Technology Trust by Testing, Monitoring Human Trust by Behavior
13 Behaviors “trust is established through action”• Needs to be • Sweet Spot balanced (Strength)• Too Little • Too much (Weakness) (Weakness)• f.i. talk straight vs demonstrate respect
#1 Talk Straight • We really need this tool vs I want to learn this tool • It needs to be ﬁnished by X (that leaves me some time) • The user/my boss wants this now • It’s urgent, it’s important
#2 Demonstrate Respect • we judge a person’s character, by how he treats people who can’t help or hurt him • little things , making things helpful
#3 Create Transparency• no more Bob’s directory• check in your code• expose logﬁles, conﬁg ﬁles ...• visualize progress (Kanban, Burndown)• share your information• make results repeatable
#4 Right wrongs“to know what is right and not todo it is the worst cowardice” - Confucius • when you know there is a short cut, ﬁx it and don’t leave it • ﬁx a bug when it occurs, write a test • ﬁx it, ﬁx it all the way
#5 Show loyalty • give credits • talk as if people were present • represent others
#6 Deliver Results• Clarify Results upfront • your deﬁnition vs my deﬁnition• Small steps = Validation test (Userstories)
#7 Get Better “Illiterate are those who can not learn, unlearn, relearn” - Alvin Tofﬂer• seek feedback (Retrospectives)• learn from mistakes (5 whys)• ask: what to continue, what to stop, what to start now!• metrics (Neutral , not emotional)• change the system (Systems Thinking)
#8 Confront Reality• avoid 99% ﬁnished• burn down chart• only measure of progress is working software (in production)
#9 Clarify Expectations • deadlines vs. cut corners (win-win or no deal), negotiate them (who vs trust) • talk to devs, what do they expect • talk to admins, what do they expect • talk to customers
#10 Practice Accountability • Accountability requires facing Truth • yourself and others • Don’t blame others , no pointing ﬁngers
#11 Listen First“If there is any secret, it lies in the abilityto put yourself in the other person’s place” - Henry Ford
#12 Keep Commitments• don’t PR your way out• make them careful• group is committed to results (not manager)• mgt supports team to keeping commitments
#13 Extend Trust • Make it an action • here is the password • here is the code • everybody can check in and deployed to prod (with tests :)remember it’s inclusive not exclusive!
As a person,• Given my capabilities• I want to practice these 13 behaviors• Help others to practice these 13 behaviors
As a manager, I want to encourage behavior that increases trust(+) Trust =(+) Speed!(-) Cost!
“Don’t change culture, change behavior!”
Organizational Trust Eli mi na• Redundancy te Ta xe• Bureaucracy s• Politics• Disengagements (quit and stay)• Turnover (employee)• Churn (stakeholders)• Fraud
Want to know more? #devops on twitter & irc http://devopsdays.org http://devopscafe.org http://planetdevops.net devops googlegroupdevops-toolchain googlegroup