I recently joined the site and posted a job I wanted doing. Basically I want an app developing that would be made for iPhone, Android, desktop and also a cloud based backend. A user would use the cloud backend to ask questions that would be send out to all the apps. They would then answer and the responses would be collated in the cloud and available to the person asking the question. There are lots of little bits that make it great, but that, in a nutshell, it what it does.
I put some comprehensive requirements together and sent it to the three vendors that I had selected from the applicants. And what I got back was baffling...
quote 1 - $230k quote 2 - $23k and quote 3 - $8.5k
What the heck is going on?! If anyone could give me a little wisdom here that would be hugely appreciated.
Thank you for posting your question here.
To answer your question about the quotes, that this means is that:
- one contractor is offering to do this project for $230,000.
- one contractor is offering to do this project for $23,000.
- one contractor is offering to do this project for $8,500.
These quotes are different because they were made by different individuals. Upwork does not have a standard price sheet or anything like that.
Realistically speaking, your job is too big and complex to set up as a single fixed-rate contract.
You will want to use a project manager who can guide the project along toward completion. (No, I'm not a project manager, so don't ask, thank you.)
After your project manager helps you flesh out business and functional requirements, here are some suggestions for how to make your project more economical:
(Option A) Hire three to five different developers to begin work on the project on an hourly basis. Carefully review their work after a few hours and continue working only with the ones whose output seems to be the best value to you and your project manager. You may not find the first person in the first batch of programmers. You may need to hire more to find the right person to serve as the lead developer on the project.
You should probably tell the developers out right that you are working with multiple different developers and you plan to continue working with the best. You don't have to tell them that you are giving them identical assignments.
If you plan to throw away most of the source code developed during the early stages of this project, you will save time and money.
When you find the right person, you can throw away all or most of what the other people did.
(Option B) Hire the most expensive, most talented, most experienced person you can find to do this project on an hourly basis.
(Option C) Or have the project manager break the project down into manageable components. Set up each one as a fixed-rate contract.
Be sure to use different developers to work on these different components. If somebody doesn't deliver, don't use him any more. Have somebody else work on that component.
In the beginning, do not use multiple milestones. Focus on short, single-milestone contracts that you close once they're done. Focus on finding the right people to work on the project and don't assume your first hires are the right people.
As I client I have personally used all three of these methods for getting projects done on Upwork.
Preston, I know I'm usually sarcastic, but I'm sincerely asking here -- would it be wise to hire a dev for a few hours? Maybe I'm missing your point, but the first few hours to me would be fleshing out business and functional requirements. I think he should first pay someone to write those for him.
Then, use the documents to provide developers with what he wants and then they could probably give him a better estimate. Of course, the devs could do this for him too but I find that devs on these places just start coding.
There are certain questions here that could be answered if he nailed down some specs with someone who understands the process. I would say the $23k guy is closer to the real number, but I do agree that his scope is too vague to give a real answer.
re: "would it be wise to hire a dev for a few hours?"
Yes, you can hire a developer for a few hours. This is a normal thing to do.
But the project owner should not do this himself. This should be done by a project manager who sets up a very specific task that is narrow in scope and has all the possible ingredients for success included.
You hire multiple developers for just a couple hours to see what they can do with the task.
Some of them will turn in the task, completed, and tell you it was pretty simple. You'll look at the source code and see clean source code that makes sense.
Other developers will struggle to get anything usable done and when you look at their source code you see they have 5 include files for some unknown reason and they're just trying to tweak some monstrosity they found on the Internet.
You're also looking for people who do the work on their own without bugging you, versus people who pester you about things they should be abel to figure out for themselves.
You're also looking for people who stick to the deadline they commit to versus people who tell you they had a power outage because their mongoose died or whatever.
You can find a simple chunk of work from your project that you may actually need and assign developers to do that. But for a project as big as the original poster described, it doesn't really matter. You just want to weed out people you can work with from people who will only waste your time.
Jennifer, I probably wasn't clear enough.
I said at the beginning of my description that the orignal poster should hire a project manager.
To spell things out more clearly... Yes, you are completely right... the project manager should help flesh out the business and functional requirements more.
A good project manager will know to do a number of things like that.
So, no, just to be clear, I'm not suggesting just hiring random people and have them start coding. A number of top programmers can just be hired to start working, because they serve as their own project manager.
But for a project of this scope, the OP would be wise to use a specific project manager rather than trusting in the luck of the draw that he'll get a developer who can sere as his own project manager.
I edited my first post slightly to make this more clear. If you see that, don't think that Jennifer is pointing out something I already stated. She was right to ask and I edited the post to make the overall concept more clear.
Preston, I think I understand what you're getting at now. I thought you meant for him to hire someone to work on the OP's specific project for a few hours. I think you mean give them tasks and see how they do. I like that idea.
I think this is one of those projects that doesn't seem complex until you sit down with the customer and they start explaining.
This is what separates the big boys on here from the noobs -- this project seems like a hidden mine field. Noob coder says "Oh, I can do that." And then he goes off to do his thing. Scope changes 100 times and it all could have been avoided by making the client work to create documentation and functionality requirements, sign off on them, give clearer estimate, and then any change in scope are an extra charge.
This is one of these "oh that's easy right?" And the coder has to push back and say "umm, no." I think that's why he's getting such crazy ranges.
Just a question, Preston: Why would you recommend people not to use milestones?
Personally, as a freelancer(not in coding, but still), I had a very good experience using them. I just don't understand why a client would not have a good experience also...
re: "Why would you recommend people not to use milestones?"
If you want to keep things as modular as possible, it would be better to use separate contracts for individual components.
Early on you are trying to assemble the beginnings of your project and assemble a team of developers or just find one good developer. You don't need milestones at that point. Using multiple milestones implies that you have already chosen a specific individual to do ongoing, continued work on your project.
I don't think you should pick one person you've never worked with and just have them do everything. You might be missing out on another developer who is twice as fast at half the cost.
Once you have the project well underway with developers you trust and want to continue using, I think milestones are fine.
The $230k quote is a realistic offer but as pointed above you need a project manager to help you in the process.
The huge differences in the cost estimation might be because the vendors are charging different hourly rates.
My wild guess:
quote 1 - $230k - hourly rate range $80-150
quote 2 - $23k - hourly rate $10-20
quote 3 - $8.5k - hourly rate $3-7
In a perfect world quote 3 can do the work just as good as quote 1.