Tech: 5 Lessons Learned from Migrations
Over the years, we have completed numerous cloud migrations, which led us to start a business to execute our vision on how cloud migrations should be done. In essence, every organisation moving to the cloud follows similar steps and often shares the same goals. 90% of organizations with a cloud migration program aim to decrease their on-premises footprint and enable DevOps teams to work with new technologies, thereby increasing their Time-to-Market. During this migration, they seek to find a balance between migrating with minimal risk, as quickly as possible, while also supporting innovation to deliver additional business value.

To help organisations avoid common pitfalls we've seen before, we've summarised five major lessons learned that we implement in our migration projects.
1. Deep Dive into Every Application
A critical step that is often skipped due to time pressure is thoroughly understanding each application. Even if you have all the technical information through assessment tools like Azure Migrate and up-to-date documentation, it is essential to conduct a workshop for each application. During these sessions, we validate the current state based on available information and apply some forward-thinking to design the future environment. Together, we determine the Target Operating Model. Conducting these deep dives in a workshop-style setting ensures everyone shares the same perspective and agrees on the solution. Skipping this step almost guarantees misalignment, miscommunication, and the omission of critical requirements.
2. Anticipate Finding Skeletons
When migrating an on-premises landscape to the cloud, you must anticipate discovering unexpected issues, or "skeletons," within your applications. These could be applications that were not initially in scope, purchased directly by the business, or involve essential backend processes— all situations we've encountered numerous times. While you can’t prepare for every surprise, it’s best to expect them. A cloud migration presents an opportunity to address these skeletons and fix technical debt, often with just a little bit of extra time.
3. Full Focus on the Migration
Migrating to a cloud environment is very demanding for an application team, particularly when PaaS components in Azure are introduced. For DevOps teams that also define and develop features for the business, prioritisation becomes a significant challenge. In our experience, when a team is slated for migration, this should be its primary focus during that period. Attempting to combine a cloud migration with the ongoing delivery of new features is nearly impossible.

4. Step Outside of Your Comfort Zone
Working with the cloud means engaging with new technologies, which might require time for engineers to become familiar with. Whether you're part of a team or leading one, it’s crucial to ensure that this adoption process is addressed and that time for experimentation is allocated.
5. Migration is the First Iteration
When migrating an application, you often move from an old stack to an innovative version, but leave room for further optimisation. During the migration, you may identify areas for improvement, but you might not have the time or resources to address them immediately. Post-migration, it’s important to view this as the first iteration rather than considering the project complete. Planning for these optimisations right away is crucial to maintain the momentum of the transformation.
These lessons should be considered when planning your cloud migration to ensure the success of your project.
Would you like help during your migration? Reach out to plan a meeting with us to discuss how we can help you in your Cloud migration!
Your success. Our commitment.
