As a technical lead on multiple development projects, I’ve had the chance to learn a few things about how to collaborate effectively in a remote setting. As rewarding as outsourcing tends to be for customers, there is an art to keeping both the team and the client satisfied in the long run. Mature companies are aware that both parties need to be in sync and are always careful to invest in maintaining healthy customer relationships and proper chemistry in a business collaboration.
In this sense, I would like to share some insights I learned during the years, which I am sure will help both developers and POs build strong, rewarding relationships.
Meeting Expectations – knowing up front what each party will bring to the table
At the beginning of a relationship, both customer and developer want to make a good impression: while the customer might try to pace his requests and be overly polite in order to not overwhelm the developer, the latter might try to be slightly more available than he normally would in order to show proactivity and start the partnership on the right foot. It is, however, very important that neither party goes above and beyond for the sake of appearances – honesty and transparency are two of the most important values governing remote collaborations, and, as a developer, it is important to show a realistic modus operandi from the very beginning. Mindfulness of the scope – be it project requirements, or the no. of dedicated hours – is essential to nurturing healthy customer relationships.
The Importance of KPIs
A clear scope, along with clear KPIs can minimize friction between parties and facilitate efficient, clear communication. It also enables the creation of proper change management mechanisms, thus ensuring that, while some requests may be out of scope, they can still be addressed in a timely manner.
Decisiveness – clear direction from the customer, ownership from the developer
With clear expectations and KPIs comes a need for decisiveness and ownership. We mustn’t allow indecisiveness to be a trademark of customers, or lack of ownership of developers. Indeed, a client might ask us to revise a proposal several times, but, as developers, we must make him aware that excessive revisions may lead to lost time on both sides, ultimately affecting the wellbeing of the project. Time is the most important resource in today’s IT development industry, and speed, the most valuable advantage. Moreover, excessive repetitive tasks can, in time, damage the developer’s code quality, as we spend more time doing grunt work than we do being creative and trying to give your product the edge it needs. Trust us to know better, when it comes to code.
Time Management – availability & boundaries
Some emergencies are bound to appear, particularly when deadlines are closing in. While these are fine, both client and developer need to share the same understanding of what an emergency actually stands for. Further to that, availability hours are essential – developers must be mindful of the client’s schedule and minimize requests and messages to what is essential. Clients should also be aware that most requests will be addressed in working hours and not expect instant replies if time zone differences are also at play. Agreeing on these matters early on will cement trust and facilitate a predictable environment where both parties feel comfortable, thus ensuring that healthy customer relationships are maintained.
Communication – approach to requests and feedback
Both customers and developers are individuals with unique sets of values and, naturally, their approaches may differ at times. Thus, not all solutions can always please everybody. That is why clarity when providing directions and arguments is of great consequence. Transparency and feedback are the go-to toolkit for navigating work relationships: focus on the positive, be lavish in your praises and gentle in your criticism, and ensure that the underlying feeling is that both developer and customer are part of the same team, sharing the same goal.
The key to healthy and successful customer relationships? Constant communication, transparency and a little bit of warmth. For the more pragmatic, note that having a long and successful relationship translates into high quality savings for both parties. Project managers and lead developers should, essentially, invest in becoming empathetic leaders. If empathy is present in the relationship, overall team performance will certainly exceed expectations.