In this article I will try to explain why same project will cost You more or less from one contractor to another, depending upon raw professionalism of contractor and other factors. I hope this articles is as much useful to customers as developers and contractors.
What most of the clients not so close to IT industry tend to misunderstand about development of a project is actual size of the project and resources required to lead that project to success. So what makes the difference? That’s actually quite simple, really. Lets assume us to represent a retail company selling goods over the internet and what we need is a simple web shop. First step we take is contact different web agencies – ones we found in the internet, some more suggested by friends or partners. We have basic idea of the webpage we need, what functionality we need. What we don’t know is what exactly we need. A lot of obvious things in web development is not so obvious to customer, so the major difference between a professional web agency and not-so professional agency is that with more experience and, obviously, professionalism, will always tend to get as much information as possible from customer prior to even consider development and giving a quote. This brainstorming process is extremely essential part of planning stage of a project – it can take weeks, even months to customer and contractor to come to agreement about all the details of the project, in this case, our web-based shop, and what I mean with details is all the problems experienced contractor have had with similar projects before yours. Having a large portfolio and good experience in the field of, well, web shops, will give contractor a good idea of what can and will go wrong with ideas presented by customer, possible future changes and many more aspects. Depending on this experience and knowledge contractor is better prepared to solve problems customer might not even know about. Even such small technical details as storing currency in database – we now need to support only US dollars. Could it be we will later need to support multiple currencies? We don’t have payments planned by Visa? Could it be implemented later? All those questions can and will be raised by professional web agency, because they might know how such project evolves even before customer knows about it. And if contractor knows about potential problems, contractor most likely will also know how to deal with them in planning stage even before the development begins. That means – less likely is that chance of something being terribly broken later on in basic concept of the project – professional contractor will less likely to fail because of some ridiculous logic problem, for example, missing essential functionality – web shop without basket or without ability for administrator to edit purchases and many more.
But for contractor to look deeply into the project concepts it requires a lot of communication with customer and a lot of hours spent in long meetings discussing about all of the possible aspects of the project. This, of course, does not come without cost. Most likely cost of this planning stage will reach something about 25-40% of the entire quote. To be honest, I have seen projects which are more complicated to plan than develop and where planning costs reaches up to 60-70% of that of a project.
So why is this so important? Simply because it is a lot less likely for you to end up with broken project which will cost you many times as much to fix to fit your needs than to actually develop it.
There is also many more problems you can and will encounter when targeting for cheaper contractors -
- More likely to have no guarantee on the end product whatsoever, or very limited one.
- More likely to fail project because of poor planning.
- You will most likely get what you asked for not what you expected to get (poor communication).
- Unmet deadlines because of problems not properly addressed in planning stage.
- Loose contracts and documentation not covering essential parts of project. This might lead to legal issues in case you decide to take some legal action against contractor because of reasons (?!).
- Poor project technical quality, again, because of poor planning.
Last, but not least – reputation. Small, “no-name” agencies tend to worry less about quality assurance, guarantees and customer relations just because they are small – they can just change the name and move the office, nobody will ever know. It is less likely to happen with medium-sized web agencies, although more less likely to happen with big well-known agencies. Unfortunately, there are exceptions to every rule – large web agencies, as in international ones can afford to lose customer once in a while. They just won’t feel the difference unless they fail completely and you can get a viral campaign against them up in social media. Otherwise you are just another fish in the sea.
Lets outline what makes the average project quote then -
- Project planning stage – meetings with customer.
- Documentation writing. There is ALWAYS documentation on project.
- Technical planning.
- Resource planning – which developer will do what.
- Management costs – accounting, paperwork, legal costs.
- Project management – someone overseeing the development and ensuring that everything is moving as planned.
- Testing and quality assurance.
- Small changes in initial planning – what looks good on paper does not always looks good in real life.
- Other small tasks – requirements, deployment, consultations.
- Answering your emails and communication with customer in general.
When getting a quote from agency most likely You will get only a raw number. Sometimes you will get a nice list of things of what you will get with that particular number, but most of the things listed will never be shown to you by contractor. But, if you are interested in what makes a quote – just ask the manager of that agency – he or she will give you detailed outline what you get by paying your money. Then, you can compare where you get what for what price and then decide for what agency to go for.
It also never hurts to ask a lot of questions – the more questions you ask, the more questions will be raised by contractor and the more possible points of failure will be discussed. Communication is everything.