While the design phase was a challenge, a much bigger challenge was during the development phase where we had to carefully choose a tech stack that can answer to all the key features keeping in mind, user real-time updates, inter-operability, third-party integrations, Scalability, Analytics, Backup and migration, caching, operation costs and time frame.