It’s interesting to learn more about this new buzz word dev ops. At times it’s unclear, a bit like the “cloud”. What does “DevOps” actually mean.
At work we’ve been exploring this in detail. I’m now starting to wrap my head around where DevOps begins and ends.
DevOps. Development. Operations.
Treating infrastructure as code.
Here’s what DevOps involves.
DevOps brings together a toolset that helps manage the following elements of software development.
|Deployment||Automated deployment. Boring. Issue > Dev > Test > Env[s] > Production. Anytime. Agile. Brings together the entire story. Traceability. Octopus Deploy.|
|Continuous Integration||Incremental progress. Pushing through a mainline. Integration testing. Combining modules. Increasing the occurence of integration. Quality verification. Building. Team city. Making deployment boring. Early warning. Immediate feedback. Defect reporting. History. Hundson. Jenkins. Travis CI.|
|Source Control||Guarding software assets. Versioning code. Versioning infrastructure code. Track history. Compare configuration. Audit trail. Github. TFS.|
|Developer Environments||Accelerating social development. Up quickly. Standisation. Reducing “works on my machine” problem. More places to get more work done without worrying. Speed up onboarding. Vagrant, click, box.|
|Configuration Management||Flexible. Cloud focused. Automation. Consistency. Spin up environments. Removable of manual configuration. Chef. Salt. Puppet. Provision. Run. Deploy. Decommission. Ansible. Powershell. Manage registry.|
|Monitoring||Monitoring supports developers to prevent bad design concerns left too late. Smart prevention. Inside out. Outside in. Cloud expansion. Scalability. Log stash. New Relic. Serilog. Seq. Kibana. Elastic.|
|Issue Tracking||Bug tracking. Progress. Individual visibility. Triage. Closing the loop. History. Zendesk. Jira. A shared list.|
|Planning||Shared vision. Transparency. Living documents. Static documents are out-of-date as soon as they are done. Post review actions. Design. Priority.|
|Collaboration||Not more meetings. Communication. Regular. Meaningful. Stand-ups. Rapid. Making decisions. Learning. Chat tools. Wiki. Confluence. Delay wait. Skype. Messenger. Questions. Answer. Campfire. Slack. Impromptu discussion. Blogging. Persistent record. Jabber. Remove blockers.|
DevOps is never ‘done’.
Here’s why it’s awesome.
DevOps breathes life into a modern complex software development culture. It lifts the pressure off release management with a toolset that encourages automation.