Mikołaj Król: Thank you for such a warm introduction. Yes, it is true; at BitBag, we have done more than a few replatforming projects. So it’s safe to say that we have quite a lot of experience in that matter. The amount of such projects also shows that migrating to Sylius is a common need in the modern eCommerce market.
S: Time for the big question: When is the right time for replatforming?
M.K.: There are a few signs telling businesses that it is a good time to replatform. Probably the most common one is when the business is limited by the technology it uses. This usually happens in the cloud business. Once the ideas coming from sales and marketing teams cannot be turned into reality due to technology, it is time to look for something new. The next case is start-up businesses that grow rapidly and thus need a platform that will scale with them. We love working with this type of customer because you get instant feedback on what you’ve implemented and how it does impact the business. The third sign that it is the right time to re-platform, and probably the worst one, is when the eCommerce users notice something is wrong. For example, their private data is vulnerable, the third-party integrations do not work well, the data they provide is inconsistent and processed in an uncontrolled way.
S: Thank you, I think that answers the question perfectly. So how does one prepare for replatforming?
M.K.: This is a huge topic. Some time ago we wrote a blog post about the process based on Magento 1 to Sylius migration but it’s similar to every platform.
First of all, you should think about the scope, what your customers are accustomed to, and you really should take into account their habits. Changing those things drastically might not be the best solution; on the other hand, replatforming is the perfect time for improvements. It’s a great opportunity for the customer to think about what is good in their current platform and what should be changed. The second thing and also probably the most challenging one is gathering the data about the products, orders, and customers. Once that is done, it’s time to prepare the setup, establish project goals, and separate it into parts. We usually prefer calling those parts sprints and conducting the project in an Agile way and I would strongly recommend doing so – IT projects are quite complex and variable so when the only constant is a change, you better have a good process to handle what’s yet unexpected.
Next comes the eCommerce vendor’s core customizations, plugins setup, User Interface, and User Experience paths design, front-end development, etc. Choosing the right hosting provider is also a very important step as it determines the quality of our web store’s accessibility. Finally, it’s important to remember about Quality Assurance and proper testing before launching your platform – it is usually a good idea to launch the first version for a specific customer group to get the feedback and know what needs to be improved before the launch.
S: And what are the main challenges when changing the platform?
M.K.: Probably, the main challenge would be to deliver the MVP that corresponds to all of the customer’s business needs and leaves them satisfied at the same or even higher level than before. That’s when you know you did a pretty good job.
S: What kind of skills should the development team have to carry out a successful replatforming?
M.K.: It depends on what you have been working on before. PHP language drives around 80% of the web. As you can imagine, there are different types of software vendors that operate the web and eCommerce. Not every vendor has the same quality of codebase as Sylius or even Symfony itself. If the development team doesn’t have bad habits, I would say they are halfway there already. However, being experienced at testing BDD, TDD, which Sylius is so famous for, is very helpful. In almost every eCommerce case where there is a lot of data, I would say knowing Elasticsearch would be very beneficial. That’s pretty much it. Of course, reading about how to be a good Sylius developer is always a good idea. You can visit our blog for some helpful materials.
S: In your opinion, what kind of eCommerce projects Sylius will fit best?
M.K.: That’s a tricky question, and we’re asked this question very often. Sylius is not for eCommerce newbies, that’s for sure. It’s not a solution where you can set up your store with a few clicks from existing pieces. It takes time and development skills, especially in the first stage. However, it pays off in the long run when you are looking for flexibility and easy scaling. It fits perfectly Small/Medium Business and enterprise size B2B and B2C companies. Thanks to Sylius flexibility, we also have quite a good experience creating multi-vendor marketplaces or SaaS solutions, where Sylius is being used as a headless eCommerce component. To sum up, whenever your needs are more sophisticated that scales easily and you need an eCommerce platform that lives up to your strategy for years, Sylius is the way to go.
S: What did you learn from the replatforming projects you did? What are the lessons for your clients?
M.K.: People always say that replatforming is challenging, but with Sylius, it’s a little bit different. Suppose you have a good team that knows where they’re going with the project. Don’t think about technology as something that makes your life more difficult. Simply follow the good practices of the community – which in Sylius is very strong and helpful. That can give you a very good end product which may last years. In other platforms, you usually have to repeat the process every five years, which is not very effective. We’re happy to be working with Sylius because of how it grows with the customer, that is also why we’ve decided to invest in it in the first place.
S: And we are more than happy to have you. Would you like to add anything?
M.K.: If you want to know more about Sylius or have questions regarding replatforming. Visit our website, read our blog, or even reach out to me directly on Sylius Slack. And of course, check our Github for some great open-source Sylius extensions that are usually must-haves in every Sylius project.