Working as a consultant, you have to treat time differently than working a full time position.
Because when you bid for a contract, you have to estimate the size and effort of the work, known as scoping the project.
This is actually a difficult task, because you have to determine how many hours each task will take, validate your data and assume you will get the level of help needed from the client.
As difficult as that seems, the real difficulty is estimating the unknown factors. Such as tracking down business rules, obtaining good test data, servers going down, getting database back ups and refreshing data.
There are so many unknowns, you have to allow time in your estimate.
And if that's not enough, the real trap to watch out for is Scope Creep. What is that you say? Well, with reports, sometimes the end user has a general idea of what they want, but once they see an actual report, they always have changes. Align this, change the font, make this bigger, you know cosmetic changes. And then there's always new fields to be added, extra functionality, link to other reports, there's really no end to the amount of changes they could ask for.
And this is an unknown. So when you estimate your project, you MUST account for this. Because it always happens. So when working on the project, you always throw in some extra functionality, but there's a fine line where you must go back to the client and say, this is a change request because the level of effort is longer than expected, so perhaps a Phase 2, or append your Statement of Work to account for the extra time.
Sometimes the coding of the reports is rather quick, but it's the changes that eat up much of the budget, so watch out for this trap. In the end, the Client has to sign off on your work so you can get paid, and you don't want to be doing work for free, so learn how to estimate your level of effort and account for the unknowns.
That's what I've learned working as a Consultant. You want your client to be happy, you want to produce a quality product and perhaps get repeat business. So estimate your projects wisely.
And there you have it~!