Having to hire in more staff creates cost liabilities for them. They'd rather outsource things. That means they lose the skills in-house, and often end up needing consultants to help fill the gaps in their knowledge (after having lost their skilled people to the outsourcing companies, or other sectors).
Some telecoms companies have outsourced their development to Tech Mahindra and others already... And yes, in my personal view, they'd be far better hiring random software engineers and undoing the decline in control and understanding of their own business they've overseen.