There’s no single answer to this question. The best path for you depends on:
Whether digital products are one of your organization’s core competencies, and whether that is a goal for your business
Whether your project needs progressing in the short-term
Whether you have the budget to sustain an in-house development team long-term, and can compete with top tech firms for an in-demand profession
Outsourcing is a fast, cost-effective way to access a global pool of talent, without having to fight half of Silicon Valley tooth and nail to hire top Python developers. This means that you can realize your vision faster and cheaper, and launch more quickly.
Needless to say, in a fast-moving environment where time to market is paramount, this gives you a significant advantage. If you’re looking to attract the attention of investors, getting an MVP out there whilst you know your idea is unique can be the difference between funding and no funding.
If establishing an in-house development team doesn’t fall within your long-term strategic interests, outsourcing might be your strongest option.