The cloud concept has gone beyond the initial infrastructure and platform as a service concept (IaaS and PaaS, respectively) to become one in which companies can manage these tools immediately and flexibly, thanks to their dilution through programming.
This has allowed for the design of a new generation of applications with strong technical requirements (flexible scalability, incorporation of new technologies, real-time response, observability) and business requirements (fast turnaround times, easy pivoting).
Native cloud applications exploit these capabilities and enable us to design solutions quickly and sustainably with microservice-oriented architectures and using the specialisation of each PaaS tool.
We can design applications with two different strategies:
- Cloud-dependent. These solutions take advantage of the manufacturer’s specific tools, which initially give us a lot of speed but generate strong dependence on these parts, which are often non-standard.
- Cloud-independent. These solutions are mainly based on open source software, which gives us flexibility and independence and the possibility to build multi-cloud and hybrid solutions.