DPD is the largest private parcel carrier in the Czech Republic. DPD is part of the international DPDGroup, which delivers 7.5 million parcels worldwide every day. DPD has understood that the emerging market demands new options and has therefore decided to provide a new product for its customers. These are DPD boxes - innovative self-service boxes into which customers can have their packages delivered or redirected.
What makes DPD boxes unique compared to the competition? They are the only ones on the Czech market that also allow you to send packages, just pay for the order via the app and place it in the selected DPD box. The recipient can have the package delivered to a specific address or pick it up from all 12 currently available DPD boxes in Prague. If the package is sent on delivery, the payment is made online by card through the payment gateway before the actual collection.
Based on the size of the project and the desire to get this unique product to market as soon as possible, DPD sought collaboration with external companies to help accelerate the plan and deliver on the expected vision.
Our team, consisting of 5 developers, a product owner, a UX/UI and a tester, was tasked with figuring out the communication between the existing DPD-core system, the HW boxes from supplier Keba and the user web application from Creative Dock.
Our next task was to create a front-end widget for e-shops, through which customers could easily search for outlets, including DPD boxes.
The challenge has undoubtedly been to properly understand the long-evolving and highly complex domain of this carrier. Simply put, to analyze and properly develop the interconnection between the current DPD-core system and the emerging DPD boxes and user web application. Another challenge was to design a robust and scalable architecture that would maintain maximum data consistency.
Communication in logistics systems is managed by means of so-called Track and Trace Events (TT-Events). It was therefore necessary to analyse and correctly map TT-Events to DPD TT-Events, or to create others that would be suitable for the newly emerging product.
We had a real DPD box in our office, on which we could test the individual functionalities of the system. Database transactions, queuing, retry mechanisms and Circuit Breaker helped us with robustness and consistency.
Overall, the project was very demanding in terms of coordination and collaboration between 4 teams (DPD, Qest, Keba and Creative Dock). Meetings of about 20 participants were the rule, however, due to the current opportunities from the pandemic, it was not a problem to hold meetings online and meet ad hoc in such numbers. One of our other contributions was the agile development we used to manage this project. Agile development and the scrum meetings that other teams participated in gave us the benefit of more flexible solutions to new requirements, among other things.
The result is a working product that you can test for yourself. Order something from the e-shop to a DPD box or try a DPD box as an option for sending your package to someone else.