Editor's note: The following is a guest article from Madhuri Sesha Sarma, engineering leader.
A well-executed cloud migration can result in peak velocity, productivity, resiliency and scalability.
But if that execution is lacking, sustaining cloud use can be a deal breaker on many levels. To prevent a disaster from happening, it's important for companies to be proactive and consider the role and impact of transitioning to the cloud on the engineering culture, employee satisfaction and business growth.
The first cloud migration — away from on-site servers and data storage — can be an expensive, multi-year project, depending on the size and scope of the corporate functions. Preplanning for that migration must entail a solid understanding of the business case for making such a move, laying out the plan, identifying the right cloud service provider and hiring for the right talent.
The next step is to make that transition sustainable and repeatable as the organization grows and treated as a continuum that will require consistent attention. The cloud function needs to morph along with adaptations of the product line and company growth. That can mean identifying new skill sets and talent required, hiring/training/coaching, and the ability to predict and control the overhead costs involved.
A migration to the cloud can help redefine corporate culture since it leads to the building of new teams with a different mindset. Those teams need to be agile and attentive to the financial impact of cloud transition, often developing a sense of end-to-end ownership. With shorter turnaround times at various stages of development there are also more opportunities for the team to experience success — small "wins" along the way — which can boost employee morale.
Have the right tools in place
Management of application environments is critically important when transitioning to cloud-based services. Using infrastructure as code (IaC), for example, allows for building IT infrastructure with configuration files, not as a manual process. Editing a configuration file in source control as opposed to manual change makes IaC ideal for the cloud.
Configuration as code (CaC) establishes parameters and settings for applications, server processing and operating systems. Configuration management tools can streamline that process again, eliminating manual tasks and employee overhead. Infrastructure and configuration as code tools ensure that cloud configuration is repeatable and visible across organizations.
IaC tools make certain that the history, access and "state" of a cloud infrastructure are captured in code. Use of IaC can shorten the timeline for creating a development environment. IaC also provides the ability to be "cloud agnostic" with multi-cloud environments utilized.
Shortening the developing cycle by utilizing a DevOps mindset — combining software development and IT operations — works well within the cloud environment. Investing in DevOps methodologies can help an organization move fast with agility and improve quality, utilizing continuous integration, development, testing, deployment and monitoring of software applications as part of a single CI/CD pipeline.
There is another critical aspect to consider when migrating to the cloud, whether for the first time or as part of an ongoing process: cloud spend optimization requires periodic tracking and accountability to the variable cloud spend model. Collaborative teams converge and make tradeoffs between spend, cost and quality, utilizing billing data from the cloud provider, and make more accurate decisions.
DevOps helps encourage an ownership mindset among the key players involved in transitioning to and maintaining the cloud environment. Building the spend optimization muscle early on helps ensure those team members stay aware of the bottom line cloud spending. DevOps helps encourage an ownership mindset among the key players involved in transitioning to and maintaining the cloud environment.
If cloud disaster strikes
An element of control is given up by transitioning to the cloud, as opposed to sending the in-house IT staff down to the server room to figure it all out.
A company's disaster recovery plan and resiliency strategies should identify the key team members in case of an incident, the critical processes needed for notification and recovery, and the most updated clearly defined runbooks detailing organization processes, procedures and execution tasks to bring the services back to life.
One more advantage: With those functions typically spread over multiple availability zones and regions, any outage should not bring down the entire system.
Having a presence across multiple cloud providers, especially for mission critical services, not only facilitates much-needed disaster recovery capabilities, but as a practical matter, it also provides the flexibility to negotiate better contracts with the various cloud services involved.
Ensuring a successful cloud transition
Since the initial migration to the cloud requires a major commitment of time, money and personnel, getting it right the first time can make later migration of data services and software programs that much easier, with a reliable template in place.
Here are key action items that will help ensure the cloud transition maximizes an organization's internal resources:
- Invest in mindset, ownership and culture building: Transition to the cloud is a strategic initiative that delivers agility, reliability and heightens organizational ownership of the products in development.
- Invest in spend optimization: Don’t let this become an afterthought, where the cloud is often viewed as mainly a cost cutting initiative.
- Invest in tools beyond basic cloud capabilities: Assess the upfront cloud footprint, the spending parameters, as well as projecting the organization's growing product roadmap impact on the cloud. When companies underestimate the upkeep needed, such as overseeing access and having the right talent in house to manage those cloud services, they are certain to experience cost overruns — not to mention the actual transition costs, which may take several years or more to recoup.
By taking these steps, companies can ensure digital transformation success and reap the benefits many other organizations have already realized by migrating products and services to the ever-more ubiquitous cloud.