Quickbox is one of the largest private fulfillment companies in the US. As a fulfillment operator, Quickbox leverages SaaS solutions for a significant portion of their operations and has not had a dedicated technology team in house. As their business scaled, the Quickbox leadership realized that technology inefficiencies, friction points, and vendor relationship were limiting the company’s ability to scale. This led Quickbox to reach out to Commerce Architects for assistance. Commerce Architects was able to engage and help Quickbox with both IT leadership as well as implementation of custom cloud native applications to provide process and operational efficiencies for the business.
Through a combination of broad-based Information Technology reviews, understanding of Quickbox business processes, and assessment of current technology solutions, Commerce Architects developed a comprehensive roadmap of IT changes as well as Cloud Native applications to increase the efficiency of the business.
Commerce Architects stepped in to provide both internal coordination and to be a point of contact for external vendor relationships. Acting in a contract CTO role for Quickbox, Commerce Architects was able to drive focused conversations with vendors to establish clear communication channels and deliverable timelines, ensuring that those relationships functioned as a partnership moving forward.
A number of areas were identified in the work with Quickbox where custom development could provide efficiency in both business processes and operational work. These projects were defined on a roadmap, aligned with Quickbox leadership around the value they would bring, and then executed on. Some of the projects undertaken with Quickbox are detailed below.
SaaS Provider Log Ingestion
One of the major technology vendors for Quickbox agreed to provide daily exports of log data from their REST and SOAP API implementations where it related to Quickbox. We worked to import and structure this data so that it could be tracked and reported in order to track the performance of the SaaS provider. This solution was implemented using AWS Glue pipelines to ingest the data and import it into a reporting location that was available to the Quickbox Business Intelligence team.
Figure 1: Log Ingestion Architecture
Migration to AWS
This project involved consolidation of various custom solutions, delivered across Rackspace and Digital Ocean, into a common AWS environment. This was done as a cost neutral transition, but provided significant improvements in the flexibility of implementation, centralization of data, as well as better control and ability to adjust these solutions over time in a single cloud environment.
Figure 2: Quickbox Custom Applications AWS Migration
Postal Data Migration
As a third party logistics provider Quickbox has a common use case of passing the shipping charges that they get from carriers through to their clients. This process is based around files that are sent from carriers on a weekly basis. These carrier files need to be processed with different rules based on the structure of the files such as surcharges that need to be attached back to the shipment and other unique carrier formatting. These files were processed via AWS Glue processes and then the resulting postage charges and associated shipment information was stored in an RDS MySQL database. The following diagram presents a high level of the data flow and AWS components used in processing a given carriers data file.
Figure 3: Postal Data Process Flow
A critical process for Quickbox from a cash flow and customer satisfaction standpoint is their customer invoicing. They invoice customers for shipping charges on a weekly basis and that process was very labor intensive and could take up to 4 days to complete. Through automation using AWS Lambda and the data from the previous Postal Data Integration project we were able to generate both draft invoices in the General Ledger as well as create backup data that needs to be provided to customers to support the invoices and store that in the accounting departments sharepoint location. The following diagram shows a high level architecture of how this invoicing solution functions.
Figure 4: Customer Invoice Creation Process
This process involves a number of valuable technical features. First the data processing lambda approach uses an asynchronous fan out to process customer data in parallel. This allows the number of customers that are being invoiced to increase without causing an issue with the process timing out becoming overly time intensive. Second both the General Ledger import and the data processing lambdas use a dead letter queue and retry process to provide as much resilience as possible. If the processing does end up failing due to some unrecoverable issue then an email notification is triggered so there is good visibility into the status of the invoicing process.
This process automation allowed the Quickbox invoicing work to go from a heavily manual and sometimes error prone process to approximately 4 hours a week of verifying invoices in the General Ledger and processing and sending invoices to clients. Further automation around the actual transmission of the invoices would also be possible in the future to further streamline this work.