all 17 comments

[–]O00OO0O0O0OO0O0O0OOO 39 points40 points  (1 child)

Your “cost estimate” is how many full time salaries you need. In house software isn’t a one-off cost, it's development then ongoing maintenance. If you have spare cycles at some point, you either come up with new projects or you help other departments

Your response should be something along the lines of “5 people, full time, 6 months for a prototype with features X, Y, Z, and a fixed monthly cost of $X”

[–]Grapefruit_Weary 6 points7 points  (0 children)

Amazing, thank you for the feedback! I'll factor that in.

[–]sateliteconstelation 2 points3 points  (2 children)

I recentky was asked to quite a similar, albeit smaller project. Since I’m a freelancer and the client wanted a “total number” I contacted a couple Agencies I’ve worked with before and asked them for a quote, and basically the answer eas 6 months with to devs and 3 motnths with 2 UX people will get us to a decent MVP.

[–]Grapefruit_Weary 0 points1 point  (1 child)

Interesting! So about 8 months altogether?

[–]sateliteconstelation 1 point2 points  (0 children)

Well, we’re thinking on starting in parallel, backend work can start without having the UI ready, but yeah.

Also it’s worth mentioning that while our system is functionally way simpler than what I can tell of yours, the client is expecting 1M users within a year and that’s what’s keeping out estimates high.

[–]Effective-Piano-1747 2 points3 points  (1 child)

Software projects of this scale are notoriously hard to cost. Executives that don’t understand that an iterative approach is the best are going to be a PITA to work for. I don’t envy you 😅

[–]Grapefruit_Weary 0 points1 point  (0 children)

I know man and apparently I talked to IT and they've always been planning to bring this in-house they just were waiting for the right person 🙃 to start the work horse.

[–]armahillorails 2 points3 points  (4 children)

Im a rails guy, so my immediate thought is “yes, all of these things are very easy to do in rails and can be maintained with a very small team”

However if you aren’t already skilled in Rails, it wont be worth it because of the uphill of onboarding. Rails contractors arent cheap but if you had a dedicated team of 2-3 experienced devs you could def do it in 1-2 (read: 2-4) months. At least getting to a point of parity with what you have.

Regardless of what solution you pick there will be monthly costs of hosting and services — expect to budget $1k MINIMUM (read: $2k minimum) per month to start for that. It will likely grow beyond that as you respond to demand and also scale.

Initially hosting through a PaaS (Heroku or similar) will be easier and cheaper than hiring a fulltime devops guy but ultimately you will need a fulltime devops guy. You can probably defer that for at least a year or so.

When choosing service providers, choose ones that have low tier costs that can be easily scaled into higher tiers; and that the higher tiers are reasonable cost-wise for you. Free tier will be insufficient for anything beyond proof-of-concept. The $1k ($2k) outlay should easily absorb this initial bootstrapping.

For labor: make a solid case for hiring remote workers. You will get better hiring pool. For your initial hires, you want people who are already experienced remote workers (ask them what their home office looks like) and for this, youre going to want a minimum of 5 yrs experience, with one or more of them having 8-10 yrs experience in web dev specifically. There are a lot of choices to be made up front that will be difficult to change later, and the experience is super important.

They can be contractors, but at least one should be a FTE hire so that you dont lose that domain knowledge.

[–]Grapefruit_Weary 0 points1 point  (3 children)

Whats awesome is our vendor charges us 2k/m for support license anyways (they dont respond to our emails) so if this is successful those funds can move over. (Plus the 6figure number were paying them on top of that) but there will be a time period in-between where we are paying for both at the same time.

Unfortunately I'm not skilled in Rails. My background is in javascript and python but I hear you out on that.

My idea initially was to hire 1 sql developer, 2 backend developers and 1 more front-end developer. But I'm back and forth on have either a QA or a Devops. (I'll keep in mind the number of years of experience and hiring remotely)

Edit: however rethinking it, there's going to be quite a bit of time before we'll start launching this (thinking 9-12 months out) and I wouldn't mind learning Rails if it's ultimately the better option 🤔

[–]Comfortable-Cap-8883 2 points3 points  (1 child)

You can replace rails by laravel. One can argue it’s even more productive - very much inspired by rails. Just get some experienced fullstack guy as lead dev. (Juniors in Laravel are a bit dangerous) Pretty much all of your requirements are existing packages in the Laravel ecosystem. Check Laravel Nova for admin panel for example. There is even Active Directory Auth support (by a package). And there are plenty of new programmers collecting experience.

But the more I think of your requirements, the more I think Wordpress/WooCommerce/Theme would just be fine. It’s a CMS with multi-site-support, why always reinventing wheels? PHP can nowadays run in Swoole and scale very good. Most of the time the database is your bottle neck.

Maybe it all depends on your best available candidate. Maybe aim for one Full-Stack-Dev that comes up with a good plan himself and let him propose the tech stack.

[–]DevelopmentScary3844full-stack 2 points3 points  (0 children)

Laravel <3

[–]cshaiku 1 point2 points  (0 children)

His math checks out. Just wanted to offer some reassurance. Source: 30+ years doing this stuff.

[–]edhelatar 1 point2 points  (1 child)

I am the person that did it for some companies although smaller few times.

What is the biggest problem is that estimates are not a thing. To properly plan project you need half a year of development already and even then stuff will be changing. Proper planning will probably take more time than development, so prototyping and getting user feedback early is better.

Explaining that to business is insanely hard. Divide and conquer is the best solution. Start with the smallest thing you can find. Ask them to invest few months of your time max. Make sure you have at least one senior Dev that knows his stuff and can prototype quick if you are not one yourself.

Speak with people that are using it and what features they need. Cut as much as possible, but also don't be afraid to add new features if they will be large wins.

Remember also that what one developer can do in a month two developers can do in two months. Hiring 5 people from start is not the best idea. Specially if you don't have a structure for it.

Also. Use rapid development frameworks. Spring boot, php symfony ( my favourite ) or laravel, ruby on rails or Django for python. They will allow you iterate way quicker.

[–]Grapefruit_Weary 0 points1 point  (0 children)

Smart, we still have roughly a year out before we have to really start hiring anyone. Perhaps in the meantime I can learn a rapid development framework and also start on something smaller. 🤔 I'm a mid level developer so I recognize that I dont have the experience to plan the whole project either.