The combination of daily weigh-ins and the exponentially weighted moving average I learned from the Hacker Diet has been absolutely magic for me. It gives me helpful daily feedback signal in the noise of ~5lb daily weight variation. Beeminder has replaced paper graphs for me. Their new moving average isn't quite as helpful for me, but is still workable. I target rates of weight loss on the order of 0.35-0.50lbs/week.
I used to run the Singapore and Seattle offices for Pivotal Labs and helped a couple of companies build in-house teams to do exactly this.
My first question is to check the basic economics:
$2-300M in annual revenue, ~15% margins, you’re probably looking at earnings/profits around $30-45M. Building and running your own software team is probably around $5M/year, which feels like it could be a substantial hit to your margins. Is there a clear story for how this software will allow you grow to $300-500M in revenue or more? I like to have a credible story for 5-10x ROI on software development because the costs end up being so variable and uncertain.
Then the trick is figuring out how to hire, train, and establish a productive environment for the team. My customers approach was to hire a vendor [Pivotal Labs] to ship a first release and help hire in-house staff to replace vendor roles until the team was fully in-house. The customer got rapid feedback that the team and concept worked; we shipped working software. The new hire landed into a productive context, and could see that the company had an effective approach to software development (because it was already shipping working software).
> I have a fully staffed team it’s not 5m a year. For a company twice his size.
I don't think the numbers OP chose really matter. The point is to do the exercise. Try and work out some numbers on how much the current software is costing, how much room there is for improvement and how much investment it will take to get there. Add a big margin to account for all the uncertainty with building something out.
If the numbers still work out significantly in favour of writing your own software then it may be a project worth considering.
Depending on the area of logistics OP is in, it's not unlikely that he'd need on-call engineers for his logistics management system. Blockages in supply chain can be extremely expensive.
Sure; but eventually you've got a bus number problem and a "I want to be able to take a vacation and I want my coworkers to be able to take a vacation" problem, and that requires more people.
With a company OP's size, I'd definitely look at it from this perspective.
Funding (and related longevity) are key drivers of technical debt. If a team has to constantly pivot projects to politically justify their existence, bad technical things happen.
So figure out a budget model that works, is sustainable, is justified on ROI (as logistics dev will be compared to capex alternative investments).
As a "halfway" solution, you could find 1-2 senior inhouse architect type people (ideally, who have reasons to stick around like quality of life) and pair them with project-based freelance/outsourced development teams. (Hard to find good small dev firms, but they exist)
That way, if dev screws up the project because they're incompetent, you have more options. But you retain the core institutional knowledge and some dev ability inhouse.
And it maximizes budget flexibility and gives you time to find the right people for the inhouse team.
I would caution... the goal of this arrangement should always be to grow the inhouse team until it's big enough to ship projects on its own.
But it's easier to slowly grow a good team than to hire one all at once.
Any sensible freelancer will have an hourly rate nearly double that of a fulltime employee for obvious reasons. Please stop telling him just to hire a bunch of dev freelancers. Projects like this require UX and business domain understanding. Devs are not going to be doing that. This thread is full of amateurs parading as experienced CTOs.
Any sensible freelancer will have an hourly rate nearly double that of a fulltime employee for obvious reasons. Please stop telling him just to hire a bunch of dev freelancers. Projects like this require UX and business domain understanding. Devs are not going to be doing that. This thread is full of amateurs parading as experienced CTOs.
Hardware and software, SaaS licensing, cloud costs, etc.
Hiring costs (recruitment, recruiters, time lost in selection and hiring)
Secondary cost to rest of the business to change processes, retrain, integrate, help the dev team understand requirements, effectively build and iterate, etc.
Quite possibly a bunch of compliance, security, audit, pen testing, and other regulatory costs depending on the demands their clients have, etc.
Running a team != hiring a bunch of freelancers as a one-off.
Stop giving the guy horrible advice. IF you think throwing some freelance devs with no business support/product/UX support is going to help him, you are so mistaken. Trying to rebuild an existing complex software system that handles hundreds of millions in revenue is not going to be an easy task. You are going to put the man into a corner and ruin him. Jesus.
The original question was the perfect setup for an ad, more or less asking “have you ever done this before?”, “What should I be concerned about?”, and “How do I even start this?”. This response may seem ads-y, but it also answers the questions and provides interesting original thoughts (e.g., to start with a cost/benefit analysis). Even if it’s an ad, imo it’s a useful one
I saw a presentation on e-commerce back in the 90s, and this was an astroturfing strategy that was pitched even back then. Don't post a thread about your company, post a question on one account, and then on another account post that your company is the answer. Really it's a strategy that's been around for a lot longer than the internet.
Not saying that this is astroturfing, just that this format has been around forever.
For the record, I have no connection to the original poster, and I’m not in the business of doing this anymore. I wanted to respond because I didn’t see any other threads pushing the OP to think about the basic economics and do some basic fermi estimations of the business case.
> Do people just pull random numbers out of their ass with no actual experience?
That’s a weird question to ask someone who stated their relevant experience in the first sentence of their comment. I just looked him up on LinkedIn and it checks out, you can do the same.
If you have substantive objections to what he wrote, perhaps it’s better to state them explicitly? You seem to say that the figure he suggested is based on developers being based in a very expensive location, and therefore not generalizable.
What numbers have you come up with that contradict his?
~10 FTEs, US, 75% percentile salaries, fully loaded, 1.5-3M. Figure that team salaries is probably about 50% of the total software cost (hosting, support, tooling, on call, management overhead, recruiting, training etc)$3-$5M. Rounded to the nearest 0.5 for convenience. We got about ~4 bits of data from the OP, so I didn’t put too much work into making my estimate precise. I prefer to get the ‘software is fucking expensive and terrible’ experience on the front end and go from there, if people are still into it.
Avg salary in the U.S. is 105k. Better to go on average as you’re not going to high 10 seniors. That would be dumb. Hell getting 10 for an in house app is just as dumb. Hosting? On an in house app. If they spend more than 100k in the first year that’s dumb too. Support for an in house app? That’s part of the dev team. Tooling? For what? Some IDEs and few dev tools like slack etc. Let’s bundle it with their equipment. 100k for some computers and software.
I don’t understand how HN has to always look at the extreme pessimistic side to everything. The type of people here are the ones who go into a business and spend insane amounts of money building junk software wanting to pull in 5 different databases, 3 caches, elastic search and host their 10 years on 25 “microservices” hosted in docker that falls over multiple times a day when 95% of the software people on HN build could be hosted on a couple of load balancer servers with a single db instance. Spend way too much money trying to solve non existent problems.
Cost is not just salary. To begin with, health insurance and other benefits. And they'll need dev environments, they may need additional cloud resources depending on how the project goes, and there will be additional overhead when the team interacts with other departments.
OP is in Europe - no idea in which country but just as an anecdotal example, building a world-class dev team in Estonia is ~100k per senior engineer (total cost, including health insurance etc). Of course there are auxiliary costs in addition to the team itself but not anywhere close to 4.5 mil/year for a 5 person team.
And to be honest, I'm not convinced a moderately complex in-house crud app would really require 5 senior developers but impossible to have a strong opinion on that based on the details that OP provided. It might be a one man job, it might take a team of 10..
I agree that the cost seems overblown but having worked on several very small teams I'd be hesitant to start anything new with fewer than four people. It is possible to get things done with a one or two person team, it's just a lot harder because the moment someone gets sick or goes on holiday everything grinds to a halt. If what the team is working on is on the critical path for doing business it effectively becomes impossible for anyone to have a real holiday, if something breaks then they're going to get roped in to fix it regardless.
If you have a four person team you drastically reduce the bus factor. It also means you can have people routinely pairing on things which can be hugely impactful when working on new software in a new domain like this.
So you’ve barely added anything to the cost on top of salary. Depending on where you live in the world there is no extra costs on insurance or other benefits. Cloud resources on a brand new app in development? Let’s be generous and say 100k/yr for the first year. (If they were using more than that I would fire them as they clearly have no idea what they are doing)
But let’s say they have a 5 man team for in-house development. 1.5m/yr would be a stretch to spend.
Sony still hasn't apologized for multiple installations of rootkits on customer computers. I lost all interest in the company after they made those choices and I'm glad to see that a culture that tolerates such enmity towards their customers and disregard for copyright (they were illegally using GPL software in their rootkits as well) isn't doing well.
You're waiting for an apology? Last I heard, the President of that division said he didn't understand why everyone was so mad. "Nobody knows what a rootkit is anyway, why should they care?" I don't think we're ever going to get an apology from them. If we did, it sure wouldn't make up for anything or change my mind about them. They're evil bloodsucking monsters bent on the destruction of quality technology.
I've been boycotting them since '05 due to that scandal. Fuck Sony.
Yeah, why do so many developers show a Macbook Air these days when 90% of the PC's are Windows laptops? It's especially weird when it doesn't even run on Macs, like in this case.
I caught on to that too. I can't see this reaching a whole lot of hackers if it's a Windows only device. Maybe someone will port the software to Linux/OSX.
.. or Cube makes their printer compatible with one of the many OSS toolchains that already exist.
Why would people bother with reverse engineering their proprietary (and expensive) system, when you could go ahead and spend the time improving the fully open systems that are out there?
... because it might work better?
Have you been living under a rock the past ten years? How do you even envision industrial designers improving 3d printing software?
There are many places in our society where kids can do stupid and immature things but I don't think the adults in our engineering profession need to support or sponsor them. I respect Heroku etc for pulling their sponsorship dollars. I'm a huge fan of supporting adult standards of behavior to participate in adult society and I have no patience for sexism in our field.
Perhaps I should have been clearer. You are correct. We can and should encourage adult behavior. Heroku and the rest did the right thing -- from an adult, socially-responsible position. There is nothing new about this, it's the way professional groups have conducted themselves since forever.
From a longer-term view, this incident will still be around 50 years from now when these guys are grandfathers. This is completely new and has never existed before in the history of humanity.
I don't think it's an either-or situation. The immediate response could be exactly correct and the long-term impact could be entirely out-of-whack.
This story won't be around in 50 years. We think it will because when we grew up, our social flubs simply disappeared. Now they're around forever, but the important thing is they don't exist in isolation.
This story, like all the embarrassing comments I have personally published in forums across the internet, can for all intents and purposes be just as lost to time in a deluge of data as it can in a drought.
A year from now, when one searches the names of one of these founders, or the name of their company, this episode will not even appear in the first few pages of Google search results. Perhaps for a person with a sufficiently strong memory that he/she was specifically searching for this exact story, the incident could be dredged up. But for the vast majority of humanity, probably even those looking for some vague form of dirt on sqoot, the episode will have vanished.
Maciej Cegłowski's essay "A Rocket to Nowhere" is a much better description of how and why the Shuttle was doomed by political and military considerations.
Great essay, thanks. "And we must remember that space is called space for a reason - there is nothing in it, at least not where the Shuttle goes, save for a few fast-moving pieces of junk from the last few times we went up there, forty years ago. The interesting bits in space are all much further away, and we have not paid them a visit since 1972."
If you listen to the audio tape of "The Goal", Mr. Goldratt tells the heartbreaking story of why he wrote the book and what happened afterwards.
As a grad student, he developed software to manage the production of certain key components needed for his research. He then ended up starting a successful software company selling those tools into manufacturing companies.
He wrote "The Goal" as a sales tool to help his customers adopt the software and practices.
The heartbreaking part is that he found the companies that purchased his book were more successful than companies that purchased his software or companies that purchased both.
Once realizing that, he immediately ceased to be an effective salesman for his company and was pushed out as CEO.
Hi, I'm actually a Pivotal engineer (in our Singapore office) and while I can't comment on either of the examples above I do want to clarify that clients don't have to hire Pivotal engineers in pairs. We do pair on all production code and our strong preference is for mixed teams of client engineers and Pivotal engineers. We strongly encourage even team sizes so that there is rarely an odd engineer out.