Download - DevOps for CTOs
DevOps for CTOs
Software Leaders Breakfast3-4-2014
My observations, experience, research, thoughts
OnDevOps for SaaS CTOs
We want to talk, not listen – so this is going to go fast…
Traditional development focus on Functional Requirements
FeaturesUI
(and bugs)
Non-Functional Requirements often ignored
Security, backup, high availability, failover, upgradeability, configuration management, monitoring, deployment, test, feature flags
No time(these really are features too)
And IT Ops has their own issues
Few resources and no automation=
More of the same
Business Value = FeaturesRight?
Business Value=
Anything which makes people gives us more money
(Coda Hale)
Business Value happens when our code runs, not when we write it
We don’t pay nearly as much attention to code running as we do
to code writing
SaaS = ProductALL of it
functional and non-functional(hardware, software, API, monitors, logs, health checks,
configuration management, test data, security, scaling up/down, failover, etc.)
Write ----> Run(there’s a lot in between)
DevOps
To increase the flow of work between Dev and Ops and build a
culture of continuous improvement between the groups
Traditionally…DevOps
(Write) (Deploy)
What happens when it doesn’t run?
More and more…
DevDev(Functional)(Non-Functional)
Using code and automation
Infrastructure as Code
VersionedAutomatedRepeatable
(idea started before cloud but is best implemented in cloud)
• 2013 DevOps Survey by Puppet Labs• DevOps = Collaboration between Development and Operations
teams to achieve a common business goal• 63% using DevOps practices, a 26% increase over 2011• Ship code 30x more frequently with lead times of a few minutes• 50% fewer failures with the ability to recover 12x faster• 89% use version control – for infrastructure• 82% use automated code deployment• Blockers to adoption – not understood, no management/team
buy in• DevOps job postings are skyrocketing• Skills – Coding/Scripting, tools (*)
Key Indicators…Increase Deploy Frequency
Decrease Change Lead TimeDecrease Change Failure Rate
Decrease Mean Time To RecoverWith Version Control and Automated Deployment
There’s just one box and it is bigger than most think
All environmentsAll code
One Team
(Clogeny.com)
Environments:• Dev• QA• Staging• Production
Plus:• Boundary• New Relic• White Hat• Pingdom• PagerDuty• Etc.
My Recent Experience…Worked on Dev/Agile firstStabilized Infrastructure
Tried to turn ops people in to DevOps people, didn’t workWasted a LOT of time
Searched LinkedIn for DevOps and started contactingThey’re all employed and busy and not looking for jobs
Found one and recruited hardHired one leader and he started recruiting more
My Recent Experience…We had very early automation attempts and some alerts but we
had SO far to goNo automation, metrics, common logs – flying blind
It was humblingStarted with New Relic, Boundary, Pager Duty, Pingdom
Started the move to AWSIncredible pressure to return to bad behaviors
Painful discussions – “Warranty Denied”
My Recent Experience…It’s very hard to start this in a mature software organizationVery intrusive into the Dev culture (testing, instrumentation,
logging, automated builds, etc. – all non-functional)Complete change to the Ops culture (shift focus away from
touching hardware, and fixing things by hand, to writing code)Test/Stage/Prod must match in every way – including HA
Database is just plain hard in this stuff (last frontier)I’d say give a year at the very least and be prepared to lose
people
DiscussionBurke Autrey
SoftwareTeam6Leadership for Software Companies
StrategyProduct Lifecycle
DevOpsProduct Management
Security and ComplianceDue Diligence
Beta