How serverless reduces the cost of collaboration
Kelsey Hightower and Will Meyer discuss the practicalities of serverless computing as enterprise cloud computing grows.
Enterprise adoption of cloud computing
I’m glad to have witnessed first-hand the incredible evolution in enterprise cloud computing that’s taken place in the last few years. Many big enterprises have completed large migration efforts, matured their application portfolios, and built new cloud-native practices.
At Capital One, we’ve taken our own journey into enterprise cloud adoption. We were the first major U.S. bank to go all in on the cloud, we’re still one of the largest AWS users in the world, and all our new applications and services are cloud-native.
Like others that have leaned into the cloud and built their cloud capabilities into mature ones, we do more with our applications and data more quickly and with more visibility and more resilience than ever before. The cloud has been an incredible accelerator for our business.
The enterprise cloud is maturing, and we, like other large cloud customers, are able to draw on more and more experience. We’re all learning lessons and identifying patterns. But the pace of change isn’t slowing down. And it’s worth reminding ourselves, when you look across all enterprise workloads out there in the world, that still only a small percentage have moved to the cloud. I often ask myself, what’s holding them back?
Speaking with Kelsey Hightower, a leader in cloud authority
This is why I was thrilled to have the chance recently to host a conversation with Kelsey Hightower, a leading authority on the open-source cloud. Kelsey, who served on the governing board of the Cloud Native Computing Foundation, is a skilled practitioner and a passionate advocate for cloud computing and Kubernetes (he helped start KubeCon, after all). Our conversation was wide-ranging but covered a lot of key themes in cloud adoption, through the lens of “serverless.” We touched on managing costs and adoption, dealing with vendor lock-in, and embracing open-source.
The concept of serverless
Serverless as a concept has been around since before the cloud – how do you build and support applications without worrying about the actual servers? Though these days we often talk about it in the context of Functions as a Service, or even in terms of AWS’ Lambda in particular, we see serverless as much broader than that. It’s the continuing value proposition of the cloud. Offload the undifferentiated heavy lifting, build with higher-order primitives, get your cloud partner to do more and more work for you. Kelsey and I talked about this and even made some analogies to car ownership (“from buying to leasing to renting to taking a Lyft”.)
We're big fans of serverless, particularly because of the productivity gains. But we also talked about some of the risks. Apps need to run across different kinds of systems, and portability matters. In the old days of enterprise computing, we saw what happened when application development got too close to the machine or programming paradigm it ran on. COBOL apps got a lot of value from running on mainframes, but eventually they could only run on the mainframe. The same goes for the cloud.
We can’t let serverless become the new mainframe. We need to think about logic independently of the runtime and not repeat the mistakes of the past where we encode our logic too close to the machine.
Lock-out risk
Kelsey also made a great point about not ignoring the risk of lock-out, while most people are concerned about vendor lock-in. Lock-out is worse, said Kelsey, “If you run Postgres, and add a ton of extensions, you're going to be locked out of any other managed Postgres service.” That’s where a more dedicated approach to standardization – and embracing the shared responsibility of the public cloud – can help. Leaning into that shared responsibility model is a way to reduce stress and give your teams more time back.
Kelsey had an interesting slant, looking at it as reducing the cost of collaboration. We sometimes forget how much consensus-building goes on in establishing new platforms. Most serverless platforms, he noted, offer, “consensus in the box,” with standard ways of deploying, logging, and routing traffic. Managed platforms are often opinionated and take a firm stance on which protocols, Linux distributions, and how network traffic is managed.
“That’s the hidden value, it feels like magic to some people, the idea of being able to run a single command and have things just “work” without having to make a ton of decisions, or signing up to become a part time platform engineer is a welcome change by many developers.” Kelsey also highlighted: “The other thing that most people overlook is that modern serverless platforms tend to be based on open standards and allow developers to leverage existing open source frameworks they’re familiar with.”
A collaborative approach to cloud computing
By the time the conversation was over, we came away quite optimistic about the potential for continued “magic” through collaboration in the cloud among large enterprises, the big public platforms, and the wider open-source community. Capital One has open-sourced several of our own software tools we built along the way as we uncovered new challenges along our journey.
“I can't think of any time in my 20-year career where most companies have so much influence on the proprietary systems they're being sold,” said Kelsey. “You're no longer just taking one vendor's interpretation of a database or one vendor's idea of how to run compute. You're now having vendors actually rally behind industry standards, and it turns out a lot of the people who work at these large enterprises aren't just consumers anymore. They're also contributing to these protocols, to these specs, to these industry standards. And that's such a game changer because that's going to give you choice. The more standards we have across the spectrum, the better we all are.”
Using cloud solutions to shape the future
I couldn’t agree more. The cloud is ours to shape as much as it is ours to consume. Just look at the history of Kubernetes and how it has entrenched itself into a space often dominated by proprietary solutions. As long as the industry continues to move forward together, guided by passionate advocates like Kelsey, businesses like ours will be able to continue accelerating innovation and unlocking new value for customers.