07 Nov 2019
By Mohammed Abubakar
Customers’ interaction with your products and services are done more and more often via web and mobile applications. And because those applications only work well as a result of effective development workflows, the impact is large and directly correlated.
In this article, I explain how development workflows affect customers, and why a successful DevOps environment is essential for keeping customers satisfied and happy.
Customers nowadays expect that basic functionality of any application can be accomplished, and with ease. They want to achieve their goal — transferring money half way across the world, buying their holiday outfits, booking a cab for a night out — simply, quickly and with a minimum of confusion and frustration.
An application should enable a frictionless journey from the moment it is launched by a customer to the moment the customer gets what they wanted. As more and more customers expect high-quality software, there is a reasonable justification to switch vendors just because a competitor produces applications that are richer and higher in quality.
For example, banks all provide the same core services — savings, checking, etc. However, banking customers access web and mobile banking on a daily basis. So a bad experience, where other banks excel at great experiences, loses business. This is true everywhere (for example, cable service, transportation, and healthcare).
So how do you ensure you keep your customers satisfied and happy?
You need to constantly adapt your application to ensure that it remains as simple, easy and frustration-free to use as possible.
Organisations have to build development environments that can release and update applications faster, gather feedback more quickly, and incorporate that feedback back into the application swiftly in order to avoid the risk of poor quality applications, and keep up with the competition.
Adopting a DevOps approach to development has several characteristics that make this a reality:
One of the core objective of DevOps is to increase the rate of change by decreasing the size of change and increasing the speed with which changes can be pushed through the software delivery pipeline. This is achieved using automation, which makes provisioning development, test and production environments much quicker, enables tests to be performed earlier on and more quickly, and enables deployments at the click of a button. The higher the rate of change, the more flexible the application and the faster it can be improved.
Monitoring and Logging is a major function of DevOps that enables constant feedback on how users are interacting with new features that have been released. Are they booking more cabs? Transferring more money? Buying more clothes? This information is then recycled back into the next wave of change, allowing less useful features to be removed and more useful features to be further iterated upon to maximise utility to the user.
Great applications have the ability to respond quickly to issues, provide functionality that meets customer needs, and ensure a pleasant user experience. For an organisation to be able to ship applications like this, you need the processes to do so. A DevOps approach combined with good product design is what is going to ensure that applications are shipped faster and at a higher quality.
Think back to the worst application you have ever used and compare how you feel using that to how you feel when you use, say, Google. The difference should be clear!
In many companies nowadays, an app is the customers’s primary interaction with the vendor. Every company is a software company and constantly improving that software with DevOps is key to ensuring happy customers!