I think you can be successful outsourcing to WITCH or other consultancies IF you have an in-house, full-context software engineer managing the project and keeping people accountable.
You have to be careful because if you ask for someone who is "an expert in X technology", you'll definitely get someone, and they might be able to describe it at a high level, but may not even know how to compile a program or how to copy a file (yes I have literally seen this firsthand). You need to give people explicit instructions and be willing to help, and the in-house software developer almost definitely needs to provide things like architecture/spec. And you need to actively fight the need to increase the staffing for the project and prevent dumb/churn processes from taking over (example: writing 40 different scripts (separately!) to do something that could just as easily be done by one script with three parameters). And you need to manage the project into a position where maintenance/ownership can be transferred.
You also need to set them up for success by having a clearly defined scope and playing towards their skills (which means, don't give them work that needs a ML PhD math genius, do give them work like "write a PHP website that does this and looks kinda like that"). This is part of what I think the article is missing but also not really a fair expectation of what an outsourcing firm is. Consultancies are not meant to come up with 'killer apps', and you can try to pay them to do so and they'll be happy to take your money, but you shouldn't.
You have to be careful because if you ask for someone who is "an expert in X technology", you'll definitely get someone, and they might be able to describe it at a high level, but may not even know how to compile a program or how to copy a file (yes I have literally seen this firsthand). You need to give people explicit instructions and be willing to help, and the in-house software developer almost definitely needs to provide things like architecture/spec. And you need to actively fight the need to increase the staffing for the project and prevent dumb/churn processes from taking over (example: writing 40 different scripts (separately!) to do something that could just as easily be done by one script with three parameters). And you need to manage the project into a position where maintenance/ownership can be transferred.
You also need to set them up for success by having a clearly defined scope and playing towards their skills (which means, don't give them work that needs a ML PhD math genius, do give them work like "write a PHP website that does this and looks kinda like that"). This is part of what I think the article is missing but also not really a fair expectation of what an outsourcing firm is. Consultancies are not meant to come up with 'killer apps', and you can try to pay them to do so and they'll be happy to take your money, but you shouldn't.