DP Education - Web & Mobile Application

Client Details

Dhammika and Priscilla Perera Foundation

Services Provided

Web, Mobile & Desktop Application Development

Project Timeline

Continuously evolving since it's revamped launch with us in

Project Overview

DP Education had a website, and we were tasked with creating a mobile application for the learning platform. Our team took a minimalist approach, considering that the majority of Sri Lankan students from rural areas were not tech-savvy at the time. Our assumption proved to be correct, as the user base experienced exponential growth, making us the number one education app in Sri Lanka. Within less than one month from its launch, we climbed to the top 10 free apps in Sri Lanka.

At the time, device availability was limited, and connectivity was a major issue for many. Due to this, we decided to support Android versions 4.4 and upward, which led us to utilize the Android native app using Kotlin to support older devices while maintaining responsiveness on low-end devices. For Apple devices, we chose Flutter with an eye on the future. This approach benefited many students, especially considering that we initially had around 5% of Android 4.4 and 5.0 devices. All video lessons were stored on YouTube, enabling students to make use of readily available, cost-effective YouTube data plans for lesson consumption.

With this success, we were entrusted with the revamp of the website, which we successfully delivered. Their continued partnership with us for over 2 years, along with ongoing collaboration to enhance their solution, serves as a testament to our hard work and effective project implementations.

For our website, we opted for Angular. While this choice required some sacrifices on the SEO front, we believed that an Angular PWA (Progressive Web App) would deliver better performance for repeated use, and students would embrace it faster due to its responsiveness under low bandwidth conditions. In our latest, third major revision of the website, we are still using Angular, but this time, we are implementing server-side rendering and pre-rendering to facilitate SEO optimizations.

As we are servicing hundreds of thousands of concurrent users, we have implemented Node.js for the backend, coupled with a MySQL database and some robust caching strategies. In summary, this setup enables us to accommodate over 100,000 concurrent users with a very cost-effective infrastructure, typically within the range of $100 on AWS.