Live data from Hacker News

Ask HN: Should we bring software dev in-house?

news.ycombinator.com

221–230 of 607 posts

Re: Ask HN: Should we bring software dev in-house?

#221
I used to do this kind of work as a contractor (for logistics and manufacturing), and I've it seen go both perfectly well and tragically wrong. The most common points of failure I've seen are underestimating the amount of business/domain knowledge needed and picking the wrong team.

Sometimes it's worth bringing someone in to build a temporary prototype to test the waters (I once wrote a wireless hand scanner pick system for a startup warehouse in a weekend -- they planned to throw my code away but just needed something functional right then.)

I would only pursue it if:

- your business is truly niche/unique and there's a significant cost due to process friction

- the total amount of work needed to have a functional product could be completed by one or two good developers in a matter of weeks/months.

If you do pursue it, I would try to take advantage of the Python Paradox (https://paulgraham.com/pypar.html) and hire someone, counterintuitively, working in a niche technology. You could probably find someone pretty good willing to build it in Elixir without much trouble.

Re: Ask HN: Should we bring software dev in-house?

#222
post #62

IME what works best getting new projects kick started is hiring a very small team of senior freelancers, making one of them lead, and letting them loose. I worked on such a team once and it was really excellent. The advantage of this strategy is if the experiment doesn't work out, terminating freelancers is much easier than permanent (I noted you're based in Europe). Contrary to what other people said, I wouldn't try…

This is excellent advice but I would back up a few steps and do a few things before bringing in a freelancer team. Identify a part of this system that can work somewhat in isolation and is non-critical if at all possible. Then document the requirements for this part thoroughly. This allows you to: - Have something smaller for your new team to cut their teeth on. - Ensure you have collected all the diffuse domain know…

> This is difficult and time consuming so start now.

A specific difficulty you are likely to face:

Your expert employees are busy doing their jobs. Writing requirements means taking attention away from that work - a difficult proposition, especially if they have managers who will ask why their KPIs are slipping.

Re: Ask HN: Should we bring software dev in-house?

#223
post #91

Earlier quoted context omitted.

Genuine question: how do you suggest for that code to be maintained long-term if the original team was just freelancers?

Acknowledge and incent the exit plan from the beginning Incrementally, it might make sense to hire an independent audit on occasion. This might be hiring a senior to jump into the codebase for a week or two to see if they can make sense of it or see any glaring red flags. The important part is them knowing this will take place and them not knowing exactly when or by whom.

The important part is them knowing this will take place and them not knowing exactly when or by whom.

I recommend caution with this kind of approach. Even if you're bringing in a team of freelancers instead of hiring employees trust is still an essential foundation for the relationship. Clients who play silly games tend to get fired abruptly because it creates a toxic working relationship that isn't good for anyone involved.

You should be able to have an open and ongoing conversation with your team of freelancers about the long-term intentions for the system they are building for you and they should transparently and proactively work towards your goals without being nannied. If that's not happening then you don't need some kind of surprise audit - you need to find different freelancers who are on the same wavelength as you.

Re: Ask HN: Should we bring software dev in-house?

#224
I’ve been on a team life this in the freight auditing industry. Questions I have 1) how much time and how much money are you willing to spend before you have tool usable for production? 2) if the tool does 100% of what you want, what is the benefit and payback period? 3) Do you plans for more development? How will that be funded?

Re: Ask HN: Should we bring software dev in-house?

#225
post #91

Earlier quoted context omitted.

Genuine question: how do you suggest for that code to be maintained long-term if the original team was just freelancers?

If you do go this freelancer route I would assume that there will be no code to maintain long-term. The freelancers should be building a prototype, not something intended to last decades. Either the freelancers work out and you begin hiring a permanent team (hopefully converting some freelancers to full-time) who will promptly rewrite / revise the prototype or you will go back to paying for software. Either way the p…

The artificial distinction between a prototype and a production system rarely survives reality in my experience. But that doesn't matter because the situation with long-term maintenance is not so different with freelancers doing the development to what you'd have to do with an in-house team.

It's rare for anyone to be around to look after the code they write for you forever. Ironically you might have more chance of a good long-term relationship with some of your freelancers - having a few good clients who come back to you from time to time is an excellent strategy as a freelancer.

So you always need the system and processes to be designed with future maintainability by other people in mind. Good developers will do that whether they're employed or freelance. Bad developers will mess it up either way too. Choose the people you work with wisely and try to make sure when you do bring in new people they have a good way to get up to speed so they can naturally take over as others leave. There's not much else you can really do.

Re: Ask HN: Should we bring software dev in-house?

#227
post #62

IME what works best getting new projects kick started is hiring a very small team of senior freelancers, making one of them lead, and letting them loose. I worked on such a team once and it was really excellent. The advantage of this strategy is if the experiment doesn't work out, terminating freelancers is much easier than permanent (I noted you're based in Europe). Contrary to what other people said, I wouldn't try…

Good freelancers are expensive and don't stick around long-term.

Good freelancers are expensive because they know the value they provide. In this sort of situation you tend to get what you pay for.

I don't know why you think they won't stick around long-term. I've seen many freelancers maintain relationships with clients for a decade or more - not necessarily full-time as if they were employees of course but with a genuine connection and coming back to do more work with the same client from time to time. If you want to retain access to the knowledge and insights of your early developers but also want to bring things more in-house - often because you don't need an all-star team to do every little thing once the system is in production and hiring a more mixed team is sensible financially - then this kind of occasional recurring contact can work well for everyone.

Re: Ask HN: Should we bring software dev in-house?

#228
I’m part of a 20-person company that was in a similar situation. We have since built our software in-house, replacing the software we previously struggled with, and it’s worked out even better than I originally hoped because it felt so audacious at the time.

One thing I think is key is making sure that whoever is leading this project (the lead developer, not just the person they’re reporting to) needs to know the business cold. They should spend serious time learning the roles of the people who will be using the software so they can design it well to solve the problems those roles face. I lead the development for us, and I attribute most of the software’s success to simply having spent so much time in so many roles in the company. It’s that cross-section of knowledge that makes all the difference.

Re: Ask HN: Should we bring software dev in-house?

#229

Whatever you do, don't hire some tech bro who tells you that you should build this in Ruby On Rails or Elixir or Elm or Rust or something on the cutting edge in any way. This is standard corporate technology and needs standard ordinary technology. There is zero requirement for this sort of application to use anything fancy. Indeed if you use fancy technology that scratches the itch of a tech bro then you are buying y…

Agree with this re serverless cloud computing

Re: Ask HN: Should we bring software dev in-house?

#230
I would highly recommend first of all reading "Peopleware" and "Mythical Man-month" which are all about making this type of decision. Since this is data exchange, you need to map out the data flows your company does and where things are working and failing currently. At that point you should have enough information to start making decisions.
Post reply on HN