In 1675 Isaac Newton wrote to his rival Robert Hooke: “If I have seen further [than others], it is by standing on the shoulders of giants.” I’m reminded of this when building a software development team. Regardless of your time in the industry and your breadth of experience, one person alone can’t hope to have enough up-to-date knowledge of what is needed in every discipline: think front-end/back-end dev, quality assurance (QA), UI/UX, business analyst (BA), product management and project management.
Perhaps you’ve been asked to build a temporary team to deliver a project, or you’ve joined a startup where a new team is needed. Maybe you’re rebuilding or scaling an existing team. Whatever the scenario, you need giants whose shoulders you can stand on.
Often, you’ll get unsolicited views on whether this is best done in-house, outsourced or a hybrid of the two. As usual, the answer is “it depends”. There will be personal and company preferences, but often financial or timing dependencies, too. It also depends on what technology is required and whether knowledge about that will form vital IP the company needs to retain for its