If you're like me, you feel like you can tackle any project, get it done on time or before and with stellar success. Unfortunately, this attitude has brought me nothing but pain & suffering when doing work for clients. In the past, I always used to underestimate the difficulty of my projects and would convey that to my clients in the form of unrealistically small estimates on time and budget.
Luckily, I was usually on a team of highly motivated, competent people — so we were actually able to hit many of our deadlines but the products we were delivering weren't the highest quality and I started to get burned out. However, when I endured a hellish project that ultimately ended up in failure I finally saw the light. I started to realize that these tight deadlines were not only consistently making my clients upset but were ruining my life — it was then that I realized that I needed to:
LOWER THE BAR!
Okay, by this I don't mean that you should take advantage of clients or that you should be lazy … but that you under promise and over deliver. Make sure that when you estimate the scope of a project that you double or triple the number of hours you'd normally bid — so that you can account for any problems that you ABSOLUTELY WILL ENCOUNTER.
Clients don't typically like seeing estimates for large figures so you'll sometimes have to make small concessions — but if you aren't up-front with your clients from the beginning then once you start the work, your life can become hell on earth and they will be consistently disappointed. Trust me — sometimes its better to just not get the job than to work off of an unrealistic estimate.
Don't short-change yourself and do give yourself a chance to succeed by not pushing the envelope too much. Once the expectations and estimates have been set realistically and you actually come in under budget and ahead of schedule — you'll look like a rockstar instead of a buffoon for blowing it! You'll be happier and so will your clients.