DevOps is a journey of continuous learning, implementation & continuously improving the existing implementation. I must admit that there is no right or wrong way of adapting to & implementing DevOps, DevOps implementation may vary depending on the product life cycle, goto market strategy, the underlying tools being used.
Here are some guiding principles for implementing the successful DevOps practice with higher ROI.?
- Management mandate: The most important & pivotal criteria towards the successful implementation of DevOps. There should be a vision backed with required investment for the DevOps practice implementation. Without identifying the problem to be solved, DevOps implementation might just be one another automation task.
- Start early, Fail early, Learn early & fix early: There is no right or wrong time for starting DevOps implementation for a product/project. Start right away, take small steps towards DevOps implementation, identify what failed, learn your lessons & improve on them.?
- Your problem vs. Our problem: DevOps is rather a cultural change within the organisation. It cannot anymore be your problem, rather it should be ‘our’ problem from now onwards. It needs involvement & participation from all the engineering stakeholders to successfully drive a change for the right DevOps implementation within the organisation.?
- Integrated process implementation: All the engineering stakeholders are a party to the successful DevOps implementation, whether cloud infra teams, quality engineering teams or security teams, they all need to work towards achieveing a common goal & collaborate for the success of the DevOps implementation.
- Automate, automate, automate: Basic thumb rule here is, any activity which is done twice manually should be automated. Automate (almost) every phase of the project spectrum.?
- Close the loop: It is not just about creating fully automated CI-CD pipelines. Identify root causes of failed pipelines, integrate failures with the defect tracking tools to ensure someone is accountable for fixing the issues related to failures & such failures doesn’t repeat.?
- Tools vs. process: Focus on setting up the right process that fits the project needs & is in alignment with the direction of the organisation. Choosing the right technology/toolset that falls inline with process defined is the next step.
- Auditable DevOps: DevOps practice is an ecosystem of different tools & processes integrated & working together. Teams usually spend most of their time & effort on finding the issues after the fact. Logging, error reporting, role based access control on the processes/tools should be in place to ensure smoother execution of DevOps processes, thus resulting in teams spending less time in debugging & spend more time towards improving the existing processes.
- Measurable DevOps implementation: Until measured, it is hard to identify whether the DevOps journey is going in the right direction. It is in the best interests of the practitioners to define KPIs of their DevOps practice implementation & focus on continuous improvement on those KPIs.
Risk and compliance Analyst
4 天前Very informative