The first problem was processing. We integrated the delivery procedure into our client's workflow to work together as a unit. We agreed on a time for daily standups and refinements and decided to use the customer's Jira as a task tracker.
On the refinements, we received a scope of work for the next sprint, proposed possible solutions, identified the best one, and confirmed the development schedule.
After development, we pushed each task to the client's Git repository, then their QA department tested it and merged it with the master. Finally, once a week, store owners checked the progress, reviewed the tasks, and allowed deployment for production.
The second problem was performance, speed, and stability. During testing with GTMetrix and PageSpeed Insights, we determined the optimization strategy. Initially, it was three steps: image optimization, removing unused applications, and cleaning up the code from old apps' tails. We also discovered inefficient Liquid code in the theme during the work, which increased server response time and refactored it. As a result, the page loading time was reduced to about three seconds instead of ten and more.
After we solved these two problems, we could implement the A/B tests and on-page SEO improvements. First, our client's team performed A/B tests using Google Optimize. Each test lasted for a week and several thousands of visits so that it was enough to define the statistically confirmed best option. We integrated structure data via JSON-LD and updated the layouts and content according to Ahrefs and MOZ tools' recommendations for the SEO.
We used a Kanban methodology for the development process. Three of our developers collaborated with the client's PM and QA team. For process tools, we used Jira and Git.