Ask HN: How do you estimate projects?
I'm a freelance developer. I've noticed that despite my best intentions, almost all non-trivial projects I've estimated have ended up going over the time budget.
Sometimes this is due to unknown-unknowns, sometimes it's due to underestimating the complexity of certain features, sometimes it due to client interference, sometimes it's due to slow progress etc. Whatever the reason, there has to be a better way to create estimate to factor in these issues?
I'm not necessarily looking for advice specific to software development, but just general planning tips from people with similar experience (or who work in larger organisations). What questions do you ask yourself? What processes do you follow? How do you mitigate overrunning your estimates?
3 comments
[ 2.6 ms ] story [ 20.7 ms ] threadI analyse each task involved in a project and estimate the hours per task. When in doubt I try to split up the tasks even further. When done I add 10-20%. For me, if the price feels a tiny bit too high it's usually fair for both me and the client.
If I get good ideas for extras I propose them to the client while or after delivering the initial project. Don't add it for free unless you can afford it.
Then multiply the total by 3. Seriously.
When I was freelancing, I always used this method, and 90% of the time would come in 10-15% under budget.
For really big projects, break out a discovery phase before offering an implementation estimate.