As the greatest digital transformation in world history is upon us, many companies in business for 10+ years are faced with moving their data and systems from on-premise to the cloud. Beyond just putting an on-premise server on Azure or AWS, it is helpful to know common issues and pitfalls when moving from an on premise system to a modern cloud system. As Unicom has been migrating our clients (as well as our own internal systems) to the cloud, we hope the following considerations will assist you in your own conversion.
- Proper testing is critical to ensure a smooth transition. It can take a while on the front end, and you may be anxious to jump in and just start migrating, however you won’t regret the time you spend testing out the new system before going live. No one can fully know all your business processes in detail along with all the features and options of every system you wish to use. Implementing the new cloud system on a test basis will pay dividends later when you go live. Practice every transaction in the system at least once. Test the integrations to other systems. Test reporting and re-create every report you use in the on-premise system if possible. If we didn’t spell it out clearly already…TEST TEST TEST.
- Cloud connected apps need to be reconnected and it may not be as seamless and simple as you would expect. In a recent migration from an on premise accounting system to the cloud version from the same vendor, we had several cloud connected apps (billing, payments, expense automation) which needed to be reconnected to the cloud accounting system. This would appear simple, just change the integration to the cloud version. However, we received many error messages and could not get the integration working without opening support cases with each vendor and having them change some configurations on the back end. In conversations with the vendors, they communicated to us this is a common problem during these types of migrations.
- One might assume the cloud version of an app works the same as the on-premise, just better. We’ve had a few decades to improve on software built in the 1980s, so surely all these new cloud apps should be better, right? The reality is cloud apps work differently than on premise apps. The programming languages are different, and the architecture of the system is probably different as well. Sometimes the flow of the cloud app is greatly improved, and sometimes you might be scratching your head thinking…”why in the world would they do it that way???” Be prepared for this, proper testing and training ahead of time should flush the issues out on the front end instead of being surprised after implementation.
- Data may not convert as smoothly as you’d like. Some data may not convert and need to be kept in the on-premise app for as long as needed. When we converted accounting and payroll data from on premise to the cloud, we were able to convert the historical accounting data but not historical payroll data. We needed to print out the historical payroll reports for retention purposes.
- Reporting may be more established in the on-premise app than the cloud app. You may find the cloud app has features your on-premise app may never have. The user interface is modern and easy to learn. However, the reporting is many times the last feature to be built out in the system. Reports which you’ve become so accustomed to may not be available at all. Or, they will require custom reporting, custom coding, or a separate reporting app altogether in order to provide the same information you are used to seeing.
- Custom integrations between cloud apps will incur monthly fees for life. The great thing about the cloud world is the breadth of API integrations available. If you use DocuSign, you can have that in your Salesforce with minimal effort and zero additional cost. Hubspot can be integrated with your Office 365 or Gmail account in a few clicks at no cost to the organization. What if you have an industry specific app you want integrated with Hubspot and there’s not one out of the box? Unfortunately, that will not be free, and it could require a significant effort to integrate the two. Sure, there are third party apps like Zapier, Workato and Mulesoft which specialize in this, but you will most likely need to pay them a monthly fee for life for the integration. If your app is not supported by one of those third party integrators, you may need to pay for a custom integration which will also incur regular fees for hosting the integration code on a cloud server.
- Choose cloud apps that natively integrate with each other if at all possible. Because of the cost and effort with custom integrations, when feasible use cloud apps which have native integrations between each other. These have been testing by many users before you, with the bugs and common use cases most likely worked out. These integrations are typically stable and will allow you to focus your efforts on taking advantage of the new features, rather than spending all your time getting your systems to talk to each other.
- Sometimes choosing a best of breed app that has the functionality your business needs is better than the app which natively integrates with your other apps. Although we just mentioned your best bet us usually the apps which have native integrations with each other, sometimes the app lacks the features you really need to improve your business. In this case, it may make sense to run the app stand-alone and re-key data or go through the effort of a custom integration. A recent conversation with another partner revealed they had made the decision to run a marketing automation system stand-alone, as opposed to the one that was integrated with their CRM out of the box. Their justification was the stand-alone marketing automation app gave saved them much more time than rekeying data when a marketing lead became a sales lead.
- Data backup and redundancy in the cloud works differently than on-premise. Microsoft and Google will back up your data (emails, contacts, calendar appointments, etc) in the event their data center has a data loss. However, they do not back up your data if you need a ‘rollback.’ For example: an employee accidentally deletes their emails, or a hacker deletes everything maliciously. Microsoft and Google will not bail you out in this event, which is why an entire industry is devoted to Office 365 and Gmail backup services. For financial companies under data retention regulations, these services are mandatory.
- Security in the cloud is different than on premise. Securing an on-premise environment usually involves firewalls, Active Directory policies, server logging and alerting, antivirus software, patch management, and the like. Security in a modern cloud app like Salesforce, Office 365, Slack, Zoom or DocuSign looks different. The end-user is not responsible for the back-end intrusion prevention, but is responsible for ensuring a bad actor cannot log in using stolen credentials. Zero trust strategies are most effective here. Suitable password policies, mandatory dual factor authentication (using a MFA app rather than SMS if possible), mobile device management, and regular in-app user access reviews are necessary for securing your data.
There are a host of other issues and considerations with cloud migrations, but this should cover some of the bigger headaches you can run into during the migration. If you have any other ideas, let us know in the comments below or feel free to get in contact with us to assist you with your digital transformation efforts.