A continuous integration/continuous delivery(CI/CD) development pipeline, a microservices architecture, and a DevOps-focused IT staff: These are the core requirements necessary for running a cloud-native operation.
In this podcast, Michael Coté, who works at Pivotal in technical marketing, talks with The New Stack founder Alex Williams about current production systems and development environments for building cloud-native applications. Coté (@cote on Twitter) has been an industry analyst at 451 Research and RedMonk, and he has worked in corporate strategy and mergers and acquisitions at Dell, in both software and cloud. He was a programmer for a decade before all of that.
Over the course of this interview, Coté discusses best practices and illustrates three requirements for cloud-native development and deployment: utilizing the patterns of microservices architecture, implementing a DevOps approach, and striving for continuous delivery as the primary vehicle for software delivery.
This podcast is also available on YouTube.
He suggested that businesses should think of continuous delivery as defining what the business wants to do. “If I can deploy software more often, not only am I getting more features into production, but I can start becoming a learning organization,” he said. “Does option A work better than option B? In doing some A/B testing, you can get feedback about improving your software.”
Users of consumer software regularly witness such evolution, he noted. “There’s frequently new functionality in Facebook — things move around a lot. It can be really annoying — Google’s infamous for just suddenly changing things and confusing people — but the happy path is that you’re always learning and figuring out how to improve your software.” DevOps comes into play as a process of managing personnel that supports a continuous delivery pipeline, said Coté.
As to embracing microservices architecture patterns as a model, Coté asked, “How do you architect applications so that they can exist in that environment we are talking about … an application that you can evolve every day, maybe multiple times a day, and that has resiliency?” Adopting a microservices approach is like “having another go at service-oriented architecture,” he said, “with an emphasis on independence, and of de-coupling the services from each other,” rather than an emphasis on data interoperability.
Pivotal is a sponsor of The New Stack.