Objectivity, a bespoke software development powerhouse, was partnered with Tricity Food Bank to deliver solutions to two of its core challenges - extracting information from supplier notes, and managing beneficiaries and social stores data. The Food Bank’s staff and volunteers spent many hours manually entering data into spreadsheets and creating reports. It was time for a change. That’s where Marcin Pilarczyk and his team stepped in. We spoke to him to find out more about the two projects that Objectivity was involved in.
It all started when Jacek from Tech To The Rescue contacted us and said he had a potential project for us. He needed to check whether we had the technical skills to carry it out. So we read the project brief and found out that we did. We then set up a call with the food bank’s management team so they could give us more information about the exact project requirements and we took it from there.
I’m a Tech Lead at Objectivity with a particular focus on low code. In this project I was acting as a both solution architect & developer - so essentially looking at the pain points and needs, and developing a technological solution that would help address them.
We found out that there were two main challenges. The first was related to text processing and the automatic extraction of particular data from supplier documents. We had to brainstorm how to address this problem using the low code solutions in which I specialize.
The second challenge required building a CRM-like system for managing the data held by food bank outlets. This was designed to support people responsible for handouts, so that they could get a better overview of how food is distributed, therefore making it easier to create reports for local authorities. Previously, all data was managed in Excel spreadsheets, but this proved not to be scalable, as increasing numbers of outlets opened. Here the solution was fairly obvious, and we had the technology we needed to make it happen.
It’s important to note that we initially only worked on the first project, purely for resource reasons - we lacked the capacity to take both projects simultaneously. However it turned out that the data project only took a week. I worked on it with the help of a second developer, Radosław Ciszewski and a data scientist, Marcin Faber, who helped us write the script for the text extraction.
We promised the food bank team that we would work on the second challenge as soon as we had some more capacity, and that is now the case. We are currently working on the CRM solution with a team of four. So far, the project has taken about a week, and I think it will likely take another 2–3 weeks to finish. Overall we have managed to create a team of six specialists that worked alongside me: Natalia Zuzak - Business Analyst, Hubert Szczepański - Team Leader/Developer, Radosław Ciszewski - Developer, Karol Żemieniec - Developer, Michał Kubica - Developer.
Yes, actually. Julia Bystra, who is responsible for data extraction at the food bank, wrote to me that it took her three hours to process the data in April. Previously, the same task had taken her several days.
It was a frustrating issue for her, related to the way one of the biggest food bank suppliers produced its delivery notes. The problem was that often the wrong information ended up in the wrong fields. For example, weights were mixed up with quantities for certain food , making it difficult and time-consuming for Julia to add them up.
Our methodology automated the process for her, extracting all the right figures from various places in the document and summing them up. The manual process was entirely transferred to a web app.
Sure. We have used Power Platform, Microsoft's low-code platform to build frontend and automation. We also used Azure Function to host API that can extract weight from products descriptions. The function is built in Python, and uses libraries for natural language processing. We also use Azure’s Form Recognizer, specifically to extract dates and numbers. In Power Platform, the user can easily perform a final, manual check to make sure that the output looks accurate and that there are no bugs in the process.
Photo: Solution architecture on the courtesy of Objectivity.
Yes, mainly the fact that there are suppliers who still use manual delivery notes. This is actually more widespread than any of my team members imagined! This lack of digital infrastructure means that it’s impossible to integrate deliveries with food bank systems. And I think that we can all agree that food bank employees could spend their time doing much more productive things than manual data entry.
The other, more positive thing that surprised me is how much Microsoft gives to charities. They get a lot free licenses and subscriptions to Microsoft products, such as Azure, which means that many of their internal processes can be easily automated.
Yes, so this is about the rules for allocating food in food bank outlets. Each outlet has to ensure that there is enough food for everyone, and it has to limit the amount of products it can distribute to each individual. This is done through a token system. So each registered beneficiary gets 200 tokens per month, which are assigned to different products. For example, meat gets 20 points, sweets 50 points, vegetables 10 points and so on. The points are based on the weight of the product.
All of this information was managed in Excel spreadsheets and, as previously mentioned, it wasn’t scalable. One of the issues was the fact that there was no central data point for the different outlets, which unfortunately led to people unfortunately abusing the system. They would go to one outlet where their points were recorded in a separate spreadsheet, and then move onto the next one and start the process there. In this way, it was difficult to keep track of what a single person had taken.
The food bank also had to create regular reports for the local authorities and that was done manually. It was extremely time consuming. There was also no mechanism for data validation - many people used the Excel spreadsheets, and there was always a risk of manual input mistakes.
Yes, definitely want to stay in touch, and whenever we have availability, we’re ready to help. It’s also no coincidence that our solutions are low code, because that means that we can both quickly implement them and train the food bank’s internal team, so that they are able to self-serve in the future.
I feel like this project has a much bigger impact on people. If our work means that the food bank can operate more effectively and that its employees can focus on higher value tasks, then I believe we have achieved our goal.
Thank you Marcin, and the best of luck in your future endeavors!