How to Compare Proposals from Different Web Development Firms
Let's say that your company needs to build a custom web application to help them manage some of their internal processes. Your company goes through the RFP (Request for Proposal) process and collects detailed estimates and proposals from many different web development firms. It comes time to compare the different proposals. It's sometimes hard to tell the difference between the varying processes and technical skill level of the different vendors, so many people focus mainly on price when comparing web vendors. But when you look at these different proposals, how do you know that you're not comparing apples and oranges? While budget is a very important factor to consider, you need to think about whether you're going to see increased long term costs by going with what seems like the cheapest quote up front, without considering the other factors that can help you choose the right web vendor for your project.
To illustrate, let me tell you a story about a man who was building a house. He got quotes from several different contractors. He saw that the quotes were all a little different, but he was a chef, not a contractor and he wasn't sure exactly what went into the building of a house. So, he went with the contractor that gave him the lowest quote. Before long, he had a house that looked fine on the outside, but was built with the cheapest materials and the quickest, shortcut, cob job processes possible. The house seemed pretty nice at first, but it soon became clear that the house was not build to last. Things started to break and he had to hire more contractors to make repairs. Then the man got married and decided he wanted to put an addition on to the house, but he discovered that because it wasn't built well to begin with, he wouldn't be able to build the addition without shoring up the work on the original house. As the costs began to pile up, the man realized that the original low quote he got just didn't seem that low anymore! He ended up spending more on repairs than he would have if he'd just gone with a different contractor and built the house right to begin with! In the end, he had to tear down the house and start all over again.
What does this story have to do with choosing a web development vendor? Well, it's helpful to understand a little bit about a company's process and what goes into their code before you decide who you want to hire to build your custom web application. Make sure you read the proposal carefully and check client references too! The vendor with the lowest quote might end up being the right choice for your project, but you should make sure you know why their quote is low and be certain that it's not at the expense of building a quality web application that will be reliable, scalable and can be easily changed and added to as your needs change. Sometimes it's important to spend a little more time and money up front to make sure that you have a solution that will be the most cost effective over the long haul. Remember--when you have a poorly built application, it's not just the costs that can creep up on you. It's the extra time, effort and frustration that builds up when you have to deal with a problematic application for years to come!
What's special about our process and code here at Singlebrook? For one thing, we use an Agile project management process, which has several key benefits:
* Flexibility. The ability to change course or make adjustments reduces risk and ensures that you’re getting what you need. You’ll also never have to have the common and unpleasant “that’s not in the specs” discussion. We use automated testing to ensure that the software that we write always works as intended, not just when it’s first written. Having a library of automated tests allows us to make changes freely without having to worry about breaking things elsewhere in the software. The tests will tell us if anything needs attention after a change.
* Scalability. Because of automated testing, it's easy to add on to the software and expand functionality or build new features without compromising the original application. As your organization grows and changes, your custom software can grow and change along with it.
* Early Value Delivery. In traditional software development, you don’t view the completed software until the very end of the process. With Agile, the most important parts of the project, which the client has selected and prioritized, are completed first and you can start using your application as early as two weeks into the process.
* Transparency. You can view the project and give input throughout the development process, not just at the beginning and the end.
There's a lot more that goes into our development process such as the selection of the right technologies for a project, the use of source control and the use of Agile tools such as Pivotal Tracker for communicating with clients. We'll explore some other areas in future blog posts. In the meantime, as you review web development proposals, please keep in mind that there's a lot more there to consider than just the price at the end of the proposal! Sometimes the solution that appears the cheapest ends up being the most expensive in terms of costs, time, effort and frustration in the long run.