I'm receiving my first contract programming job, but I have a question/concern based on things I've read here and elsewhere. I'm wondering what is the typical and fair process for the first payment to the contractor (me). If I invoice monthly, and they are allowed a month to pay the invoice, that means I can work for 2 months before seeing any income. And I've read sometimes companies (not good ones) can take advantage of this and get two months of free work without actually ever paying the first invoice, or if they do, they pay it very late.
I suppose I just hope for the best, or is there a common arrangemet that is often made in contracting, like paying half of first month up front, etc. ?