Give yourself one month a year for project wrap-up. You might not "have time" to document your work when you're looking at delivering it to your client, but good comments and developer documentation is a must when wrapping something up. Make *that* its own project if you don't have time during the project's development itself.

It's understandable if you have to cut corners to make deadlines and, in turn, make money. It's not understandable if you don't plan ahead by setting aside time for cleanup after delivery, and end up having loose ends cost you scads of resources (read: "money") down the road. Believe me, tying up loose ends in all projects before there's a problem, in my experience, is vastly more efficient than waiting until a couple of specific project have a problem -- like a developer leaving or a customer asking for updates/improvements/changes/bug fixes several months or years down the road.

I sometimes wonder if places are more interested in making dough than doing a good job -- which we all know (don't we??) will, in the long run, make you more money. "If it's nasty now and we leave it that way, we can charge more to our trapped customers later!"