We are currently using in our company the "Apple Enterprise Program", but my company is planning to outsource the developer department. So we won't do in-house development anymore. So my question: Is it possible to add external companies to our developer team? If not, is there any other way, to work together with external companies for developing in-house software, without publishing it in the App Store.
I think you won't be able to add 'external companies' to your existing Apple enterprise program because this type of account/program has not been designed for that. But for sure, you'll be able to add external developers (ie : developers working for another company than yours) to your Apple Enterprise Program account.
As an independent iOS developper, I've been added several times to my clients development teams (which had an Enterprise program).
From their point of view, I was an 'external developper'. They could manage the access rights of my dev account in their Team (as a developper my scope was limited on Apple dev portals/tools, eg: I could not see some 'non developer related pages' on AppStoreConnect portal), or revoke my dev access to their team at any time.
If you plan to stop in-House development in your company, I think you have 2 options :
Keep your Apple Enterprise program, and add 'external developpers' to your dev Team each time you need it (good if your company owns the applications that are developed by the external developers)
Quit your Apple Enterprise Program, and let the other (out-sourced) company handle the "development team" management (they will need/use their own Apple developper program to add your/their developers into their dev team) (good if the other company has to own the developed applications)
Beware : any app developed (even not published on the AppStore) is owned by the company that owns the developper account (Enterprise or Individual) which has created the app in Apple portals (AppStoreConnect + developer.apple.com)
It may not be very clear, but hope that helps ^^