
There are a ton of variations out there like DevSecOps, MLOps, GitOps (My Favorite), NetOps, DataOps, BizOps, even NoOps, etc. In my opinion, it all comes back to the basic definition which says that Dev<whatever in the middle>OPS is like a soup recipe with 3 main ingredients that are easy to find in your organization’s pantry which are people, processes and automation tools. Add the right amount of each ingredient to taste and turn on the heat (Do not cook people)!
The end goal is to serve your customers the best bowl of software soup they’ve had?!
I. Talk & Break Siloes
- Help other teams and people outside of your realm out!
- Turn IDEAs into actionable plans and communicate on an achieving an MVP (skateboard)
- Admit errors, we are all human and accept failures as learning opportunities that make us better.
- Track plans in Jira, ServiceNow even Trello
II. Treat Everything as Code
- There are a lot of extensions in VSCode that personnel in IT like Security, DBAs, Systems Engineers even helpdesk can leverage to automate tasks.
- Tools:
- Packer helps systems engineers build server images and add pre-startup configs
- Terraform, Ansible, Puppet and Chef can help network, security and dbas with infrastructure as code and config management.
- Selenium helps QA and Testing teams.
III. Bring it all together
- Use Pipelines as a central place for everyone to add their scripts. The systems engineers can build servers and provide the names to the pipeline so that security can perform hardening and dev can deploy code. Local server accounts can be created using vaults to share secrets in a secure way.
- Jenkins, Gitlab and Azure DevOps have plugins to facilitate the use of previously mentioned automation tools as build steps.
IV. Keep an eye out
- Research and come up with new ideas to try
- I will share my ideas with you and I hope you provide good feedback.
- Monitor and keep an eye out for monitoring gaps (Things we don’t know we don’t know…)
- Tools:
- ElasticSearch for log collection and Kibana for visualizations
- Nagios
- Built in Cloud monitoring (AWS CloudWatchk, Azure Log Insights)
V. Keep enhancing
- Prove that current deployments will meet expectations by testing frequently.
- Introduce new ideas little by little in lower environments to prove that they will improve the overall application
- Bring some chaos into the mix with tools like Gremlin / Chaos Monkey (Netflix) to shake things up and identify weaknesses
Remember that the main goal is to have a great product that keeps the customers happy!