views:

308

answers:

8

As a freelance programmer, it can be a good thing when you quote for 4-5 jobs and get all 5 of them. It can mean lots of money, but it also has the effect of stress/burnout, and not knowing where to start and how to get anything done. Especially when each of the 5 clients want a daily progress report.

How do you organize your time and to-do list in such a situation?

+3  A: 

Make your customers clear that daily progress reports just distract your precious time from their project. Then allocate time each day for communication (once in the morning, once in the evening) and shut out all interruptions in-between to work on a single project.

It'll be still hard, but if you can get a good day's work done, you'll have progress to report, once a week for every one.

David Schmitt
Indeed. "Are you sure you want daily reports? That's billable time, you know..."
Dave Sherohman
+2  A: 

Only 5 projects? I wish :-) It's just all about being organised, not getting too hung up on an issue that takes a long time to sort out, but isn't actually that important. The latter can be quite hard to do as a techie - once a techie gets that "itch" to fix something that's annoying them, they're like a dog with a bone :-)

The second hardest thing is probably convincing your customers/project managers that asking you how you are getting on all the damn time actually SLOWS YOU DOWN. Unfortunately, some of them may well have nothing to do other than the project you are on, and are under immense pressure to deliver, so will badget the living hell out of you :-(

A lot of folk really rate this book - I think most of what is in there is common sense, but it's a decent read.

Steven Robbins
+1  A: 

Why not setup a JIRA?

Give the customers access to it and they can check progress that way.

It would also help you manage your tasks and time.

Fortyrunner
+4  A: 

Hire other people to help and manage them. Don't be greedy:)

Yakov Fain
Not sure why this was downvoted... Subcontracting is a viable option if you want to go that way. (Personally, I don't use subcontractors, but it's often mentioned on freelancing blogs/forums.)
Dave Sherohman
This isn't offensive, it's accurate.
Giovanni Galbo
Yes, it's pretty weird to downvote the right way to do business in addition to offering jobs for other people.
Yakov Fain
+1, don't really inderstand the offensive votes.
Gamecat
A: 

Consider an interim co-ag. For example: my company Yes International Corporation does have some people that I know who give us anything extra that is beyond their current capacity and in-turn we provide them with daily report and job done that they can just forward to their client and make money in the process. Visit us on www.yesintl.com.au or www.yesintlcorp.com.au or www.yesinternationalcorporation.com to know more about this alliance. Best Regards, Andy

Andy
"Co-ag"? Google finds me "cooperative agriculture" and the "Council of Australian Governments", but I doubt either of those was what you meant.
Dave Sherohman
+3  A: 

I work in a similar situation, although I'm not a consultant. The main things I've found really helpful are:

  1. Have a list of what needs doing in 1 place, don't rely on paper lists. Use whatever method you want, i.e. web-based, spreadsheet, but only have 1 place (this is one of the main points of the GTD book mentioned in this answer)
  2. Divide your time up into discrete tasks, i.e. spend 2 hours on client 1, 3 on client 2 etc. I get myself in a complete mess when I try and do all tasks as once.
  3. Plan ahead so that you can prioritise, otherwise you can be left having to complete items without sufficient time.
  4. I make myself do less interesting tasks first thing in the morning so that I get them out the way. For some reason most "geeks" have a tendency to pick the interesting tasks first, which can be a big problem.

I'd also recommend some sort of issue/tracking system that you can use yourself and then expose to your customers as needed. I use FogBugz and it works really well, you can then send the customer screen shots or copy the list of outstanding tasks into an email (this could probably be automated, at least with FogBugz as they have an API). There's a free version for up to 2 users, see here for more details.

Matt Warren
+1  A: 

A web-based ticketing system that you can expose to your clients helps immensely with keeping track of everything, especially if you give them permissions to file and manage tickets against their projects themselves. That way they can check status details, re-prioritize things, add new bugs/features, etc. without your direct intervention.

Personally, though, I've never gotten into a situation quite like that, even when I've had several projects for different clients running at once. Whenever I talk about upcoming work with a client, I also tell them when I expect to be able to finish it and, if I'm particularly busy at the time, when I'll be able to start. Once I do start on it, I ask questions as they come up (usually by email, but I will use the phone if it's something I need answered before I can progress further) and notify them of major points being completed or if I expect a delay.

By keeping clients consistently informed of enough details to suit their needs for assurance that progress is being made, I've managed to avoid being asked for status reports for over four years of freelancing, with the sole exception of cases where there is a non-negotiable standard "you must file weekly status reports" clause - and even in those cases, the vast majority of my status reports have simply consisted of "see communication from earlier in the week".

Dave Sherohman
+1  A: 

JIRA, FogBugz, GTD?? I could add to that BaseCamp and Mantis too. But IMHO the problem is not time management. Without a picture of where you want your business to be, these great tools probably won't help much!

You have fallen into the trap of owning a "job" instead of owning a business. With only 24 hours in the day, you can only turn out so much work. I went through the burn out cycle too!

Have you read the eMyth Revisited by Michael E. Gerber?

It goes into detail about how many small businesses fail or their owners burn out. It was invaluable for giving me perspective on where I wanted to be, how to imagine my business running sustainably at a high pace, and only then I could take advantge of the tools out there.

It is one of the best small business books, and is an easy read. As coders, we read tech docs all the time, but many of us never make time to learn how "that other machine", our business, actually works!

Good luck!

crunchyt