When building websites, site designers and copywriters get most of the attention. However, there's another key player that often gets overlooked in the process: the developer.
The designer creates the look and feel of the website, and the writer crafts the content. But it's the developer who pulls it all together by writing the code and building the infrastructure for the site. The developer ensures that the design appears properly on the page, that all the functionality works as intended, and that the website is compatible with different web browsers.
When hiring a web design agency to build a website, the agency will typically handle the design, development and content. However, some companies prefer to handle the design and content activities in-house and outsource the coding to a freelance developer. If you decide to go that route, here are some tips for working with a freelancer.
- Set clear goals and parameters. Clearly define the scope and the objectives of the project, including all functionalities you need to have on the website.
- Get it in writing. The developer may have different ideas about the relationship and who owns what once the website is built. A written contract that specifies the responsibilities and obligations of each party, signed before the developer begins work, can save a lot of grief down the road. You don't want to be negotiating terms in the middle of a project.
- Define ownership. Unless you specify otherwise, the developer owns the copyrights to the code. If you want to own the product (you do!), the developer must assign all rights related to the work product to you or your company. Most developers will do this, but they may have some exclusions for templates or tools they have developed on their own.
- Protect yourself. Your contract should require the developer to indemnify you in case you get sued because the developer used someone else's copyrighted code. It should also contain confidentiality provisions that require the developer to protect any trade secrets or ideas for future development you may have.
- Assign a project manager. In addition to keeping the project on schedule, a project manager serves as a liaison between the developer and the rest of the team, helping to resolve conflicts and keep the lines of communication open. Ideally, the project manager should have some familiarity with code and be able to discuss basic programming issues with the developer.
- Insist on seeing work in progress. Writing code is a solitary activity that tends to attract solitary individuals. Many developers prefer to get the assignment and then go off and work alone until they come back to you with the finished project. More often than not, this will lead to an unsatisfactory outcome. Insist on regular "check-in" meetings to review progress and make sure everything is on track.