Raymond Hwang, head of DevOps at KCOM, on the continuous innovation cycle and why change is here to stay.
The only thing certain in business is change. No industry is ever static - customer demands and market conditions are in a constant state of flux, and new technologies and channels are emerging all the time.
A business IT architecture is a source of major investment, and few stakeholders want to see this investment go to waste. The old school view of system administration is ‘if it ain’t broke, don’t fix it’, but this should not be the attitude of a healthy, competitive business. Instead, it is a recipe for losing out on the latest innovations and falling behind your competitors.
Every organisation should strive for a continuous cycle of innovation. DevOps has been recognised as the vehicle for businesses to be efficient and agile in the sea of constant change.
In nature, the organism with the best chance to survive and thrive is the one most able to adapt with its environment. Businesses are no different. In our modern information age, this means that corporate IT infrastructures must be able to change with the times. Yet, this is no small task.
DevOps means different things to different people, but the goal is always the same: increasing velocity and, therefore, reducing time-to-market and risk. DevOps is never just a tool, a stack, a procedure or a cultural shift - it is all of these, in pursuit of greater IT efficiency.
There is no one-size-fits-all approach to DevOps that will satisfy the needs of every organisation. To achieve its goals, a DevOps-centric organisation will need to focus on continuous integration (CI) and continuous deployment/ delivery (CD), automation, monitoring and the important concept of self-healing.
One thing is certain: rip-and-replace update regimes are restricting business success. This is not to say that there is no place for them, only that many businesses treat them as the default strategy instead of a last resort.
When you strip out an old, outdated system and replace it with a new one wholesale, the stakes are high and the costs often enormous. You are always playing catch-up and, once the new system is up and running, it will already be behind the curve.
A sound DevOps strategy should instead be focused on comprehensive, constant iteration. A healthy DevOps team should spend around 20 per cent of the time evolving internal tools, reducing technical debt as well as improving existing solutions. Continuous review is at the heart of DevOps, ensuring you stay on top of software and systems maintenance and avoid the crisis of needing to rip-and-replace a technology stack all at once.
Plan for failure
Hardware and software failures are inevitable, so a healthy IT strategy must plan for failure. The process of self-healing is made possible through continuous monitoring and extensive automation including software and infrastructure deployment. Furthermore, the proliferation of infrastructure as a service (IaaS) and software as a service (SaaS) being offered in the cloud makes self-healing possible. This reduces the impact of downtime when the inevitable happens.
Companies such as Netflix deploy systems such as Chaos Monkey, which intentionally introduces faults in the system. Systems like Chaos Monkey ensure both the architecture and the self-healing process are constantly tested.
The human side of innovation
DevOps is as much about the culture of the organisation as it is about its toolchain and processes. The human impact of implementing DevOps cannot be ignored as it sometimes demands a complete culture shift with executive-level sponsorship. Technologies can be learnt and adopted quickly while people are often slower to change.
A DevOps strategy, therefore, must be as much about coaching as it is optimisation. DevOps will introduce changes that challenge almost all aspects of workflow - from budgets to inter-team relationships - so resistance is perfectly natural. Thus, a DevOps professional must be an effective communicator who can explain the benefits of continuous innovation – stressing cost and efficiency benefits when speaking to decision-makers, and how automation will improve productivity when coaching workers.
As well as investing in a DevOps strategy, it may be advisable to bring in a managed service provider (MSP). An MSP can save you the costs of a dedicated operations team and bring in multi-disciplinary expertise that is hard to emulate. It also removes the danger of having a single point of failure – often the case in single-person IT teams – meaning that the process continues regardless of who might leave the company.
There is no single ‘right way’ to do DevOps. What is important is that you have a deep understanding of both your company’s culture and IT infrastructure, and can form a strategy that accommodates both. Continuous innovation is not easy to achieve but, when done right, it makes your company more efficient, more profitable and more competitive.