- With some customers with large budgets and long projects I found that hourly quotes gives me a quick way to increase the team instead of negotiating a whole price. Say you have a team of 1 project leader, two developers and one QA and you found that you need two more developers because requirements changed, some customers just say "yes" and you are billing without too much sales and negotiation overhead.
- With agressive negotiators it's better to go to the fixed price (adding % of risk to your total).
Also when we quote by hour (indeed by days) we set a minimum budget for the project, so the customer can't reduce the project to just... three weeks, small projects can be a pain.
Because many projects we did involve reverse engineering and research we bill for that if the time required to know if a solution exists is more than 3 days and can't be solved in the pre-sales stage.
All I'm really saying is that "hours" is the wrong unit to negotiate prices in:
* $400/hour sounds expensive to anybody. But $32,000 might be cheap as far as project budgets go.
* Conceding $400 -> $350 is, first of all, more expensive than it sounds, and second of all is a concession that will last endure across all your projects. On the other hand, there are many levers you can pull to get $32,000 to $27,500 if that's where the client's budget needs to be.
At the end of the day, your "hourly rate" doesn't mean anything. Clients don't buy "hours", they buy outcomes (or checkboxes). Thinking about things in terms of your hourly rate is a good way to box yourself into bad engagements.
We obviously do a lot of reversing work too, and of course we bill for it --- it's part of the "Discovery" phase of projects that require it. There've been a few times when I've had to bust out IDA or a debugger to write a proposal, but they are rare.
$400/hour sounds expensive to anybody. But $32,000 might be cheap as far as project budgets go.
I think the use cases you describe are very different from most of us. You said you could spend upto 3 days just working on a proposal. For some of us, 3 days of billed work with one client is the average size of a complete project. Can you see then how it may not be efficient to spend a day just working on a proposal and spec'ing things?
Like you, I always believed that as a client you pay me to achieve objectives--not hit keystrokes on my keyboard. In the past two months, I've refunded or canceled three fixed-price projects where it was simply cheaper for me to end it than proceed. One of them involved over 40 hours of work when my initial estimate was that it would be a 20 hour project. I refunded the guy's original deposit.
It's easy to say that I am just underquoting. But no matter what quote I give, I feel it's rather arbitrary given I cannot invest time like you to really delve deep into the project and get a real sense of the work involved. I have gone the whole "I am not going to underquote" route and after doing that for a sample set of projects, my post-martem revealed that I was either overbilling or underbilling clients. In essence I had some clients subsidizing the other clients.
This past week I've been working on my first "by the hour" gig. I've put in over 80 hours in the last 10 days. It's been a living hell for me work-wise. But at least I know I'll be compensated for it! And fairly! There was no way I could quote this client a flat fee and c
Additionally, if someone is hiring a contractor, that contractor may have a rate of $x/hr, but the customer is most likely going to pay them monthly because it's so much easier to work larger numbers into a fixed budget.
- With agressive negotiators it's better to go to the fixed price (adding % of risk to your total).
I tend to be very careful when dealing with aggressive negotiators. Yeah, they might negotiate aggressively up front, then be decent down the line, but I've had so many experiences with 'aggressive negotiators' attempting to change the deal later that I generally price in a lot more scope creep up front, and I make sure to charge them for things like phone calls or emails; things I might do for free for an easier to deal with client. I'm also much more aggressive about getting paid on time when I know I'm dealing with an aggressive negotiator than I am normally.
The thing is, good negotiators put a lot of effort into putting you into a situation where it's expensive for you to walk away, then they ask for more work before they pay you. I've seen guys who are several months late paying ask for another milestone before they send the cheque. The key when dealing with these sorts is to stay out of situations where it's expensive to walk away. Give the person a credit limit, (you are, after all, loaning them money when you do work post-paid) and if they exceed that credit limit, stop work until you get paid.
(I think one needs to be careful here; I don't think it's acceptable to threaten to break things if you aren't paid... but I think it's completely reasonable to just stop, and in my experience, stopping work is ridiculously effective. Every time I've tried it I've gotten a cheque overnight.)
- With some customers with large budgets and long projects I found that hourly quotes gives me a quick way to increase the team instead of negotiating a whole price. Say you have a team of 1 project leader, two developers and one QA and you found that you need two more developers because requirements changed, some customers just say "yes" and you are billing without too much sales and negotiation overhead.
- With agressive negotiators it's better to go to the fixed price (adding % of risk to your total).
Also when we quote by hour (indeed by days) we set a minimum budget for the project, so the customer can't reduce the project to just... three weeks, small projects can be a pain.
Because many projects we did involve reverse engineering and research we bill for that if the time required to know if a solution exists is more than 3 days and can't be solved in the pre-sales stage.