Jump to content.

Hours

I work evenings and weekends, usually putting in 10-20 hours a week on freelance projects. Special arrangements can usually be made for urgent projects.

Time Estimates

All projects, especially large ones, require good estimates. To do so I require functional specifications with as much detail as possible. Wireframes are also greatly appreciated and will reduce the likelyhood of later change requests adding time and cost to the project. My goal is to provide fair and accurate estimates for a project. If I overestimate, I reduce the final cost of the project so that the client is not charged for more than the actual labor costs. If I underestimate the hours, I do not penalize the client for that. It comes out of my own time as a learning experience. If there are any necessary changes in the timeline, I inform my clients of the situation and propose remediation solutions. I do expect the client and their host vendors to provide me with all the information needed to complete the work. If information is not provided in a timely manner, then there will inevitably be delays.

Methodology

For large projects, I usually set up a password protected development version of the web site on my own server to allow me to make changes and have my clients review the work before it gets copied to the live web site. This minimizes possible disruptions on the live site during the development process.

I generally develop discrete pieces of functionality at a time, where possible, to allow improvements and new features to go live throughout the course of the project. Not only does this minimize disruptions, but it also allows you to see real progress during the project.

Communication

E-mail is always acceptable, and using the telephone or an instant messenger program are available for detailed questions and interactive work. For large projects I will set up a wiki or other kind of communication board to keep track of requirements, progress, and changes. This is done at no cost to the client.

I do not subcontract work. You can be assured that when you communicate with me, you are communicating directly with the programmer.

Change Requests

Most projects require changes in scope, and I expect that to happen. All changes in scope must be sent via e-mail with as much detail about the change as possible. Reductions in scope that result in reduced hours on the project will result in a reduction in the final cost. Increases in scope will often require additional hours, and this price will be added to any previous quote given. All changes in scope requiring an increased project cost will need to be paid either through Pay Pal or by check/money order.

Quality Testing

Testing scripts are created for all project work, and can be delivered to the client at the end of the project upon request. Each aspect of validation and flow are scripted which allows for quick regression testing of the entire project every time a change is made. This allows for the immediate detection of any errors that might occur when changes are made to the code. I use JMeter for all my test scripts.

Standards Compliance

I guarantee my code to be XHTML and W3C CSS compliant. The only exceptions are when third-party code is required or a feature is requested that by its very nature cannot be standards compliant. I use several tools to test each page. Accessibility and usability are also priorities. Inasmuch as the client's specifications and wireframes allow, I code in adherence to such guidelines.

Pricing and Payments

My quotes for commercial work are based on the projected hours at the rate of $65/hour. Non-profit related work is usually quoted at a lower rate. My guarantee is that I will never charge more than the quoted price for the quoted work (this does not include additional charges that might occur with change requests). If the work takes less time than the original estimate, I will only charge for the actual time requirements. Any third-party software or data licensing fees will be included in the quote if they are foreseen. If the software or data prices change between the time of the quote and the payment, the client is responsible for the difference.

For work attained through Guru.com the payments are made through their secure payment mechanism when the work is completed. For custom work, I prefer payments either by project piece or weekly. These payments can be made through Pay Pal or by check/money order. The exact arrangements must be agreed upon before work begins.

If the client needs to cancel a project for any reason, payment is expected for whatever labor was incurred, but I do not add any penalty to the client. My hope is that if the client later wants to continue the project or has another one that they will again consider my services.

Proprietary Code and Non-Disclosure Agreements

Two goals of freelance work include repeat business from a client and recommendations. As part of that goal, I understand the importance of protecting a company's proprietary information and data. I use and encourage the use of as secure of communications means as is reasonably possible. I am committed to securing my clients proprietary information to the best of my ability. When a project is completed to everyone's satisfaction and there is no expectation of future work, I commit to securely delete proprietary information.

I do like to publish who I have worked for and give a brief description of the work on my Portfolio Page, but I am willing to forego that if my client prefers.

My clients do need to understand that I reuse code. Many sites, for example, use login forms, registration pages, and administration panels. The functionality of these and many other pieces of a web site are virtually identical from client to client. Data structures, as another example, may be reused, but the actual data is considered proprietary to the client and will not be reused. There are any particular questions about how your information is to be used, secured, and retained for a project, please let me know your concerns ahead of time.