DevOps @ TGT v6 October 2015
-
Upload
andy-domeier -
Category
Technology
-
view
253 -
download
0
Transcript of DevOps @ TGT v6 October 2015
Quick Intro
• 10.5 Years @SPSCommerce
– 80 something to 1,000 something
– New Company Every Year
• About me
– Work should be fun & rewarding
– Building Awesome is fun
– Just got back from #velocityconf #tired
*Disclaimer*
I came here today thinking I know something about some things… I expect to leave here thinking I have no clue about anything
*Fine Print – is fine print still a thing?
My Point Was…
• Shouldn’t we clean the roads first?
• Stop the Truck!
• Priorities Conflict Everyday
Then Open Spaces Happened
Open Space….Turned Tools?
• What if there isn’t a pitchfork on the truck?
• What if the toolbox is locked?
• What if the tools on the truck are confusing?
What I Heard
1. We don’t have the right tools to collaborate preventing me from feeling empathetic
1. We don’t have access to the tool
1. We don’t share knowledge about the tool
If I had a tool (that I understood)
• I could help us better
• I could understand the problem better
• I could help us be more awesome
Tools are More
“When used properly Technology Tools can enable teams, multiple teams or entire organizations to speak the same language about something complex”
Let’s Face the Facts
These Tools make us better and we should use them. (In some cases we need to use them)
Choose (Mostly) Wisely
“Picking the right tool is less important than how you use it which is even less important than how you enable others to use it”
Organize!!
• Today’s world is complex, there is no one size fits all tools out there. Results = Lots of Tools
• Leverage Documentation as an organizer & enabler
– It should not be an all knowing answer giver
Documentation
“Documentation is NOT a CYA, it is a critical media for sharing knowledge so we can be collectively smarter…”
You know what you know….You don’t know what you don’t know....
You know what you assume others know....
Knowledge Assessment
Fail Fast & Iterate
Q: How can we make an environment like this effective?
A: Knowledge Sharing is Critical
Expectations of Knowledge
• Everyone thinks differently and organizes differently so be considerate
• It’s not ever going to be perfect, have an expectation what you need might not be there
– But leave it in a better state than you found it!
The Approach we Take• “SysMain” – The landing page for a service
– Template• Description• Diagrams• Monitoring (& SOPs)• Service Dashboards (The Tools)• Dependencies• How to manually validate it’s working• How to restart it• Integrations – Bugs, Change Tickets, Sprints
Things are the way they are..
• Unless you’re Dr. Brown you might as well worry about moving forward and trust you’re in this state for “reasons”
Transparency via Knowledgebase
• Blog Posts
• Short, informative, quick links, labeled (lives forever)
Example 1: Collaborating & Iterating
Dev was Curious
New Build full of Logs
Life Was Good
Months Later: Life Was Bad
Example 1Using the metrics in the logs from the previous build, Summarized DB query time over 30 days
Example 1 – 1 Year Ago• This would have been a customer ticket• Escalated to Dev as a UX issue• Dev would have sent it back and asked why• Ops would say, cuz…. Reasons• Dev would look closer at magic and decide it was
DB perf• Transfer ticket to DBA• Meanwhile.....
Example 2: Collaborating & Iterating
Performance Test Sets- Configurable- Documented
Automation- 6 Months Later- Scheduled Job
Trends & Analytics- Automated Logging KPIs- Pushed KPIs to Analytics - Easily Dashboard
DoD MSP 2015 – Software Game
• Decrease Friction
• Lower Risk
• Situational Awareness
#winning
http://www.devopsdays.org/events/2015-minneapolis/proposals/The%20New%20New%20Software%20Development%20Game/
Consider
“Documentation is a way to automate knowledge sharing and a team that effectively shares knowledge will excel in empathy, collaboration, and iteration”
#winning
Ponder
• Aligning and incentivizing an organization is not a perfect science, it’s constantly changing.
– This is not a problem you solve for, it’s a problem you manage.
Do This….
• Be Continuous #VelocityConf– Continuous Deployments = Continuous Conversation
– Continuous Integration = Continuous Learning
*Warning – I believe a byproduct of this is being awesome…
• How you work with other teams and the expectations or commitments you make
– Is your expectation best intentions?
– Are your best intentions trusted??
Be Aware