Hacker News new | ask | show | jobs
by fallat 1015 days ago
> when the client has a specific, measurable problem that they don’t know how to fix (but you do)

Then the client tells you that wasn't their problem in the first place.

In the 10 years of contracting I've never done fixed rate for the reason the client never knows what they exactly want. It's not like installing a tiled floor or drop ceiling.

Being a professional means a lot of things, but fixed rate contracting is amateur hour truly. Every software dev learns this eventually.

2 comments

Which is why you have clear boxes on that fixed-rate, and stepping over those bounds means you're back into T&M billable. The legalese on these contracts needs to be quite tight, but it's a one-time expense to set that up, and it's best done properly (and updated as new edge cases show up).
Yeah I'm honestly amazed at how many software people don't get that the optimal strategy is cheap fixed price and incredibly high margin change requests.

That being said you need a good spec to do this, and that definitely isn't normally the case in software.

There is so much work out there that is cut & dried. It's not what you'd call software engineering stuff - more the bread & butter of consultants. But you really need to know the domain space to ensure you have those cutoffs (some of which might sound very limiting). About 3-4 times after you've deployed a specific solution for a specific vertical, you should be able to productize it (on 2nd and 3rd times through you're essentially spending extra effort to determine and test those boundaries for future implementations).

Often the goal of a cheap fixed price is to show how limiting that is so they know why you can't productize a fully customized solution.

In software, all problems are research and development problems. (If it wasn't, it would already be solved now.)
You would be amazed to know how many problems have been solved in software, but the client has no idea what the solution is or how to implement it if they did.