A company's decision to move some or all its workloads to the cloud is often a difficult one to make, especially in overcoming any institutional fears of data loss or improper security setup. After making this decision, the next step is to evaluate the best cloud provider for the organization's development workloads.
Once an organization has made the important decision to move solution development to the cloud, whether wholesale or simply starting a Proof of Concept (PoC), the next major step is to evaluate which cloud provider(s) have the capabilities and features your development organization requires. This analysis should be driven by the type of development features available, current or proposed coding languages, and any cloud services already being utilized (e.g., email, productivity applications, business intelligence, etc.). Once completed, this analysis can become an enterprise development guideline detailing out the best cloud platforms for different types of implementations.
For cloud development solutions to support an organization's Software-as-a-Service (SaaS) based application integrations, an enterprise-class provider is needed as the backbone of the many REST-based API data transfers needed. These workloads may support data integrations between core applications and subsidiary systems that reside in either the cloud or on-premises, as well as any future API-based applications that may be developed.
After documenting the organization's current and proposed development requirements, including whether to utilize cloud Infrastructure as a Service (IaaS) or Platform as a Service (PaaS) models, a review of any current cloud provider usage in the organization should be done. One of Hylaine’s consultants recently published a great article around Cloud Migration Strategies on existing applications (https://www.hylaine.com/post/cloud-migration-strategies).
As an example of possible discoveries, the usage findings may show that one provider is already used for authentication and office productivity applications, where another may be currently utilized for server hosting or Big Data storage. Expanded usage of an existing cloud provider may allow for economies of scale, improved resource usage, and lower costs than other providers.
One thing to note on a Multi-Cloud strategy is that by spreading out usage and/or applications between multiple cloud vendors, enterprises may miss out on potentially enormous cost savings by fully utilizing just one platform. Organizations should use cloud-agnostic tooling (e.g., containers, supported data engines, etc.) and then choose primary and secondary clouds, with the latter usually only for Disaster Recovery (DR).