When it comes to pricing specific jobs, you have a few options.
Given the type of work you will be doing as a developer, the method that is the most appropriate for establishing yourself as an independent contractor is the project based model.
In this scenario, you estimate the number of hours the project will take and multiply it by the hourly rate you established for yourself and/or any other people who will be working on the project.
Project Cost
Time required 200 hours
Your rate X $71/hr
Project cost $14,200
Time to complete
Time required 200 hours divided by 22 billable hours/ week = ~ 9 weeks
(see Expense based model in Establishing your rate)
For project based assignments, request the client pay a small fee up-front (about 10- 15% of the total). This will be a demonstration of their commitment to the project. If the assignment will take a long time to complete, you may consider proposing partial payment upon milestone deliverables with the final payment due at acceptance of the final product. They may not agree, but if they do, it will help your cash flow for the project.
It is also reasonable to specify a contingency factor of +/- 10%. Estimating time is an art, not a science and clients will recognize that fact. You will need to set an upper limit to your 'fudge factor' so that the project does not become a purely time-based assignment. 10% is a reasonable limit. If you need it, you would add it to the final invoice. Stay in communication with your client, so that they are well appraised of your progress on the project and the budget.
Once you have completed the project, your client may want you to be available to support the solution. The retainer method would work well in this scenario. However, you should discuss your situation with a labor law attorney as setting up a continuing relationship with a client may jeopardize your independent contractor status..
Using this method, you and the client agree on how many hours you will make yourself available for support (or whatever service you are providing). You then establish a retainer fee. Many arrangements are done on a monthly basis. You bill your client monthly in advance of the month you will be providing service and your client pays the agreed-upon amount at the beginning of that month. The client is paying for your availability and the fee is due whether or not your services are actually used. You should agreed in advance on payment due if the client needs something that is beyond the scope of the retained services.
With this method, you agree to a rate (hourly, weekly, etc.) at the beginning of the project and estimate the amount of time required to complete the project. You then bill the client for the time your spend on it. This method could jeopardize your status as an independent contractor even more than the retainer method. Because you are paid for all time you work, there is no profit or loss risk for you in this arrangement. The ability to make or lose money on a project is one of the IRS' key criteria in distinguishing a contractor from an employee.