If you’re building or optimizing an agile team, focus on three things: Balancing teams, handling failures, and opening up communications.
How to explain cloud-native apps in plain English
What exactly is a cloud-native app? What do people get wrong about the term? We get to the bottom of this
How to explain cloud-native apps' business value
With completely non-technical audiences, consider using a metaphor or example system to get to that lightbulb moment about the business value of cloud-native apps. Here are three options:
1. Compare it to building and growing a business
“Cloud-native application is like designing an organization for scale. Even if at early stages you can handle everything with two or three people, this model is not sustainable for growth,” says Bobrov of CYBRIC. “You have to follow best practices for growth using proven building blocks: defining the organizational structure, implementing a hiring strategy, developing contingency plans, making sure the organization’s mission gets executed at all levels, and having a continuous feedback loop to adjust and make sure business operates smoothly. In this metaphor, ‘cloud’ is the set of proven building blocks. ‘Nativeness’ is the ability to maintain and evolve original designs in the constantly changing environment.”
2. Describe it in terms of a widely used app
If you’re describing cloud-native apps to people outside of IT, remember that they use all manner of applications and services that can be entry points for understanding the concept.
Amir Jerbi, CTO at Aqua Security, suggests explaining cloud-native as an app for booking airline flights.
Jerbi notes that just about any of the commonplace apps we use to book a flight are made up of many different services: customer login, searching for flight schedules, checking availability, checking prices, selecting a seat, entering passenger details, payment, making changes to the booking, and so forth.
“Each of these steps can be further broken down into microservices – for example, the seat selection functionality may include fetching plane type, then seating map, indicating the available seat, assigning the different price classes to available seats, making the selection, et cetera,” Jerbi explains.
With the various and familiar steps of booking a flight in hand, you can now use the same use case to explain the benefits of cloud-native development.
“As a cloud-native app, our flight booking app can run equally well on [public clouds] or private infrastructure. We can also update very specific features, fix small bugs, [and other needs] only by swapping out specific microservices components, with no interruption to the application while it’s being used,” Jerbi says. “Finally, we can also very efficiently scale it. If we see a sudden spike in people taking their time choosing their seats, we can scale out only the microservices that enable seat selection. We don’t need to spend money on spinning up more cloud compute resources to scale out other parts of the app. These are the things that make cloud-native apps so compelling, and why enterprises of all sizes are now adopting cloud-native technologies and methods to enable them to be more agile, more customer-focused, and more cost-efficient.”
[ Want to learn more about building cloud-native apps and containers? Get the whitepaper: Principles of container-based application design. ]
3. Focus strictly on what they care about. (Hint: It may be money.)
Ask Robert Reeves, CTO at Datical, how he explains cloud-native to non-techies and you’ll get a straight answer: “I don’t.”
It’s not stubbornness, however: It’s more of a pragmatic orientation to what those folks really want to know. If you’re dealing with executives or non-technical stakeholders whose focus is all about the top or bottom lines, then consider adjusting your own perspective accordingly.
“I will never ever use the terms ‘refactor,’ ‘cloud-native,’ or ‘Kubernetes’ with a non-technical person. Instead, I explain the impact of those things on what they care about: revenue,” Reeves says. “The entire point of cloud-native is to get software out the door faster so that we can engage better with customers. That’s it. Focusing on the tech of it is unnecessary.”
[ Kubernetes terminology, demystified: Get our Kubernetes glossary cheat sheet for IT and business leaders. ]