Almost 5 years ago, while I was working as the lead Sitecore developer at CA Technologies, our marketing team proposed we migrate from Sitecore 7.0 to AEM 6.0. They were looking for a more powerful, scalable Web Content Management System (WCMS) that included a visual page-building authoring environment, robust workflows that could enable them to create and publish content faster, a more powerful asset manager, and improved personalization and analytic capabilities. We were also on-premise with our Sitecore instance, so our team welcomed the idea of moving to the cloud. Marketing’s rationale was very compelling, and industry analysts supported their selection, so we agreed to partner with marketing and make the switch.
The reaction from our Sitecore development team was predictable… we were terrified. Our team had several seasoned Microsoft .Net C# developers with extensive Sitecore experience and making a leap to an Apache Java-based technology was frightening. After all, we had become experts at the tedious task of upgrading our web configuration files with each new version of Sitecore! Just kidding… but our team felt very comfortable with Sitecore, so the prospect of leaving for a new WCMS was scary.
Most notably, switching from Sitecore to AEM meant switching from C# to Java. Fortunately, we had switched from VB.Net to C# years before, and the C# syntax was created to be more Java-like, so the learning curve from C# to Java was minimal. Also, AEM and Sitecore share many similar WCMS concepts, such as layouts/templates and component/renderings, which helped both our development team and marketing with the migration. Marketing was already familiar with WCMS concepts so the transition was not very difficult, but author training was still necessary.
We quickly consumed the vast amounts of Adobe training that was available for authors, developers, and architects. We learned that there were many significant differences between AEM and Sitecore. Instead of working with SQL Server and IIS, were had to learn about the Java Content Repository and Apache. Also, instead of compiling .Net assemblies and copying code files to our Windows servers, we had to learn how to use Maven to compile our code and to use AEM packages to install code/content on our author and publisher instances. While we had become experts at configuring IIS on Windows servers, setting up Apache and configuring the AEM dispatcher for caching and security was foreign to us.
But as we started to learn more about AEM, we quickly became excited about many of the core AEM features, which certainly seemed more powerful than Sitecore's. Given that our Sitecore platform supported multiple sites in multiple languages, we were anxious to see how AEM would support this. We were pleasantly surprised to see that this was one of AEM’s strengths. Leveraging Multi Site Manager (MSM), Blueprints, Live Copies, and a connection with our translation provider (Cloudwords), we were able to save our authors quite a bit of time.
We also learned how to leverage AEM Workflows to align with our business processes, which made the management, review, and approval of content much easier to administer. Not surprisingly, we soon realized how much more powerful AEM's Asset Manager was compared to Sitecore (this was before Sitecore acquired Stylelabs… back when files were cryptically stored on the server in nested folders using GUIDs). Our authors also quickly realized the value of tagging content and how that would help them find content, enhance SEO, and enable dynamic personalization.
Personalization was something we had tried a few times in Sitecore, but we were frustrated by Sitecore Digital Marketing System (DMS) performance issues. Not surprisingly, personalization via Adobe Target proved to be much more powerful than Sitecore, with real-time client-side personalization managed independently by marketing and including insightful analytics to help adjust content as needed.
Migrating content was a big concern and requirement from our marketing team. Granted, we did couple our migration from Sitecore to AEM with a site redesign, which eased the migration effort since some new content and page layouts were being created from scratch, but we also had a lot of old content that we wanted to preserve. Fortunately, Sitecore structured content, coupled with APIs from both platforms, enabled us to create a migration utility that read Sitecore content and created/populated AEM content node structures with content. The key was to first create a template in AEM for each page type (template) and then use that template’s node structure as a blueprint for creating new pages. Our migration was completed before AEM introduced Content Fragments and Experience Fragments, though, which would have made it even easier to migrate structured content. Instead, we found AEM’s scaffolding structures to be very helpful for storing page-level structured content.
I should also point out that our migration from on-premise Sitecore to AEM’s cloud environment would have been very challenging without the help of Adobe Managed Services (AMS). Having a dedicated AMS support engineer oversee our implementation, provide guidance, and answer questions enabled us to quickly get up and running. Our team of 4 US developers and 8 offshore developers were able to go live with our first site in just 3 months, and the full redesign of our main corporate site launched in just 6 months. Note that this migration was done solely by our internal development team… no external partners were used. Later, we found out that this is quite unusual, as most companies do leverage external partners to build out their AEM instance. While we were able to immerse ourselves in AEM and successfully migrate, it was certainly a stressful and challenging road. In hindsight, our chance for success would have been greatly improved by working with an experienced AEM partner who could steer us in the right direction.
If you are a company looking to migrate from Sitecore to AEM, hopefully you can take solace and comfort in our experience and realize that it can be done. While we were able to successfully migrate on our own, though, I would strongly recommend working with an experienced partner who has been through the migration before. Our core development team from CA Technologies has recently formed our own Adobe partnership and would be happy to help provide guidance and assistance if you are looking at making the jump from Sitecore to AEM! Feel free to connect with me on LinkedIn, and for those in the Dallas/Ft. Worth area, we would love to have you join our Dallas AEM User Group on Meetup.