Login
Theme: Light Dark

How difficult is it, how much time would it take, and what price for decent software engineers to create a website like Medium.com?

Tagged:

Home - Quora Link

The problem with yours and every other question like this is that it’s missing scope. Scope is asking “what kind of problem are we solving and what are we not solving?”

Once scope is ascertained, then a set of deliverable features needs to be created. You put this on a roadmap to your first iteration. But you can’t estimate a feature to any greater extent than a number of engineer-weeks. To get a better estimate, you need a skilled engineer to break each feature out into a set of user stories.

Once you have your list of user stories, then you get a team of engineers and have them collectively estimate how much effort is going into each story.

Once all this is done, you have a reasonably-accurate rough estimate of how long it’s going to take to get to your first release. Your error factor if you’re using skilled engineers to do the estimating is around 20%.

Once you have your estimate, you can set a deadline. Multiply your number of engineers by the time it takes to reach the deadline by their weekly compensation and you have your cost in engineer-salary for the first iteration of your project.

This does not include management and QA resources. Engineers cannot usefully manage their own work. A good project manager will handle the engineers for you.

Engineers also cannot usefully QA their own work. So you need someone in the QA role as well. If you don’t have someone in the QA role then issues you will think are stupid, that if anyone had been looking at this, they would have caught it, will make it into the first release and wreck the reputation of your market offering. You’d be right. No one is looking, everyone has their head down building new functionality. You can yell at the engineers all you want, but you signed off on the release, and you can’t be bothered to check everything.

So you’re not just looking at hiring engineers, you also need support staff as well. You need a team. This is just to get off the ground.

So, let’s ballpark estimate a two-person team, one engineer and one manager/QA. Engineer time runs at about $12,000 a month. Total cost of employing someone runs at 1.3x their salary, a good engineer will run you $100,000 a year, so ballpark estimate of your engineer’s salary will be $12,000 a month. Your manager/QA resource has a bit more variability. Let’s say he’s a bit cheaper than your engineer at $10,000 a month. So you’re looking at $22,000/month just for your labor expenses

I’m going to guess that you aren’t trying to do anything crazy in your first release, this is a big assumption. Guys who don’t understand software tend to make uninformed guesses about what it’s possible for software to do. Nobody you hire can read your mind, you have to articulate what you want out of the software if you want them to be able to build it.

In more release cycles than you think, what the software was actually supposed to do isn’t communicated to the managers. So it’s not estimated or built. At the end of the cycle, shortly before release, the person paying for the product goes and looks at it and is like, “where is X? It was supposed to have X!”

Which then kicks off the second pre-release development cycle, them building what you actually wanted. Unfortunately, while the first development cycle was managed and a software development flow created and followed, this second cycle is happening under the gun of a deadline. You made commitments, promises that you would have X available on Y date to all your buddies, and you don’t want to disappoint them.

So you put pressure on your software team to fix their shit. But it’s not their shit, it’s yours. And the developers will rightly object to doing any free work for you.

A lot of budding software-enabled businesses die at this stage, thrown to the lawyer wolves or just abandoned, the money spent just gone. I’m trying to save you a lot of headache here. Don’t try to start a software business unless you understand software.

But you’re not listening to me, you want an estimate. Let’s ballpark six weeks for initial development, and let’s assume the second phase of the development amounts to no more than two weeks. So, $44,000 in labor costs.

You’re not going to get much in six weeks. But, hopefully, it’s enough for you to validate your business idea so you can justify spending more money on it. I hope you did adequate planning.

If you’re starting to think, “man, I could hire a consulting company for that kind of money!” you’re absolutely right. If you want to do software development right, and actually have a real business for you to run when you’re done writing checks, that’s who you hire.

You can try rolling the dice on Upwork, but you’re going to spend a lot of time and money just figuring out how to get semi-decent results from the platform.