Activities with Bernie

NDIS Worker CRM Project

Technologies Used: ASP.NET Core 8, Azure App Services, SQL Server, Azure Storage, Docker, QuestPDF

Project Overview

This CRM system was developed for my sister Bernie, an NDIS care worker, to help streamline the administrative tasks she faced daily. The application focuses on simplifying quoting, invoicing, and financial management, providing her with tools to better manage her workload.

The system was designed to be user-friendly and accessible from her phone or laptop, allowing her to easily manage her business administration. By automating key tasks and providing real-time financial insights, the CRM aimed to save her time and improve her financial management.

My sister Bernie and friend. Owner/operator of Activities with Bernie

Key Features

  • Quoting and Invoicing: Automated creation and tracking of quotes and invoices, saving significant time and effort.

  • Financial Insights: Features to calculate tax debts, summarize key financial year data (e.g., average monthly income, predicted annual income), and provide helpful reports to manage finances with confidence.

  • Rostering: Rostering for sub-contractors, clock on/clock off, progress notes.

  • Adaptability: Regular updates to tax tables and NDIS payment rates to ensure accuracy and alignment with changing regulations.

Prototyping and Iteration

  • First Prototype: Initially envisioned as a Java desktop application with JavaFX, I created a non-functional desktop GUI with Scenebuilder to get some UI feedback. I could have prototyped it in Figma, but I thought this would save time later.... but then my sister revealed a need for mobile accessibility 🥲

  • Second Prototype: Redesigned as a web app using Bootstrap for styling, and developed the core invoicing feature in PHP, JS, and SQLite. I deployed it on a Raspberry Pi 2B+ connected to her home network to allow access from her phone and laptop. She used this version in production for three months to gather real-world data and feedback.

  • On-prem deployment: Developed in ASP.NET Core 8 with an SQLite3 database and deployed in a Docker container on a Raspberry Pi 5. Despite tight deadlines due to my study commitments, I completed and deployed the final version in just two weeks.

  • Cloud lift-and-shift: Migrated solution to Azure cloud services with role-based permissions. Refactored the application to Azure App Services, SQL Server, and Azure Storage.

Challenges and Solutions

  • Understanding User Needs: Conducted interviews with my sister to deeply understand her challenges and tailored the CRM’s features to address them.

  • Performance Under Pressure: Delivered a robust, production-ready MVP within two weeks while balancing study commitments.

  • Cost and Security Optimization: Initially deployed the system on a Raspberry Pi to minimize expenses and avoid potential security risks associated with cloud services.

  • Cloud migration: Multi-user support and role-based permissions were added to the application to allow Bernie to share the application with her sub-contractors. The solution was migrated to Azure App Services, SQL Server, and Azure Storage for better scalability and security. Added expense tracking features including uploading receipts.
Azure Cloud Solution.

Impact

This project helped my sister save significant time on administrative tasks, allowing her to focus more on providing care to her clients. It also enabled better financial management with accurate, real-time insights into her income and tax obligations. By tailoring the solution based on her feedback, I delivered a practical, user-centered tool.

Future Enhancements

  • Payroll for employees.