Logistics, E-Parking, Offline first

Multi-Node, Offline first E-Parking Microservices-based application

The customer wanted to build a platform where users can find parking spots as per their preference i.e. cost, distance or a combination of both. Parking lots should be able to book maximum occupancy, set rules for surge pricing, update occupancy details in real time and handle pre-booking of a parking spot.
5 Months
Nodejs
PM2
Hapi
Redis
BullQ
Socket.io
Digital Ocean
MySQL
React
React Native
Github Actions

Challenges

  • Building an offline first infrastructure: Deployments had to be done on machines that run in parking lots. These could have intermittent internet failures so data had to be stored locally and a sync mechanism was built using BullQ and socketio.
  • The target audience ranged from drivers, sales execs to working professionals and a UX strategy had to be put in place to meet each user's requirements.
  • An Android and iOS application had to be built to cater to the audience within a short timeframe, keeping in mind the design constraints of each platform.
System Architecture diagram of a multi-node, offline first E-Parking microservices-based application

Solution

  • A team comprising of a senior architect, senior backend developer, two senior frontend developers and a designer were created to build the product.
  • The team started work on the design and the backend in parallel. An agile approach was followed to ensure timelines are met and the customer can give feedback early on in the design phase.
  • The team used Hapi to build a RESTful API. SocketIO for two way realtime communication between the on-site and core modules. BullQ was used to implement a queuing mechanism to streamline events.
  • The team chose React Native to build a hybrid mobile application to cater to both Android and iOS users.
  • The team built an operator portal using React.

Results

  • The team took the product from idea to production in a period of 5 months.
  • Design was done in an agile manner with a focus on getting user validation.
  • Each portal and API had automated tests that ensured the final product works reliably.
  • The team used a CI/CD pipeline for each application ensuring each commit is tested and deployed.

Engineering, design, and growth strategies
from the digital world.
Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.
We will not share your email with any third party. Newsletters will be delivered once a month.