Sometimes You Have to Fire Yourself
I fired myself today. Well, that's not a completely accurate statement. Let me give you a little background. Earlier this year Christopher Hawkins wrote a somewhat controversial post about the 11 Clients You Need To Fire Right Now. Along those lines, I turned down a freelance project today.
Was it because the client fell into one of those 11 categories? Nope. The client is completely reasonable with a project that has no reason to fail. I turned it down because I wasn't comfortable about whether or not I'd be able to deliver to the client's needs. Like many programmers I often get into the position of overextending myself. Not this time.
This time I decided not to over-promise.
This time I decided to be realistic.
This time I realized that I have enough on my plate.
This time I realized that taking on another project may cause me to shortchange all of them.
So in a sense I fired myself from this project. The good news is that the client appreciated my honesty up front instead of having it blow up halfway through. It was a tough decision to turn down work, but I'm sure it was the right one.
The bad thing with this is that you turned it down. You could be up front and also see if he would be willing to push off the project until your schedule opens up.
I "fired myself" - kind of.. and now I regret it because another project which was a 'sure thing' and had 'green lights' and 'client approval' and all the nice things working for me has all of the sudden disappeared and now I find myself with a big hole in my schedule that was set aside for a rather large project. On top of that my last week was spent donating work because I thought I was good to go with this other big project.
Now I have only 3 tiny projects to wrap up that wouldn't even cover my rent next month which is insanely cheap.
Now I'm about 5 minutes away from firing myself in the literal sense, abandoning both my web design company and my MicroISV. (unless some miracle happens again in the next week.)
Posted by: Collin | September 13, 2005 at 04:46 AM
Paul,
I've had a number of experiences like this and unfortunately, I haven't always been clueful enough to turn it down up front.
I recently had a customer who worked in a domain that I knew *nothing* about. I made that clear going in and told them that ALL copy (content) would have to come from them while all technical, design, etc aspects would come from my team. They balked at the idea, but eventually agreed.
Three weeks later, they've done *nothing* for the project while my team beat every deadline there was... even after they gave incomplete and fundamentally wrong requirements. The project imploded about 2 weeks ago.
An aggressive set of goals can be met and even beaten, but you have to have an *excellent* client willing to hold up their end of the situation.
Posted by: KC | September 13, 2005 at 09:08 AM
Paul,
Stories like this warm my heart for two reasons:
1) I love seeing developers who are wise enough to suppress their natural tendency to try to play Superman, and
2) I love seeing developers who are doing well enough to feel comfortable turning down work.
It sounds like you really thought it through and chose to deliver quality over quantity. Congratulations!
Question - did you talk to the client about scheduling at all, to see if their project's kick-off could be put on the calendar a month or three in the future? I find that about 4 times out of 10, a proposed project can be scheduled at least 6 weeks out (sadly, that means that the other 6 out of 10 are already late by the time they call me).
The only thing that feels better than not being overloaded is being booked in advance. ;)
Posted by: Christopher Hawkins | September 13, 2005 at 09:10 PM
I did bring up scheduling and the possibility of starting the project in a month or so. The client is already running a little late on the project so it will probably start without me. The good news is that I already have a working relationship with this client. He wants me involved and we've agreed that there may be small pieces that I can help him out with until I free up more time. I think it will work out well.
Posted by: Paul Dix | September 13, 2005 at 09:30 PM
That definitely sounds like a winning situation, Paul. I commented on your post in my blog:
http://www.christopherhawkins.com/09-13-2005.htm#88
Posted by: Christopher Hawkins | September 14, 2005 at 11:57 AM
Paul,
I commend your ethics for honestly communicating expectations with a client, but I suspect there are better alternatives to "firing" yourself here. For example, if you have a relationship with other software developers whom you trust, you may be able to pass the baton. Referrals between complementary businesses usually pay you back down life's road.
Posted by: Duane Gran | September 14, 2005 at 02:43 PM