In Inception, or what you do before you begin I talked about a phase of discovery and acquaintance both for you and for your customer. In “Fraternization, or creating friends and allies” I take that further, describing how genuine collaboration and friendship between you and the customer can bring you closer to delivering a great software product, while creating allies and long-lasting friendships.
It is a known fact in software development that customer involvement in all phases of the project greatly increases the chances of success. Having the customer work together with your team gives them a greater sense of ownership, increases their interest and will ease the way to acceptance.
Customer immersion is not a dirty secret; the acceptance is not eased because they get a greater sense of ownership, it is eased because you are actually doing what they want. While working with the customer’s project team, during long projects, you will undoubtedly start to know them better, especially the team members that tend to interact often with your team. Nurture this interaction, accept them as part of the team, be honest and always respect their opinion. Remember that they know what they want and your job is to help them achieve their objectives.
Having said that, I have to warn you about two things: first, fraternizing only works on long-term projects (I’m talking years… not months) and secondly, it must be genuine. Trying to fake friendship and involvement is a cheap trick that can be easily seen and that will turn them into enemies.
Together from day zero
Spend as much time as you can with the customer’s team at the beginning of the project. It’s that easy!
Even if your customer is on the other side of the world, that is not an excuse – get laptops, get on a plane, work with them. If it’s in their offices that’s even better. I am writing this from my hotel room in Baku, Azerbaijan, after spending the entire day with the customer discussing and planning the start-up of a new phase of a national project.
No!, sending a team of analysts does not qualify as “quality time together”. Prove that you are on the same boat by bringing as many team members from as many disciplines as you can.
Quality time together will help create a bond between your teams and it will put the project on the right track. It will give your team the opportunity to prove that you are the real thing and most importantly it will:
- give you a valuable insight on your customers inner workings
- have a great project start-up together and thoroughly note their expectations
- allow you to adapt to their culture and filter out 80% of the misconceptions at minimum cost
- have your team meet the customer’s team so that in the future, when working together, even on critical incidents they will be able to communicate more effective because of familiarity
- exchange contacts securely and directly – detect and familiarize yourself with those key members that we talked about in Inception, or what you do before you begin
I you run an agile shop, have iteration zero together. Show them you mean business, involve them in the process, immerse them in the design phase, build a macro road-map together and position some stories. Demonstrate what you have achieved together in the first review and then…
Enjoy the fruits of your labor
A key factor of productivity and success, both personal and work related is celebrating.
Celebration and dissemination of success is a key technique that, when used properly and correctly, will advance your project, create long-lasting and successful collaborations, reduce stress and prepare everybody for the next big step.
Celebrating you success together, even small breakthroughs, beyond creating a bond between your team and the customers team also:
- gives an overall sense of good, the “closure” needed to proceed to bigger challenges
- proves that your mission is not impossible and that by working together you can accomplish anything
- proves to the stakeholders that the project is advancing
- bigger success stories are perfect for large scale dissemination, getting the project out of the hidden corner and into the light
You can celebrate together by taking the team out for drinks, having a small in-office party or just by having a time-out and discussing what you have just achieved. It all depends on the size of the achievement.
After the celebration, send an email to the customers team leader, project manager or even general manager stating what a great job their team does and what their contribution was to the achievement. Don’t overdo it and don’t CC or BCC the team, their manager will let them know, in his own way.
Shoot the messenger
Give them a direct channel for communication. If they want to get in touch with you, make it easy for them.
Give them your phone number and always answer. If you really can’t answer when they call, have an internal non-official maximum time of response and stick to it. If you’re doing something else, excuse yourself, answer and tell them that you will call them back as soon as possible.
If they use instant messaging or Skype, get an account and talk directly to them, whenever they need you.
You will be surprised of the long-term effects. When you will need them, and you will, they will also be available for you. Fixing dodgy or unclear issues will be a breeze, by avoiding emails and the incident tracking system you will win time, clarity and in time, friends and allies.
Mutual help and lasting relations
By following this simple set of rules, I have gained friends in every project that I have ever worked on, people who I still interact with and help and that also help me when I need it, be it introductions, references or even the occasional hotel reservation in their city. I enjoy meeting them and I always enjoy working with them.
Some of the topics expressed here will be elaborated further in my The lore of delivering software products series so stay tuned in for more information.