Scope of a project

randomcat

Expert Member
Joined
Dec 15, 2018
Messages
2,784
I need a rough estimate of how much time and resources it would take to build a project. The client wants to build a scaled down version of LinkedIn(displaying CV/Profile, chat functionality and jobs portal being the most important features). The stack is React, node, express, mysql. How many people would it take to build this app(their roles if possible) and what would the timeline look like.
 

Charly

Senior Member
Joined
Dec 12, 2012
Messages
631
Is that stack set in stone or are they flexible? Especially if other stacks may accelerate development?
 

Pho3nix

The Legend
Joined
Jul 31, 2009
Messages
29,843
How long will it take you? Get an hourly rate for your time and estimate how long you'd take?
 

randomcat

Expert Member
Joined
Dec 15, 2018
Messages
2,784
How long will it take you? Get an hourly rate for your time and estimate how long you'd take?
Never done a project like this before so I don't know how long it would take or how big the team needs to be.
 

Pho3nix

The Legend
Joined
Jul 31, 2009
Messages
29,843
Never done a project like this before so I don't know how long it would take or how big the team needs to be.

757d07aa802d7faf7372ec3ad5a62d0a.jpg


Most of the heavy lifting possibly done. Personally I'd quote 3-5 months doing it for 8-10 hours a week after work.

If it's a corporate; 2 devs, a BA and a tester. 4-6 weeks for MVP1.

Note : All this is without an actual spec lol
 

DA-LION-619

Honorary Master
Joined
Aug 22, 2009
Messages
13,777
757d07aa802d7faf7372ec3ad5a62d0a.jpg


Most of the heavy lifting possibly done. Personally I'd quote 3-5 months doing it for 8-10 hours a week after work.

If it's a corporate; 2 devs, a BA and a tester. 4-6 weeks for MVP1.

Note : All this is without an actual spec lol
You’re the real MVP
 

randomcat

Expert Member
Joined
Dec 15, 2018
Messages
2,784
757d07aa802d7faf7372ec3ad5a62d0a.jpg


Most of the heavy lifting possibly done. Personally I'd quote 3-5 months doing it for 8-10 hours a week after work.

If it's a corporate; 2 devs, a BA and a tester. 4-6 weeks for MVP1.

Note : All this is without an actual spec lol
Interesting. It will be for a corporate. I'm getting this info for a friend by the way. Not 100% on all the details.
 

retromodcoza

Well-Known Member
Joined
Mar 4, 2006
Messages
485
So.... Welcome to software.

How much is this going to cost?
How long is it going to take?
How much money am I going to make once done?
Can you give me an exact number for each and stick to it?

These are questions anyone building a software project wants to know because they don't want to lose their money. And usually, they've dealt in their lives with things that are predictable and where realistic expectations are easy to infer. So they expect software to be the same. But it isn't. Its an industry which is on another planet.

The most risk the majority of people take on in a project in their lives is building a house for example. And anyone who has ever built a house will tell you the horror stories of the difference between what they expected to happen, what they were told by professionals would happen and then what actually happened.

In software, realistic expectations are almost impossible to infer. The gap between what you expect to happen and what actually happens is the biggest of any industry on the planet.

I painfully and continually remind and lecture anyone who works for me or with me developing software to "Mind the Gap".

Here , the gap refers to the difference between what you expect it to take to build a successful app and what it actually takes. A LOT of companies fall in "the gap". They injure themselves by tripping over the gap or get killed by falling into it. This refers to cost and time as well as effort, complexity and difficulty. The gap is so big that trying to work out what it is is usually a pointless exercise.

Does your friend like broken relationships? Lawsuits? Failure? Because that's the way he's heading.

How do I know this? Here are some strong red flags you've thrown up already :

You asked how long it might take.
You asked how much it might cost
A corporate is asking for it and requesting high level details from a junior dev.

These three things should not be happening. Especially the top two. They should not be happening because the person asking the question has not understood the risk factor in building software or indeed understood software projects at all.

If you are asking how much it will cost or how long it will take at this stage you have already failed.

My advice is not to build this YET. There is simply too much that you and your friend do not understand. If you try it is going to end badly. The joy in the prospect of good money will evaporate once reality hits you in the face.

I would take a different approach. Get whoever is going to run this thing (Your friend) to join an established software building company first. Spend some time in all areas of the business. Development, devops, marketing, sales, admin, accounting, legal, management, HR etc. Then you will be in a better position to do it.

This is NOT something you hop into with no experience. It will blow up in your face.
 
Last edited:

Barbarian Conan

Expert Member
Joined
Aug 8, 2017
Messages
4,716
What retromodcoza said.

If he still wants to do it, you want it done more or less like as follows.
This is a typical waterfall project, as you will usually see in corporates. They want the estimate up front, which is usually difficult to do.

Firstly, you want an agreed spec. If they don't supply one, you create one. In it, you list everything. If it's not in the document, you don't do it. There is no assumptions like "of course email address validation etc is implied".

Not in the spec, not included in the estimate and not delivered.

Include at least some level of mockups, even if it is just pencil sketches and squares.

Preferably get signoff on the requirements before you estimate. If you don't, you supply it with your estimates, and say that your estimates are based on that and no theming rework or whatever.
You make it clear that any changes will extend the deadline.

Someone once told me that you estimate by what you will do before lunch and after lunch, so 2 x 4 hour slots each day.
Then you do this for ALL the features. For example:

Comment box editor UI, submit button UI, User Portrait UI, - 4h.
Submit comment, input sanitation, save to DB - 4h
Load comments from DB, display in list on frontend - 4h.
Rich text editor - 8h.
Use rich text editor on bio page - 4h.

Remember to include time for unit tests etc.
You better think of security. How will security be tested?

You do this for everything, add it all up and add 30%, because it always takes longer than you think it will. The client will always want a quick change, it will add up, and they won't want to move the deadline for the small (couple of days worth of) changes, and there will be meetings and discussions etc. 30% might be on the low side...

When doing the estimates, you don't want unknowns. You need to know the stack you are working with, and you need to KNOW how long things will take you.
You need to know how it integrates with their systems (if it needs to).
You need to know how it will be tested, on which environment.
You need to know where the source will be hosted (github etc) and how to set up CI/CD.

At a previous company, we had a customer that said there's no need for a spec. He'll just review it. I don't think it ever went live.
People change their minds, find UI and UX issues they didn't think of etc.

If it's not Agile, the spec needs to be set in stone.

Do all this, and it will probably still blow up in your face. Hopefully just not too badly.
 
Last edited:

randomcat

Expert Member
Joined
Dec 15, 2018
Messages
2,784
Thanks for the responses. Will pass the info along to him. This is also something I also want to learn about. Some good points to think about.
 
Top