Hacker News new | past | comments | ask | show | jobs | submit login

As znowi mentioned, don't bother charging hourly or daily or any period of time.

The client will ask for a specific thing to be done. Give the client a specific price for that thing. That's it.

How you calculate that is your business. Personally, I figure out the worst-case scenario and price it for that. If I finish earlier, because of my brilliance, well we can just call that profit.

You're happy because you just finished something high quality and in good time. The client is thrilled because they knew what they were going to pay, got what they wanted, and got it quickly and professionally. The client didn't have to worry about hourly rates or daily rates, unexpected surprises, etc. they knew what they were going to pay. You took the risk out of the transaction for the client and made a good amount of cash for yourself. Everybody wins.




I like project-based billing but a lot of people don't, because it exposes them to risk (scope changes, unexpected complexities, client downtime) that they can avoid with time & materials billing. A weekly rate is, to a customer, pretty close to the same interface as a project rate, so if you're thinking about charging project rates, consider weeklies instead.

Also remember that part of the idea of upping your billing increment is not accepting piecemeal work.


I'm interested to know how you manage the risk inherent in project-based billing.

In my experience it is simply unworkable: the client will provide the vaguest of specifications and providing them with a set-in-stone price raises unrealistic expectations. The requirements are simply too fuzzy at the outset of a project to be able to price it accurately.

Of course the solution only becomes more concrete as the project progresses and requirements change and crystallize based on feedback. This is expected behaviour of course, but I've never been able to reconcile it with project-based billing.

Do you simply allow a certain buffer zone and take the good with the bad?


I'll just quote myself: "Personally, I figure out the worst-case scenario and price it for that."

Experience helps with the above. Obviously you can never know precisely how much effort something will take. Stuff comes up. Even if the work itself is stupid easy, it might take you 2 hours to find the exact line of code that needs to be changed and sometimes it takes 5 minutes. And you never know which is which. So charge for 2 hours.

> the client will provide the vaguest of specifications and providing them with a set-in-stone price raises unrealistic expectations.

Clearly define the parameters of the project. Clearly define what you will do. Don't do any more or any less than that.

If the client needs something extra done, and this happens, simply price that out separately.

> The requirements are simply too fuzzy at the outset of a project to be able to price it accurately.

Example?


I agree. Experience and clearly defined parameters and contract goes a long way in project based billing. If requirements are fuzzy then we developers need to help the client to make them clear by asking the right questions.


Look, I am a developer from India. An above average developer by Indian Standards, but the problem is most Indian clients are also below an average client. They dont know what exactly they want. This ends up increasing number of iterations, which is ok. But then I have never experienced a client appreciating these iterations.


There are significant cultural differences between how business is done in the West and in India. I talked about this in another comment.

I don't want to give you advice one way or another, because I'm not Indian, so anything I would say is bullshit. Talk to some developers in India who aren't just above average, but are in fact, stellar. Some of them are probably making good money. Ask them what they do, they'll be able to give you the best advice for the Indian market.




Join us for AI Startup School this June 16-17 in San Francisco!

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: