Continuous Delivery Evolution – Adam Frank, Armory
Adam Frank, vice president of product for Armory, explains why continuous delivery will evolve into a cloud service.
Transcript
This is texturing TV. Hey guys. Thanks for the throw.
We're here with Adam Frank. Who's BPU product for Armory? We're gonna be talking about continuous delivery as a service and welcome the show.
Thank you. Thanks for having me like. Forever in a day we talked about CI and CD as if they're one thing everybody pretty much thinks that there are somehow some natural extension of each other.
But as of late, we've been talking more about CD as its own distinct category. So what ultimately is going on here. What is the relationship between CI and CD in your mind?
I think people are starting to realize the inefficiencies that they've built onto CI CI is really about the the integration of multiple processes around security scanning and builds and and all that kind of good stuff and they really kind of built a lot of scripts and and things necessary to do that delivery do that deployment piece. But as they start to scale out as their organization starts to grow as their team start to grow it becomes quite brittle and falls apart. So they really start to understand that my CI might be working well, but I need an actual solution a point solution to do the actual delivery to do the deployment of this especially when it comes in to needing Advanced strategies, like blue green and Canary deployments where you really want to leverage the ability to assure more of your customers experience and and roll out with a lot more control.
A lot of the people I talked to are not doing anything that remotely approaches automation when it comes to CD most of it is still manual. And the reason for that is from their perspective all the platforms are snowflakes and they're all individually different. So it makes it difficult to automate are we getting better at that or what's your perception of what's going on here in terms of the maturity curve for CD these days.
Yeah, I certainly think so and you know one of the what are the primary drivers that we had going into creating continuous deployment as a service was we wanted to meet customers where they work we want we don't want them to have to migrate. They spent a lot of time effort and money into the tooling that they do have they've set up their code and repos and a certain way. We want to be able to work with everything that they have set up.
So we really manage the promotional lifecycle across multiple clusters and environments and we know we don't need you to set up your repos and have You know single branches to one certain environment or anything like that. We want to make sure that we can deploy those multiple kubernetes manifests together and jointly and decide whether to roll back, you know, just as you want to do as it is today. And what exactly do we mean by CD as a service these days because sometimes people are like, well, it's all integrated and we'll drop it on your platform other times.
They mean it's a cloud platform and I invoke it through some sort of console and API. So what's your definition of as a service these days? And definitely a cloud platform that you know, we host we don't we don't want to have to you know, have you upgrade anything or manage everything across different clusters.
We want to take care of deploying new features new functionality and maintaining, you know, at least three nines when it comes to uptime. So everything is readily available for you and working just as you suspect it expected to want to kind of take that away from from the user so they can focus more on building that competitive advantage through their software and and you know, what's what is most meaningful to their business because CD is something that is necessary and really is the center focal point in our opinion for converging devops and having a much better customer experience, but that's not everybody's core competency. Everybody's creating, you know, there's thousands and hundreds of thousands of apps out there that you many many different things and that's really their core competency and Games, you know where they'd have their competitive advantage.
In this CD platform is this one you built yourself or you're using open source projects or how does it work? Yeah, this is something that we we built ourselves. We've worked many years with really the top companies the top the lead development teams across the globe and we've learned a lot from them, you know, we started out with leveraging Spinnaker as the open source project and and really working with a lot of the companies that are leveraging Spinnaker and we learned that there is definitely a need for companies out there that have a more points or need a more points Solution.
That's a simpler. User experience when it comes to deploying to kubernetes. So we've built this ourselves based on all of the knowledge that we gained over the years working with a lot of the elite development teams across the globe.
Do you think there's a lot of organizations that might Embrace devops workflows if they don't have to master all this infrastructure and in some ways the infrastructure that we present them with is someone intimidating. Yeah, I think so. I mean there's you know developers and Engineers.
They really love to they really love to take it. They really love to build. We really love to figure out problems.
But when it comes down to it, the the problems that we want to solve is are really the problems that help our business and again compete complete that that competitive advantage that we have with the software that we are creating. So I think when it when it comes down to me look at the developer landscape, the amount of tools that are out there we start to bring some of those together and try to build all of this yourself. It really does become quite daunting and the amount of infrastructure that's out there today.
That we are actually deploying to again. It becomes really really daunting when you need to understand everything from from top to bottom. So we want we want our customers we want to developers of our customers to really focus on the actual coding and and less on the deployment.
So again, that's why we we had this mentality of let's meet them where they were no migration required how to have their code set up. They have their repos set up, you know, we'll meet them right there and we'll take care of all of the advanced strategies that they need to so they can rule out with control and just have things work just have the plans work. I don't know how many times we've talked to developers during interviews and ux interviews and surveys and things like that and they they don't they don't want to necessarily know all of the underlying and infrastructure and how everything works.
They just want to write their code and they want their deployment to work. Sometimes when I talk to the cloud native folks, they're like, well, it's only a matter of time before kubernetes solves this and all other problems. And basically they're saying you ever standard API now that will run on all these different platforms, but my sense of things is that we're going to have monolithic apps for many many years to come.
So are we gonna have to balance microservices and monoliths and that's why we need some sort of other layer of abstraction. Yeah, I think so and the When you look at really large organizations the amount of time that it would take for them to convert all of their monolithic apps to microservices. Sometimes it doesn't actually it doesn't actually make sense for them.
There's not actually the reward with the effort the amount of effort that needs to be put in. So there are very very valid use cases to maintain some of those monolithic applications. So it's it's of no surprise and we look across history.
I mean we still have you know large fi is a large organizations leveraging mainframes, you know and everything in between a Mainframe to kubernetes and for a lot of valid reasons all of those Technologies still exist, and they do still leverage them. So we absolutely need to maintain and have that stance that want to look like applications will exist and we do need to make deployment and and maintenance of those easier as well. But our focus with CD as a service it's really around kubernetes and helping people deploy there.
It seems like to me at least the pace at which applications are being built and deployed is increasing dramatically, especially with low code and no code tools. So are we approaching some sort of existential crisis on our ability to keep Pace with all those applications that all want to be deployed the same time? I don't think so.
And you know again that's one of the reasons that that we we created this we're seeing that that exponential line where people are deploying more applications. They need to deploy faster. They're time to Market is is really again comes back to their competitive Advantage can they get their quicker than their competitors?
And we need to enable that we need them to be able to deploy to multiple environments leave them to be able to deploy most have multiple deployments leveraging. Um, multiple Canary and blue-green strategies that that roll out independently and and can jointly decide whether they want to proceed or roll back and you know fundamentally, that's what we've wrapped inside of CD as a service is the ability to do that across multiple environments multiple deployments. And again, we just we meet you where you are.
So you have your code set up the way that it is and and you know, we don't require you to to change anything there. Where will security manifest itself in this process around the CD side? Is there some place to inject some sort of review or what's your sense of devsecops in CD meetwear?
Absolutely. No question security is in again and what I'm in our opinion one of those kind of three main pillars that everybody is is as the top of mind and is trying to achieve so there is absolutely hooks into security scanners. We can have manual approvals and have automated approvals.
Those are always going to exist. We want to make sure that the security scanners and any security processes that are present today again can be automated and help move things along quickly and continue with that deployment for frequency increase that's employment frequency and getting those applications to Market as fast as possible, but as secure as possible and with the best user experience that our customers can Ultimately, do you care what the CI platform is that people are using I mean, can we separate these decisions where the CI is driven by the development team and the Ops folks are more focused on the CD. Is that how it's going to kind of be Loosely coupled but somewhat separate.
Yeah, I mean we don't care what CI platform what CI tool is being used that comes back to meeting where you were and the time and effort that you put into your tooling. We completely understand that so we don't want you to need have a need to change any of that. But I think one of the big things that we're seeing is with really small companies that are starting out you typically have one of the developers within your team that really starts to take control of the entire CI and CD process that has seemed to more into a platform engineering team.
They kind of manages that and provides a service out to the development teams that they work directly with so that's kind of a, you know, a big Trend that we've seen across a lot of our customers. is that platform engineering team that takes care of the the end and cicd along with a lot of the site reliability needs the the monitoring the observability and things like that as well making sure that that is there for for their development developer customers, but so I don't necessarily think that CI is separated out from CD between different teams, but But you know, we certainly need to to make the CD aspects easier and and you know, we believe that we've absolutely done that. Right, we hear a lot about AI just about everywhere you turn these days.
So yeah, we do you think AI will be applied to CD someday, and if so what might it look like. I think there's definitely aspects of AI under the AI umbrella where we can leverage statistical analysis. We can leverage machine learning to help automate some of these processes again.
We want to make sure that The the process is moving along as fast as possible. But making sure that the the applications are are available. They maintain that availability.
So they have that controlled deployment out to a percentage of the environments. So there's areas that can start to Baseline and and monitor what certain metrics look like and those metrics are going to mean something different for you. They are to me depending on the application that we are working on as an example.
So our customers know the metrics that they track so they can maintain that that could customer experience trying to get ahead of it have that proactive approach and if they are rolling out to 5% 10 20 and things start to deviate from that Baseline then maybe they can start to implement automated rollbacks. And you know, we absolutely give that ability. So there's there's definitely places that can Ai and you know things strategies under the AI umbrella that can take advantage of things like that.
So I think There's lots of rooms to continue to automate the deployment process using using certain AI techniques for sure. Once the one thing you wish people knew about CD or appreciated about CD before they get started as you look at a lot of new customers they come in and what's that one thing that you go? Wow, if you guys would just do this you'd be further down the path.
That's a great question. I think it's it's really about educating people that CD and CI are different things and you don't need to you don't need to just bolt and build something on the CI process that you have. You know, there's there are there are things out there that are already provides.
They're CD as a service is a main example that will will significantly help you with your deployment. And that's that's really the the big thing that we need to educate people on is that CI and CD are different and in our opinion CD is is been you know talked about us that last mile technology to really help people automate their end and process and get it out there, but it's really the beginning for us because it's it's at the center. It's the core of making sure that you know, things are stable customers are having the agility that they need to move and security is wrapped up in there and you know, those three things right there.
Our opinion have the all the all the things needed to make a really really great customer experience for our customers that are delivering their software to their customers. Great. Hey Adam.
Thanks for being on the show. Really? Appreciate it.
Mike. Have a great day. All right back to you guys in the studio.