Cloud Migration: Why It’s Not as Simple as “Just Put it in the Cloud”

Cloud Migration
Reading Time: 4 minutes

In this article:

  • Risks and benefits of cloud migration: why it’s not as simple as it seems
  • Examples of issues faced by GAP clients migrating to the cloud
  • Considerations for business infrastructure, architecture, and migration plan

Introduction – It is not as simple as “just put it in the cloud”

With cloud migration continuing to be a hot topic in software development and technology circles, I wanted to share some ideas, concepts, and useful information about cloud computing migration, drawn from my experience in providing this service to GAP clients. The truth is, it’s not as simple as “just put it in the cloud.” Sometimes we tend to think that putting something in the cloud is like Copy-Pasting an artifact, deploying it, clicking on the “Run” button and then – magic! However, there is a lot more to it, and a lot of things that we should consider before making the decision to migrate to the cloud.

Risks and benefits

Identifying risks and benefits must be the first part we analyze.

Some items should be clarified in order to get a better understanding about the risks and benefits that we will face if choosing this route. This analysis should ideally cover several of the following aspects, some in general and others in more detail:

  • Benefits
  • Costs
  • Impact on business
  • Strategies
  • Needs
  • Objectives

Some open ended questions that you can ask as you begin to explore this process in your organization:

  • What happens if we are not in the cloud?
  • How long can we be out of the cloud?
  • When do we need to start in the cloud?
  • When should we be in the cloud?
  • Can we cover the implementation and support in terms of time and money?
  • Finally, do we need to move to the cloud?

Answering these questions is not a silver bullet, but it can cover many bases in helping you make a decision.

Additionally, make sure to pay attention to the following considerations, as they can define the success or failure of this undertaking:

  • Incompatibility with current architecture
  • Data loss
  • Wasted costs
  • Added latency
  • Lack of control
  • Maintenance complexity

Specific cases

There are some specific cases that we can share from GAP’s experience  in order to extend the purpose of this article and extract several ideas from them.

Client A

Project description: Compliance and security for social network accounts and brands

Technologies: Java, Ruby, Go, AWS, MySQL, Postgres, JS, ExtJS, Squid

Cloud Provider: AWS
Type of project: AWS from scratch
Challenges and key insights: Constant changes on social networks makes the project challenging in the sense that the team needed to accommodate and have fixes quickly. Multiple connectors to different social networks, including new ones such as Slack, Teams and Zoom, with more coming in the near futures. They need to handle many different APIs with different data formats and authentication methods.

Key factor: Integration and scalability.

Client B

Project description: Compliance and security for social network accounts and brands.

Technologies: PHP, React, Angular, VueJS, PGSQL
Cloud Provider: AWS
Type of project: AWS from scratch
Challenges and key insights: Use of Vagrant in order to build and maintain a portable virtual environment.
Keep updated different environments, Production, Testing, and  Staging.

Key factor: Integration and maintainability.

Client C

Project description: Study Manager

Technologies: Angular, Python
Cloud Provider: AWS
Type of project: AWS from scratch
Challenges and key insights: Proposed architecture oriented to microservices, continuous and automated deployment schema.

Key factor: Microservices, scalability, and integration features.

Client D

Project description: Decompose of current implementations into microservices architecture in the cloud, however, DB access and repositories continue working on on-premises services in order to have the data in a private environment.

Technologies: .NET.
Cloud Provider: Microsoft Azure
Type of project: Hybrid Solution
Challenges and key insights: Microservices hosted in the cloud and on premises services that act as enablers for the cloud native services.

Key factor: Microservices, scalability, integration, and backward compatibility.

You can read about several more well-known cases around the world here  

Other factors to be considered

Assess your environment

It is important to understand the current state of the business infrastructure and how moving to the cloud will affect it. On many occasions, moving to the cloud requires a reconfiguration of the business in order to take full advantage of the new technology. Depending on the cloud solution selected, you will need to determine when the business is ready to move to a new system, and the best way to find out is knowing exactly what you have today, and what you are missing.

Determine the architecture

This is one of the hardest considerations of the strategy side. A big part of the answer to this question is in the current state of business solutions, the need to overwrite applications, and the cloud selected. An additional and no less important point is the previously prioritized non-functional requirements. One suggestion here is to have some candidate architectures and execute architecture evaluation sessions.

Migration plan

The migration plan should cover all the milestones and events that will take place during the migration project.

Start, migration, legacy handling, application throttling, overwrites, platform monitoring tools, constant cost evaluation, risk identification and mitigation, plan phases, disaster recovery, start-up and execution, people and collaborators, response times, expected end date.

Conclusion

Migration to the cloud can often be a huge step for companies that are investing in upgrading their infrastructure to save costs, increase efficiency, and expand their business capacity; however, poor analysis and little detail can trigger critical errors in operation and finances. A strategic partner with extensive knowledge in architecture and cloud computing will always be a necessary ally to mitigate any risk and take advantage of all the features that the cloud offers.

At Growth Acceleration Partners, we have extensive expertise in many verticals. We can provide your organization with resources in the following areas:

  • Software development for cloud and mobile applications
  • Data analytics and data science
  • Information systems
  • Machine learning and artificial intelligence
  • Predictive modeling
  • QA Automation

If you have any further questions regarding our services, please reach out to us.

About Luis Chavarriaga

Luis is a software architect at Growth Acceleration Partners specializing in cloud migration and optimization strategies. Based in our Medellin, Colombia office. He is a graduate of the University of Medellin, a Scrum certified developer, and a certified in cloud migration fundamentals by the Linux Academy. You can connect with Luis here.