We, in Agiliway, periodically look back at our cases and challenges we have managed to stand up to. Today, starting work on a new Drupal project, we have reminisced about the project of 2016 we carried out on Drupal 8 within half a year after its release. Back then, we were pioneers detecting and resolving issues of the young version developing a solution for a world-class fruit provider serving the markets of Europe and the North America.
Although Agiliway always does its best to deliver quality and value to its clients, this case made us feel particular responsibility as we were servicing a world-known brand with a very long history. The company wanted not only a new corporate site, but also a smart gaming platform that would allow holding an interactive lottery with custom conditions for each participating country. Agiliway set forth to choose a suitable technology and develop a high performing solution.
The key requirements to the technology that would be used for the realization of the project were scalability and superior performance that would provide a great experience for millions of users worldwide. What is more, the client emphasized the need to use the latest technology that would not become outdated any time soon. After a discussion with the client, the newly released Drupal 8 was chosen for the realization of the project. Although Drupal 8 was still new and unstable, we took the chance and chose Drupal 8 over Drupal 7 for a number of advantages the new version provided:
- Better mobile adaptation
- Improved multi-language support
- Better security and data protection
- Optimization of page load using a BigPipe module
- Simplified process of content creation
Despite all the advantages of Drupal 8, implementing a solution on a new version soon after its release posed a number of serious challenges that our Drupal engineers had to overcome:
- Technology bugs that are common for new platforms had to be quickly identified and efficiently addressed;
- Lack of external modules, which made us develop new modules on our own or upgrade some of the Drupal 7 modules to the new version;
- Lack of modules testing. The available new modules had just little testing, which made us test all new modules before using them for the project;
- Changes in performance. Performance of many Drupal 8 modules and functions differed from their Drupal 7 performance in many respects, so additional time was needed for Drupal developers to look into the changes.
Another challenging task was the development of a gamification module with custom logic and implementing advanced yet easily comprehensible and nice-looking design for recipes.
Our custom development team implemented a new corporate site with a set of advanced features. In particular:
- A gamification platform. A gamification platform was intended to become a lead magnet and succeeded with its task perfectly, increasing the traffic to the website and a subscription base manifold. Website visitors logged in on the website and submitted product codes to participate in an instant lottery. The winners were randomly selected from among the participants. The complexity of the solution consisted in the fact that the budget and, consequently, the number of winners and some rules varied from country to country. The system had to analyze whether the submitted product codes were the codes from the voter’s country. What is more, it was necessary to ensure that each person could vote only once, so that all people are given equal opportunities and the marketing campaign gets the greatest possible reach.
- Customization of social media news block. We customize the social media new block for Drupal 8 so that it displays not one feed source, but the mixture of Facebook, Twitter and Youtube feed. Additional feed appears upon scrolling. Users can expand and view all the news without living the website of the brend.
- Smart features implemented for recipes. We developed a number of smart features for Drupal 8 either developing custom modules or upgrading Drupal 7 modules to Drupal 8. These features include: (1) filtering of recipes according to meal type, preparation time, the difficulty of preparation, and user’s rating; (2) automatic calculation of the necessary ingredients when users set the number of people they want to serve with the dish; (3) ability to add the lacking products to the shopping list but simply marking them in the list of the ingredients; (4) consolidation of the dish title, photo, ingredients, and steps of preparation in an appropriate way in a ready to print out format on one A4 .
- Blocks implemented as separate components. The company wanted to be able to easily change content on the website blocks, so that they could effectively realize any future ideas or marketing campaigns without having to refer to specialists. Thus, we analyzed a big site to define a dozen of different blocks that are used for the website. Overall, we configured and implemented over 15 blocks using Drupal Paragraph modules and our custom modules. Such architecture allowed to simplify further support and let the client build the website like a puzzle inserting this or that block into the necessary page.
- Great performance. We assured that the solution works perfectly under the heavy load of thousands of simultaneous participants. Also, our DevOps team configured auto scalable infrastructure which allowed easily adding/removing extra instance when existing servers exceed a defined load threshold. This allows the client to prevent the site from going offline in cases when the number of visitors increases significantly.
The company received a highly performing website built on new scalable technology, Drupal 8. The Drupal 8 solution had a number of features substantially increasing the visitors’ website time and, consequently improving traffic to the website, brand awareness and users’ conversion. A lottery carried out using the developed gamification platform had flawless performance and made the marketing campaign a huge success.
While reminiscing over this past experience, we have visited the website of our clients and are pleased to know all the functionality we added has been retained. Furthermore, the client has obviously successfully mastered Drupal 8 and built many new sections for the website based on the blocks we preconfigured. Starting early with Drupal 8, Agiliway has long transformed it into one of its core competencies and we are ready to take up new challenging projects. Will the next one be yours?