Michael Jordan
So you want to build a website or redesign the one you have. You want to create a team who will lead you to success, but how do you go about finding a team within the budget you have? Hiring a developer who gives you a price based on a conversation is a risky approach to web development.
An RFP (request for proposal) gives you a way to get comparable bids from different developers, plus it saves you time and headache during the development process. By having a definition of the project, the developers can closely estimate time required based on very specific tasks that need to be accomplished. Plus, everybody involved in the project has a clear understanding of the requirements, so there is no confusion down the line about what you desire.
What should you include in an RFP?
1) Who is your company?
Give a brief overview of who your company is and the type of clients you have. It is beneficial to include how your internet presence plays a part in your business.
2) Project Synopis
Provide an overview of the project. Answer the following questions:
- Are you redesigning an existing site, enhancing an existing site or building a brand new site?
- What is the reason for making these changes now?
- Who from the company will be involved in this project?
- What are the technical challenges that may be faced in this project (i.e. company has an in-house CRM system that must be integrated into the site)
Defining the site flow, or information architecture, is a critical piece towards getting a firm bid. While the information architecture will likely change as the project evolves, the initial information architecture gives the developer a firm idea of how many screens are involved and what sort of functionality those screens entail. Using a program like Visio is an excellent way to create a flow chart of the information architecture.
4) Detailed Screen Requirements
If your site involves interactive functionality (like forms that are submitted, user profiles, etc.), it's a good idea to define these screens so the developer can plan how they will build them. Defining the screens means laying them out and defining how the fields function. Without this information, the developer can only guesstimate the cost of development.
5) Interfaces
Will your website interface with any other systems? How do they interface and what is the functionality you are expecting? Perhaps your company has an in-house CRM (customer relationship management) system, or perhaps you use a manufacturer's database of products for your store. These need to be spelled out for the developer. It would be even better if you include a contact name that the developer could speak with about these systems so they can get an understanding of the technical composition of these systems.
6) Design Requirements
Here is where the company shares its thoughts on what sort of site they are expecting. Giving URLs of sites you like, or discussing functionality you prefer, helps the developer understand what you want from this project. If you are not redesigning your site, you would also explain what aspects of the current site design will be retained, and what tweaks may be desired.
7) Project Deliverables
What do you expect the developer to provide you when the project is complete? Here you should let the developer know your requirements for code ownership, hosting and ongoing-site maintenance. You may also include information about a desired warranty period and any training that can be provided for in-house site maintenance.
8) Project Timeline
Here you define what you want the finish date to be for this project. If you can phase your project, you could also define the intermediate milestone dates.
9) Proposal Requirements
This is your opportunity to make it very clear what you expect from the developer when they deliver their estimate. How well the developer follows these guidelines gives you a good idea of how well they will take your input during project development. You could include the following here:
- Whether you want a fixed-bid proposal or just a general estimate
- How you want the prices broken up (one price for the whole project, or do you want to see project costs split out by functionality included)
- Request for technical recommendations. While you may have made some requests, you want to hear from an expert what they would recommend as a solution.
- Proposed project timeline
- Brief write-up of why their company is the right company for this project
- Backgrounds on the individuals that would be working on this project
- References from other clients
- Date you want the estimate returned -- important!
Here you have an opportunity to explain what you are looking for in the company you would hire.
11) Contact Information
Don't forget to let them know who is overseeing the RFP process and who should be called if there are questions. There should be one appointed person in your company who manages the entire RFP process.
While the process of creating an RFP may seem daunting, it is the best way to assure you've received a solid estimate. It also gives you an opportunity to interact with the developer and get a feel for what it would be like to work with the company. Hiring a web developer does not have to be challenging, and the RFP process will ultimately save you time when your project is developed.
Are you ready to win?