Automated project management walks a tight rope between cost and ease-of-use. As a result, cheap/free software is a no-brainer for small businesses.
While working at Solar Universe, our project data was scattered between Salesforce for customer information, Google Sheets for project statuses, Google Drive for documents, Google Calendar for scheduling, Smartsheet for accounting and project coordination, Quickbooks for invoicing, etc etc the list goes on. Despite having the resources of a national franchise, the efficiency of modern software solutions simply wasn’t there. The tools we had weren’t being used correctly or taken full advantage of and the software we wanted to use was too expensive. No one knew for certain which projects were theirs and which needed attention. Some projects sat with no activity for weeks until someone realized they had been forgotten about. With no clear direction and process, our fulfillment speed suffered and stress levels soared.
Then I was laid off.
In retrospect, I should have seen it coming, but that’s beside the point. Enter Conveyr: the cheap cloud project manager to end the careful dance between freewares. The solution was clean, easy to use, and most importantly cheap. For the software to address key pain points it needed to:
- Guide projects to completion
- Auto-assign tasks
- Store customer info and project data in one place
Having worked with Salesforce before, I wanted to create a system where automation felt tangible and accessible to everyone. No apex code, no triggers, no workflow hell. Conveyor belts inspired me to design a similar process, where projects were boxed up and moved down the line step by step to completion. For each product or service, Conveyr would have a “belt” or pipeline that was made up of stages. Each stage had a to-do list to be completed before moving to the next stage. Basic project management: done.
At first I thought it would be nice if each employee “owned” projects in a particular stage. Accounting would have an accounting stage and then contracting, construction, monitoring, finish. As it happens, small business employees sometimes wear many hats and Conveyr needed to be able to handle that. Subscription based task assignment was perfect. Each employee would decide which projects they needed to see at specific stages. Users were presented with a list of all stages and would select which ones they wanted to subscribe to. The Conveyr dashboard would then aggregate together all the to-do lists for all subscribed stages and show the projects that needed those specific to-do’s to be completed. Auto-assigned tasks with group visibility: done.
For every piece of information to be in one place, users would have to both want and be able to store everything in Conveyr. That meant files, photos, links, comments, statuses, updates, and more needed to be accessible from the project page. If Conveyr was going to be a one stop shop, it needed to be fast and beautiful as well. I wanted to do everything in JavaScript to simplify development and have reusable code. MEAN stack: MongoDB, Express, Angular, Node.js. I’m quite ambitious and have high hopes for Conveyr, so it only made sense to design it as a highly scalable cloud application. MongoDB is insanely fast and storing data in it feels seamless and natural. Node scales beautifully using Docker on DigitalOcean. For each new client, a new worker (or droplet if full) would spin up and provision a new database. The front-end was completely separate from the back and that design ended up being useful when I later created a customer portal. Special public endpoints were setup to provide my customer’s customers with their project’s status and shared files.
One stop shop: done