I have been working from the offshore office as part of offshore delivery team for years. However for almost two years now I have been working onsite with our customers managing project delivery using offshore team. Learning from my experience i have prepared a list of Dos and Donots for the onsite resource in the offshore model. Good news for all the offshore developers is that as per my analysis the success of 90% projects , impemented with onsite-offshore blend, is dependent on the onsite team manager / business analyst. However this does not imply that onsite resource should take all the credit for a successful delivery because a project can only be succesful if offshore team delivers quality in the estimated time. Here are some of the key points regarding the onsite resource’s responsibility.
This is the most critical aspect of software project delivery. As it has been documented time and again so i will not go into the details. However with onsite-offshore blend the requirment gathering phase becomes even more challenging. In this model its not only the requirement gathering and documentation that is critical but also the communication. Onsite resources must understand that offshore resources do have direct access to business users and they can only develop what has been communicated. Offshore resources can raise only a limited questions given the project timeline and thus Onsite resources must make sure that requirements are not only gathered correctly but they are also communicated and understood by offhsore team.
Depending upon the nature of project, onsite manager must drive the delivery process not only in terms of project management but also interms of some of the key technical decisions. Most of the projects are either an extension of an existing application or in case of new applications they involve some sort of integration with rest of the applicaitons. In either case there is a requirement for the offshore team to understand the existing architecture and re-use the functionality already available. As the offshore team is mostly on its own to understand the existing code (often without documentation) the Onsite resource must play a very important role in responding to the questions and making sure that offshore team follows the same standards and conventions. If onsite resource does not have the technical background then this becomes really challenging. It might work for businesses where the project is outsourced but in case the modules by offshore team are developed in conjunction with development by onsite resources then it is even mor important to have the process in place for the test case verification and code reviews. It is often a good idea to involve the onsite team as well but then the whole purpose of offshore is to take work load from onsite and get it done offshore. Onsite resource must make these decisions upfront to manage client expectations and quality of project delivery.
Another important role often given to onsite managers is to make sure that they generate more business for their company. More business either in terms of continuation of projects or maintenance work. Onsite managers work on this in different capacities but from my experience here is what i believe works best. Onsite Managers / analysts should wear just one hat when they work for client’s on premises and that is ‘Client’s employee hat’. Onsite resources should forget about the company they are employed by and about the interests of that company. This way onsite resources slowly builds the trust of the company they are contractors for which is the most important thing in my opinion for the long lasting relationship. If the trust is there and Offshore team delivers quality then the account would autmatically grow. In addition to this one more thing that the onsite resources must do is to make sure that client knows about all the services that they themselves or their company offers. However its easier said than done as while communicating such things the client must get the impression that its being done in their best interest and not as part of sales activity for the employer.
Honesty is the best policy:
To conclude i would just say that for a long term relationship honesty is indeed the best policy. Honesty in work does not imply that one should be blunt in communication. Its implication is just that one should always be fair to the client and raise concerns and questions about all the problems in the organisation like an employee. Politics and culture varies in each organisation and onsite resources should be able to understand and counter it but again in a way that the actions are driven by the all important goal of greater client satisfaction.
Last but not the least is patience. Normally it takes time to build a relationship and even more time is required to get results so haste with offshore-onsite blend would certainly result in waste. More than the onsite resources the consulting company should understand this. Onsite resources must also understand that good relationship with client and quality deliver would result in on going business but only if client has the finances and projects. So one should keep an eye on the financial situation of the company as that is eventually the primary source for business generation be it onsite or offshore.