Thursday, November 14, 2013

On Multi-Site Collaborations

Now that the PM Days 2013 conference is over, I thought of assembling my notes and posting them here - more like a collage of thoughts, supported by slides from the presentation.


PM Days 2013

Why speak about multi-site collaborations? 


Well, for several reasons. One is that the topic is actual and that chances are that every professional project manager will, at one point throughout his or her career, have to organize a project that spans across several geographically distributed locations. If you are not convinced, just check the image below. :)


Globalization

Of course, the collaboration setup comes with its share of risks that we need to be aware of. It is my belief that anyone who had formal PM training, qualification and also practical experience should be well equipped to handle such a distributed project. PMBOK is a great reference and it was one of the aims of my presentation to look at multi-site collaborations through the PMI lenses: identify the patterns and build a collaboration model inline with what we already know.

As I am an engineer by trade and I like things clear, I need a model to rely on, a model that is discharged of emotional mess, that it is conceptually simple and from which I can easily draw my own conclusions as the project develops. Such a model should scale easily and it should be independent of the project specifics (like methodology, scope, stakeholders, initial risks and assumptions) .


Another reason is the personal opportunity. I honestly believe that collaborations open the gates of the world to the people involved in them. They are an amazing chance for learning, sharing, reaching out to other people and experiences and contributing to significant projects. By collaborating, we can build on each other's strengths while minimizing our weaknesses.


While the pessimist and the optimist fight over whether the glass is half full or half empty, the opportunist steps in and drinks it (thank you, Anca, for this joke)


The third reason is the business need  - the case of having to ramp-up quickly to a large number of people (hundreds), with very specific talents (composers, artists, specialized programming, etc...), which may not always want or can relocate. Without such collaborations, large scale projects may have not existed at all or smart professionals located in various corners of the world might have never had a chance to contribute to them.

S-curved ramp-up


To conclude, I will quote the presentation description from the conference website: "we live in a globalized, hyper-competitive world, where companies need to constantly reinvent themselves, their products and their processes in order to survive – all at an incredible speed. Talented people are key to organization success and thousands of papers and books have been written about how to acquire, retain, train, motivate and best use them. “Our employees are our most important assets” are not just buzz words; they are a realization that without the proper use of their human resources, then even the best strategy will fail.

Talented people are hard to find. What do we do when we need hundreds of them? Fortunately, globalization and the age of Internet have provided an answer: distributed teams and multi-site collaborations." 

What is a multi-site collaboration?




Multisite collaboration vs distributed team


To avoid confusion, just a few words about the terminology I will use from here on: 

  • Multi-site collaboration: several teams, located in different geographical regions, working together on a project. The main characteristic is the asymmetric access to information. It is much easier for a team member to build a relationship with a colleague sitting next to him/her than to connect with someone remote. Due to our tendency to favor social comfort, team members will favor local relationships at the expense of distributed relationships, thus local tribes appear. This setup is characterized by a high communication bandwidth locally and a low communication bandwidth between sites.

  • Distributed team (think of open source model): team members are distributed across the Internet. Access to information is symmetric, thus people will tend to build their social networks online. The tribes will form based on common interests and less based on proximity (because there is no such proximity).

The topic presented here is multi-site and not distributed teams (as per definition above). 

  • Lead site - the site that initiates the project or where the project manager resides. 

  • Associate site - a site that was invited to assist in the development of the project.


1. A buyer-seller relationship


Probably the most important conclusion we can draw by looking at the diagrams is that, even if the project happens under the umbrella of a single company, it still resembles very much to a buyer-seller relationship. And this is good news, as we have a model on how to approach it - the Procurement Knowledge Area from our beloved PMBOK. Thus, we already know that we need to perform several steps and end up with a contract between the sites. How should the contract look like? It depends on the scope of the collaboration but, somehow, it should be aligned along the lines of Fixed Price, Cost-Reimbursable or Time and Material. It can follow the Agile guidelines or more traditional ones. 


This leads to at least three main corollaries: 
  • The lead site is the client for the associate - thus the associate should treat the lead site with a client-oriented mindset. Key words are "being of service" and "delivering value".

  • The relationship should be a little bit more formalized than in a collocated setup.

  • The associate should manage itself  (and have a good project manager on site) and that there should be a project manager on the buyer (lead) side as the main point of contact for the seller (the associate). 

I believe that the conclusions above are independent of the methodology employed or the scope of the collaboration. The exact details of the process should be clarified in the contract.

Project managers on both sides - buyer / seller relationship


2. The associate (seller) should take full responsibility for the collaboration 


LS - lead site, AS - associate site; the rest are various stakeholders


While one side should take full responsibility for the collaboration, I believe that the seller (the associate) should step in and guide the buyer (the lead) on how to deploy a successful process. Here is why:

  • If there isn't a very strong motivation on the seller side to collaborate, the project is doomed to fail. The seller should have a very strong incentive to develop further, secure a constant stream of work for its people as well as a constant revenue flow. I believe it is healthy for the seller to aim at getting a bigger piece of the pie.

  • The lead outsources part of its work because it doesn't have the resources to do it. By having the associate provide the full service to the lead, the lead offloads itself further while it shortens the communication chain, thus reducing the associated communication risks: misunderstandings, delays, things left out.

3. There are specific risks associated with multi-site collaborations


Let's look at the setup again:

The model

As said before, there are two main characteristics of the setup above:

  • Asymmetric access to information due to the huge difference in communication bandwidth between the local and the remote, which leads to local "tribes". As a side note, I believe that it is healthy to acknowledge the existence of such tribes and celebrate their existence within the main project. This can be done by simple means, like customised T-Shirts with the geographical location imprinted next to the project name or cultural newsletters.

  • The lead site has much more knowledge about the project then the associates.

These spawn several risks, some of them highlighted below:


Risks

  • Unrealistic expectations from all sides:
    • Top management - "collaboration should work"; this is especially true if the organization is new to such collaborations and does not have a uniform PM and risk methodology.
    • Lead site - "we will not be challenged"
    • Associate site - "we are welcomed with open arms and our ideas will be embraced from day one".

  • Challenge to existing hierarchies and the associated resistance:
    • For the lead site, the new guy on the block (the associate) expects to be part of the decision making process.
    • For the associate, people that were once regarded as authorities in their field will now be subjected to test and will have to prove once again their value to the organization. Some of them will not be able to adapt as their position is challenged.

  • The associate being out of the circle of trust:
    • It is normal that there already exists an established decision making process in the lead site. It is not obvious why it should change, thus the associate needs to prove its value in order to get the necessary trust to be part of it. 

  • Misunderstandings due to remote communication and language barrier. Assumptions

  • The things "we don't know we don't know":
    • I particularly like this one. These are the things that are so obvious for one site that it forgets to mention them to the other, like technical shortcuts, changes in technology or changes in the plans that were not propagated - the tacit knowledge in the project.  Because of these, the associate should never rely on the lead site to tell them when something happens. I believe that the associate should be on a constant lookout for changes and have a very proactive process to identify what they don't know they don't know. The excuse "I have not been told" is not acceptable.

4. To mitigate the risks, we need specific profiles as key players


In order to mitigate the risks above, I believe that the persons that take key roles in collaborations should have several personality traits that should not be treated easily:

  • Modesty: 
    • To listen to the other side and be willing to admit that he/she may be wrong or not have all the information.
  • Outgoing: 
    • "Everyone communicates, few connect" - J. Maxwell
    • Because of the short time spans that teams spend together, key players should be skilled into quickly building relationships. There's no time to lose and there are so many things to find out.
  • Questioning skills:
    • As mentioned before, key players need to dig out the information themselves and not rely on what they are told. They need to be able to uncover project scope, identify stakeholders or find risks quickly and effectively. They need to be very good active listeners.
  • Assertiveness:
    • Sometimes things get out of hand and, at that moment, key players need to show self confidence and control the conflict. They need to be able to stand by their positions. 

In addition, they should not be afraid of putting things on paper because, in the absence of a healthy base of tacit knowledge and personal relations on which to rely on, security should be given by process:

Relying on process in the absence of another solid base

5. Successful collaborations need support from top management


Because collaborations are never easy, top management should be on the side of the collaboration:
  • Time and money and the assignment of additional roles (like the collaboration manager) invested with enough authority to challenge the PM on collaboration topics.

Collaboration manager acting like a coach and supervising the collaboration

  • If multisite collaboration is a strategic direction and not a one time initiative, there should be collaboration KPIs in place which, I dare to say, should not only sit side by side with the rest of the project KPIs but, in terms of priority, score even higher. The PMs should have strong incentives to make the collaboration work. These collaboration KPIs should be followed throughout the duration of the project and archived. No surprises at the end and no post-factum blame if the project is not successful. 

Project report which also includes follow-up on collaboration KPIs

  • Clear escalation path which supports communication to the other side first, favoring problem resolution not complains.



Escalation path: talk first to the other side


6. Some tools (hacks) can help a long way

  • Linked-in & sharing of professional CVs early in the collaboration: 
    • It is one thing to be challenged by John Doe whom you don't know anything about and a totally other thing to know that your peer has 10 years of relevant experience. 
    • Link to CV can be added to email signature or to internal messenger status to be easily accessible. 
  • Video conference:
    • Not much to say - it is one thing to discuss face to face and look into the other person's eyes and smile, and a totally different thing the cold, impersonal email communication. 
  • Clear collaboration charter - the contract between sites:
    • Not to underestimate! In a collaboration things need to be agreed upon and then put on paper. 
  • OPPM report: a great tool!
    • Not only that it is clear and easily readable (after all it is only one page), but it should also include regular follow-up on the collaboration KPIs, like the satisfaction of the other side.
  • Recognize group identity
    • Groups (local tribes) exists and it is in the power of the project manager to position them in the context of the project, thus leveraging their potential. 
  • Recognition of the collaboration overhead
    • The carrot.

Instead of the final conclusion:


I believe that collaboration comes natural to us, we just need to be open to it. We've managed to work together since ancestral times, thus ensuring the survival of our species. We should be able to adapt this innate ability of ours to the modern times, as long as we embrace it as an opportunity.

To collaborate is natural to our species

(Thank you Andrii Shafetov and Google for the artwork).


Sunday, June 2, 2013

Mistakes (Junior) Managers Make

Two excellent threads on Quora:

To the already long list of mistakes presented there, here are some others I've experienced so far:

Thinking that it is enough just to create task lists in Excel

I have seen quite a few managers that, after being appointed into position, completely forget their craft, forget about people, forget about product and transform themselves into task administrators. The problem, I guess, lies in lack of role models and lack of understanding of the job. Management is not a reactive profession, but rather one that requires time to think and put things into perspective. 

To overcome this situation, one needs to seek for role models, read, ask questions, network, escape the comfort zone of always being busy. This is particularly hard and requires a lot of emotional energy, especially in an unstructured environment, without clear performance metrics and job descriptions. 


Disconnection from the product

I also call this "management from excel" or "management from inbox" and, to me, it means relying only on reports to mark work as done instead of going on the floor and inspect the product yourself. This is very dangerous as it leads to optimistic reports where everything seems fine while the product is completely broken. It also leads to non-communicative behavior in the team, lack of challenge, lack of risk management, sloppiness that spreads - the broken window effect.


Transparent manager

Every communication layer needs to add something valuable to the communication. When communicating up, the manager needs to create a new layer of abstraction and encapsulate the information for the needs of his/her managers and when communicating down, he needs to be able to break the information for his colleagues.

When the manager is not able to deal with his superiors autonomously, without constantly asking for support and clarification from his team and vice versa, he doesn't bring any value to the communication. He needs to understand the problems, the product and the requirements so well that he can have a dialogue with all his peers without constantly relying on "wait, I need to ask my lead programmer / engineer / game designer / marketing / HQ/ ... ". 

To overcome this, the manager needs to practice questioning skills and treat every problem with deep understanding. 

Conflict avoidance

Being afraid to go to the team and say: "look, this is not working. What can we do?". Being afraid or postpone to open touchy subjects and trying to maintain a sense of peace and calm at the expense of higher risk and lower performance.

To overcome this, the manager needs to practice self confidence and facilitate genuine dialogue. Curiosity and questioning also help.

Lack of trust in team members

By trust I mean not "I trust you to finish the job without checking" but rather "I trust you to open up to you, challenge you, be vulnerable in front of you to push you to over perform". Lack of trust leads to complains about the team to upper managers, disconnection from the team, conflict avoidance, gossip, low performance.

There are many ways to overcome this, but a basic one is to go to the team with problems and ask them to help you solve them. Something like "guys, we have this on the table; what do you think we should do about it?". 

Lack of control and measurement


Very much linked to all of the above: lack of trust, lack of depth in analysis, managing from excel. In order to be able to challenge the team one needs facts. Facts come from setting up several metrics and benchmarks for performance, then bringing the results to the team for debate. Without this, all dialogue becomes personal and subjective.

Not asking for support 


Manager's mission is to ship projects, grow people and deliver value and, sometimes, we don't have the knowledge, experience or tools to tackle every problem alone. We need support and we need the maturity and courage to step back and say "ok, if I pursue this course of action alone, the risk of failure in unacceptably high". Many managers were appointed as leaders to their teams for their own drive for achievement and resilience in front of problems. We need to understand that the results are more important than ourselves. It is true that nobody wants to work with a defeatist, but also nobody wants to work with someone who is blind and drives the projects straight into the fence. Vision is needed as, most of the time, there won't be an upper layer with enough knowledge of the project to be able to take the decision to offer help without being asked for help.

There are other behaviors at least as important as these: lack of decisiveness, hiring too soon and firing too late, not taking into consideration values and team fitness when hiring and firing, and many others. These were probably the ones that affected me the most so far and I will probably touch them in a future post.

Saturday, June 1, 2013

On Values and Why They Are Important

Core ideas:
  • Personal values are the lenses through which we see the world.
  • Knowing them helps us benchmark our decisions, so that we are more aligned with them and thus happier.
  • Team values are the fabric on which a team is built.
  • To create a strong culture, adherence to company values need to be tested at each hiring interview.
  • It is the duty of the leader to adjust culture through honest dialuge.
  • Values are neither good nor bad. They are just who we are and they make us diverse.

Why?

I have been thinking a lot lately about how and why it is important to work as a team. Inevitably, the line of thoughts brought me to a few basic questions:  to what degree does the team share the same values with the company, how we can align them, why does it matter?

Of course, the internal dialogue went on, asking other fundamental questions: to what degree shall we put effort into surfacing the true values of the team and benchmarking them against what the company expects from us? How would such a (time consuming) dialogue influence productivity? Is it worth the investment and, if so, how can we make the process engaging and honest? Maybe we should just put our heads in the sand and ship projects, caring less about topics that seem, at surface, too touchy-feely to be discussed in a serious production environment. Or not?

As the main mission of my current job is to build a strong management team around me, a team that is guaranteed to ship in spite of any adversity, for me this dialogue is more important than ever. People sharing common values make the fundamental fabric on which teams can be built.

What are values?

I would define "values" as the lens through which one sees the world. It is a fundamental set of core beliefs and attitudes that gives identity and guides decision making. Most of us are not aware of them as they are buried deep inside, shaped by our past, parents, environment, friends. We know when somebody trumps them over because then we feel a strong burst of repulsion and anger. We are very quick to judge and become intolerant about people who share a different set than we do. For instance, if one values hard work, he or she will be very tempted to dismiss others more inclined to a life of leisure, and vice versa. However, values seem elusive and it is hard to put them into words.

Why identify our values?

Honouring values means living an aligned life, peaceful, with less concerns and less emotional turmoil. On the contrary, not honouring them means constant dissatisfaction, frustration, fatigue.

One reason why decision making is so difficult is because of the uncertainty that lies ahead. Will we be at peace with the consequences? The best tool for answering this question is to benchmark the options and the expected results against our values, then pick the one that honours them the most. The whole process will feel safer, more natural, obvious and relieving.

As an example, let's assume that one's core value as software engineer is craftsmanship and code beauty. He is faced with the decision to switch jobs to a company that offers a better salary. At first, the decision seems simple. But will he/she feel happier there? By knowing his/her values and asking simple questions like "How do you take care of the code? How do you refactor?" the candidate will be able to assess his future state of happiness in that company and take an informed decision. Thus the more one is connected with his/her values, he/she will be able to take better decisions and live a more fulfilled life.

What about teams?

A team is a set of individuals working together towards a common goal. Teamwork needs cohesion, trust, reliance on others. By knowing its core values and by constantly asking "is what we do inline with who we are" a team will be able to take decisions easier, be more satisfied and bond together more closely. They will be able to say clearly:
  • Who is fit for the team and who is not - and why?
  • Is the next step inline with who we are? Are we satisfied with it?
  • How will we improve?

Values should constantly appear as questions during team meetings. If, for instance, one team values "constant learning" they need to ask themselves even for the simplest task: "what can we learn from it?" or "how can we approach it so that we learn something from it?" If the team takes the challenge and searches for the answer, they will feel happier and more satisfied with their work because they honour their values.

Team values should be known in the recruitment process and tested for them or, otherwise, the risk of a bad hire is just too high. Let's imagine a scenario where one wants to hire a C++ developer. Is the C++ test enough? Imagine getting a guy who values changing the world through volunteering in a team that has quick financial rewards as its core. Will he be satisfied? Will the team be able to accept him? HR and the hiring manager need to provide the answer in advance: how will his values be honoured in the workplace?

The five dysfunctions of a team and values:

According to Patrick Lencioni's business fable, there are 5 dysfunctions that plague teams. They all build on each other, having as the foundation the absence of trust. I believe that the best way to overcome the absence of trust is by provoking a genuine dialogue aimed at identifying what we, as a group, value. If I know that we share the same values, I will be more inclined to trust you. I will feel closer to you, thus I will be more likely to open up and collaborate with you.

Corporate values and team values:

Values are personal. It is crucial that newly hired share the same values as the company or, otherwise, they will be misfits or, even worse, if in great numbers, they may destroy the internal culture and teamwork. It is the job of HR and that of the hiring manager to properly test for company values, not only for technical skills.  

I believe it is the duty of the leader to provoke an honest dialogue and identify what the true values are. The key word is "honest". Discoveries may conflict with the declared company values which is OK as long as they reflect the reality. Once the dialogue has started and it is genuine, through open retrospectives, questioning and benchmarking, the leader will be able to adjust the culture. I believe it is possible and the end result should be better service, better community, happiness, productivity and engagement.

And yet we need to accept diversity:

Values are neither good or bad. They just are and they define us. They contribute to the diversity of our world, a world that accommodates so many perspectives. Although we usually exhibit strong emotional response to someone who shares or does not share our values, we need to accept that as beneficial. A society or a group in which everyone shares exactly the same core beliefs is a dystopia - first of all it is impossible as each of its members have different life experiences and, second of all, it is doomed to fail because of isolation. While we need to adhere to a common set of values in order to collaborate, we are evolutionary programmed to be diverse in order to survive.