A few weeks ago at Cape Town SPIN, Rizmari Versfeld (GitHub, LinkedIn) gave an excellent talk about Freelancing and working from home. She gave a nicely balanced presentation, talking about the good and the bad of being a freelancer.
It all comes down to the money
Riz had lots of good advice to give around the money side of business. She said that it was important to give estimates rather than quotes before starting a piece of work. Software development is hard, and estimating timeframes for it is even harder. Framing your guess as an estimate rather than a fixed quote reinforces the variable nature of the work.
Another pro tip was to bill regularly, rather than a large lump sum at the end. One of the benefits of this is that the client can see how much of their budget is left, and steer priorities accordingly. Regular billing also helps because it sets up an understanding for the necessary support and maintenance after the initial release of a project.
Testing and bug fixing
Riz recommended testing throughout the course of the project, rather than leaving it until near the end. Regular feedback helps the project on track. She also talked about how bug fixes take up a lot of time, and that it’s important to allocate a lot of time to that.