O termo "cloud native" foi originalmente usado para descrever arquiteturas com características que tiravam o máximo proveito da hospedagem em nuvem pública. Os exemplos incluem arquiteturas distribuídas compostas por muitos processos pequenos, sem estado e colaborativos, e sistemas com altos níveis de automação para construção, teste e implantação de aplicações. No entanto, notamos uma tendência crescente para design nativo de nuvem superficial , que simplesmente usa muitos serviços proprietários de um fornecedor de nuvem e para por aí, sem revisitar a natureza fundamentalmente monolítica, frágil ou com muitas tarefas manuais e repetitivas da aplicação. É importante lembrar que as funções sem servidor por si só não tornam uma aplicação mais resiliente ou mais fácil de manter, e que a nuvem nativa é realmente uma questão de design e não um conjunto de opções de implementação.