How I manage my consultant and freelance projects
Besides developing Breeze I'm also a freelancer and consultant which means I need to somehow manages my clients projects. Breeze was actually developed because none of the existing project management tools worked for me. So, I'm going to give an overview how I manage my projects.
I mainly do web based software development projects (Ruby on Rails based, full stack) and most of my clients are non technical people. This means that they are usually not very eager to use complex project management tools.
Getting the client to use Breeze
When I approach my clients with a wish or suggestion to use a project management tool then usually the first feedback is not very positive. Main problems and reasons they give me for not using one:
- they seen all the system and they are too complex.
- i'm not technical enough to use one.
- it costs the client some money to use.
Breeze solves all those problems: simple to use, made for people and pricing is not based on users.
Usually it takes me 10 minutes to give a tour and overview about how Breeze works and how it will help them. Most of the clients like the idea that all tasks are on one board and always visible. This is my main selling point also - it is based on agile and lean principles and the client can see the results immediately.
Hopefully by now I have convinced my client and we can start doing the actual work.
Doing the actual work
I will create a new project for my client and give them access to it. Initially I insert all the known tasks and prioritize them according to the initial discussion. After that, the client logs in and gets an overview and they can move tasks around. Usually I use four columns to organize tasks:
- Ideas - all crazy ideas that come to mind, might not get implemented.
- Todo - tasks that are going to be implemented, usually contains sketches and mockups of functionality.
- Doing - these are the tasks that are being currently worked on. I try to minimize this so that there is only one active task at a time.
- Done - all task that are done and are waiting feedback from the client.
Sometimes I also use a column called "Live" - these are tasks that are done and also deployed to live system.
All discussion about the tasks takes places in Breeze. We do have separate Skype discussion also for longer and direct contact.
We share our documents in Google Drive (sometimes Dropbox), but most important stuff like screenshots about bugs are also added to Breeze.
I track my time under every task so that the client can see at anytime how much effort is spent on something.
Reporting and invoicing
At the end of the month I generate a report that contains only the tasks that have time entries. I export the report to CSV and send it to my clients for approval. After they have approved it I usually generate an invoice that contains only one line - the amount of work done on that month. I always send the exported CSV file to the client with the invoice also. This helps them later if they need to get an overview about the invoice.
I have some ideas and plans about how to integrate and automate invoicing in Breeze - more to come soon !
That's about covers my process of using Breeze with my clients.