The blog post was authored by Kyle York, Vice President of Product Strategy for Oracle Cloud Infrastructure and General Manager for Dyn Global Business Unit (GBU)
Enterprise companies and startups may appear to be polar opposites. They compete by leveraging vastly different resources, cultures, and levels of agility. But when it comes to building and launching business-critical apps in the cloud, they’re more alike than dissimilar. If either is going to succeed, they need almost the exact same things from their cloud providers.
That’s because developers have certain needs, and (entirely justifiable!) expectations, and it doesn’t much matter if they’re working for a gaming startup that thinks it’s got the next Angry Birds on its hands or a multi-national bank. It’s also because the gaming startup probably thinks it’s going to be huge someday. If there’s any chance of that happening, they need to design and plan for success and adopt an enterprise-grade cloud from the very beginning. They need an infrastructure that is going to support business-critical applications, and the service levels and reliability required to accompany them. They need a platform focused not just on the architecture and development side, but the actual technology operations of the workload running in the cloud (see the DevOps movement). The tooling is one in the same.
The enterprise, of course, admires the agility and the automation of the startup. A startup might think it doesn’t care about security, governance, or risk. After all, it’s still trying to figure out what it’s going to be when it grows up. But if that startup is going to get through adolescence, they need to be very attuned to how their cloud is going to address these things. In other words, they, as well as their larger competitors, need an enterprise-grade cloud.
What exactly is an enterprise-grade cloud? It starts with a service level agreement that not only has the right number of nines, but is broad and comprehensive. If you don’t have guaranteed performance, manageability, and availability, you don’t really have an SLA. If you’re building and deploying important applications in the cloud, performance is only part of your concern. You also need full and guaranteed access and control over your cloud infrastructure.
Next up: Security. Enterprises are quick to appreciate the value of security, while startups might take a little longer. But it makes no sense to wait for a breach before making sure your cloud operations are completely nailed down and secure. Any team building a cloud native app needs to know how their providers will handle identity and access management. They need to understand threat detection, and how well it’s automated. Ditto for responses to those threats. With the introduction of GDPR only recently in the rearview mirror, it might seem redundant to ask about data privacy. Anyone relying upon a cloud infrastructure to run important parts of their business needs to do it anyways.
“When you’re a startup you’re fighting to win customers but also to build your reputation,” said Kevin Roe, president and co-founder, 1Echo; and a member of the Oracle Global Startup Ecosystem. “A security issue of any kind can ruin that, which is why protecting customer privacy comes first and security should be top priority for any business regardless of size.”
Related to security, of course, is governance: Who has access to your cloud infrastructure and resources, and how easy it is to organize and control them? Is it relatively simple to create groups, and then define policies to govern them?
These are all things that sound routine until something goes seriously wrong. That’s just one reason none of this should be negotiable. It doesn’t matter how big your company is, or how big your effort within your company. Every cloud native developer needs to start with an enterprise-grade cloud. Why handicap yourself before you even get going?
But developers also deserve a cloud that’s prepared to support the way they prefer to work. Developers expect, rightly, to be able to use modern, open source tools for customization and management. They don’t want to have to give up any of the tools that they’ve come to rely on just because they’re working in the cloud. They need a cloud partner that embraces open-source computing, containers, and serverless. And they need an organization that is committed to a superior end-user experience.
“Our business is growing extremely fast, therefore we need flexibility with our infrastructure,” said Roe. “Vendor lock-in limits us, so we try to avoid it. We embrace openness and interoperability and choose to work with partners who do the same.”
So how do you know if that’s what you’ve got? Well, it’s one thing for an organization to say they back open-source, but it’s another to really dig under the hood. If a company is committed to open-source, wouldn’t you expect to see them running it themselves? It’s also worth a look to see how active their engineers are in the open-source community, contributing code to open-source projects, or joining special interest groups. If there’s a change, vulnerability, or improvement to the code used to tool up a cloud, you want your provider to be the first to know, not the last.
The argument for support of containers is similar: Containers are simply the modern way to develop apps in a highly scalable way. Developers shouldn’t have to leave that convenience behind simply because they’ve opted for the power of the cloud. Support for Kubernetes, Docker, and other essential tools should be right there, running seamlessly in the cloud.
Last, everyone involved needs to care about the experience of the end-user. Most cloud native apps tend to be the outward-facing, high-traffic applications used for commerce, communications, and media. If the edge of your cloud isn’t being well-managed, customers aren’t going to be able to access your fabulous new app. Remember: Half of so-called cloud performance is actually driven by how well the edge is managed. An enterprise-grade cloud provider needs to drive the user from edge to core, seamlessly.
The potential of the cloud, after all, isn’t to offload a bunch of stuff no one cares about. It’s to greatly improve the development and provisioning of mission-critical applications; to provide speed, efficiency, and flexibility; and to allow costs to better reflect the actual resources used. Sure, some of the early clouds were stripped-down affairs. But to get the best results from their cloud native initiatives, developers and technology leaders can, and must, demand much more of today’s cloud infrastructure, whether you're a developer at a Fortune 100 or driving DevOps at the next shining startup.