Not exactly an IBM specific post but I can’t help but question why we need huge offshore teams to perform tasks when fewer local resources can do the same job. Bear with me on some quick maths:
In an offshore team to do custom app dev, for example, you have a huge management structure offshore and people assigned to a singular granular task. You also have to add some local client relationship management.
In a local custom app dev team, you have people who can self-manage, manage the customer relationship because they are onsite, and do full stack dev including testing and tool install.
Give a 12 week project for example. 4 SW engineers, each with their own workstream x average hourly rate of 200 x 12 weeks = $76,800. Even add 15% travel and you get $88,320.
Same duration leveraging offshore, you would still need 2 local relationship managers at an hourly rate of 200x12 weeks = $38,400. Consider the same 4 workstreams, each with a PM, 2 dev, 2 test plus overall PM and offshore exec oversight at an average hourly rate of 20 and that will cost you $38,880 for a total of $77,280.
Net-net, the costs are nearly the same. The difference is, you introduce so much risk into the offshore project by having multiple layers of management, onshore and offshore, having developers without direct client contact, and too many handoffs between team members. Not to mention the offshore approach of work package management is entirely against agile/DevOps.
So again, not specific to IBM, but my brain hurts when trying to rationalize why we need heavy offshoring when fewer, local resources can do the same job. And why we relentlessly offshore when we have local, skilled people sitting idle either on the bench in the case of Services, or doing PM work in the case of SWG.
I’m not opposed to global collaboration by any means, but as a program manager myself, I am opposed to introducing unnecessary risk into my projects.
Surely someone else has figured this out already, right?