Last night I met with Chris, an old friend of mine who manages relationships with a large group of software developers and QA engineers located in Campinas, Brazil. He’s been working with this team for over a year after being brought in for a short term contract – an offshore “rescue” operation. The relationship between his client and offshore provider was going nowhere quick. Milestones missed, quality of deliverables deteriorating, blame shifting and finger pointing proliferated. The relationship was clearly falling apart and management frustration reached a point where they no longer were prepared to deal with the vendor.
Apparently the history of the offshore relationship for Chris’s client was rather consistent – find a new vendor, go through 3-6 honeymoon period, then things start braking here and there, the company attempts to improve situation by assigning one of the employees, s/he attempts to salvage the situation, but after a some period of temporary improvements things go from bad to worse and the search for a replacement vendor is initiated… and the cycle repeats. By the time Chris came on board his client was on fourth vendor, this time a small company from Brazil.
The problem was “100% with the vendor” – “lack of understanding of the company’s objectives, poor English and overall communication skills, high turnover, mañana attitude, etc., etc.” – at least that what was what the client told Chris.
Needless to say, Chris found that “at least 60% of the blame laid with the company” very quickly after getting engaged. More so after his first two week at ODC in Campinas, he saw it more like 80% – most of the problems with engagement were originated and reinforced by the actions of the client.
It took Chris about 3 months to get project back on track. 3 months of developing and instilling new processes, systems, and communication channels. Hard work and uphill battle in some cases. The changes affected both the client and the vendor and eventually were recognized as “worthwhile changes and job well done” by both parties. I guess that was the time for Chris to move on. Yet, his client was smart to understand that letting Chris go at this point would result in some of his work starting to deteriorate with inevitable failure as an outcome. So he negotiated a maintenance agreement, relatively small allocation for keeping relationship in place. This strategy paid off – for past 10 months or so the relationship between his client and offshore provider remained intact, both parties are reasonably happy, and the team grew in size ~25%.
Chris told me that the key element of his success is a daily routine, he has established. It takes him roughly 2.5 hours a day
- Prepare / Review logs, metrics and KPIs, 15 min
- 3 daily SCRUM style meetings, 30 min each (his offshore team is split in three groups of roughly the same size, one of them is actually running SCRUM, two others are on Waterfall)
- Each team member – What was done yesterday / What’s on the plate today / What obstacles emerged and need to be removed
- Round table – What risks emerged and need to be mitigated
- Temperature check – metrics / KPIs
- Follow up (email / skype / phone) to escalate / resolve new issues, 45 min
In addition Chris has a one-hour weekly call with technology leadership of the client, mainly to report on status, receive feedback, and see what’s in the pipeline, and one-hour quarterly meeting, which could be characterized as “executive briefing”.
According to Chris, this routine proved to be 100% sufficient to keep the engagement on track and both his client and the vendor happy. From my standpoint, assuming that Chris bills his client for 3 hrs a day at market rate that is a very inexpensive solution for problem that thousands of companies face every day. I also believe that one of the keys to success here is independent role of an offshore manager. If Chris were a permanent member of vendor’s or client’s team chances are the balance would be far more difficult to maintain and inevitable much more expensive.