Speed is the first advantage. Launching a new product presents a team with thousands of small decisions. If you choose to outsource a component, you often need to send people to live in the factory for a prolonged period of time. This means accepting that it’s going to be harder to make choices and to influence outcomes. First, you’re operating within someone else’s environment. Second, you have far less of the product design team available for on-the-spot consultation and decision-making. Nothing beats the ability to have the full engineering team walk into the manufacturing area every day, talk to the people building the products, and gain insights on how to improve.
Great article by former Tesla VP of Production. Sheds light on the manufacturing philosophy behind Tesla's decisions.