So, it's been roughly two years now since I 'officially' became a web developer for hire. Formerly, my development work was either not web-related, or it was for my employer or my own business/personal projects. In that time, I've learned some lessons. I post them to remind myself of these lessons, mostly. But if you come across this, and learn something from it - I'll be very happy to have done some good.
Background
My work for hire has been almost exclusively for micro-to-small businesses or organizations. Most of the time, I am working for entities where a very small number of persons have the ability to approve things. Every client of mine I can think of right now has between 1 and 100 employees, with the average probably being 10. I mention this because this is going to make a difference in my thoughts and advice.
The type of web development work I do could be summed up as developing web sites with custom Content Management Systems (CMS). I generally provide end-to-end service; including hosting, administration, database design and development, and the like. I do not do design myself; I am either hired to work with a design provided otherwise, or I secure the services of a designer to provide that. I usually do the 'cut up' of a design into XHTML/CSS, and everything thereafter.
More...