11

I have worked as a software developer in several companies where work was distributed among multiple teams, each working different (though sometimes related) projects.

Because of this, there is usually little communication between the teams, since it is not strictly necessary for day-to-day work. Still, I always felt that more communication would be helpful:

  • to identify common problems
  • to learn from others
  • to better understand the company's business outside your own project
  • ...and just to improve the atmosphere between the teams

How can I go about fostering communication even where it's not strictly necessary for a project? Does it make sense to organize team events (talks, common lunches, ...)? Or is that too formal? What might work?

6

When it comes to technical sharing, I'm a big fan of figuring out first what can be gained and then figuring out a way of encouraging sharing in that direction. For me, at least, just lining up technical people in a common space and hoping sharing occurs has rarely yeilded value. But if I can get a few common causes going, then usually people will get a sense of each other and sharing will occur more naturally and organically at that point.

Particularly in software, here's some examples of focused knowledge exchange that yeilded good results:

  • External peer review - when the team is having design reviews, code reviews, or test reviews - invite 1 member of an external team. They probably have an out of the box idea or two based on their different perspective. They'll learn a little bit about the product, too, which is always helpful.

  • Lessons learned sharing - if a team does a lessons learned after a big release, invite some members of other teams. You can try to share notes and minutes after the fact, but the real discussion with all the agnst and excitement is really the value - so have other there for that.

  • Big success parties - even if it's just everyone grabbing a quick cup of coffee - invite all members of other teams as a courtesy.

The first two are tightly tied to a goal, and they usually have a fairly formal structure - that gives the foreign team members a structured way of knowing how to share and what's expected of them. For technical folks, that's usually really helpful, particularly when they don't share a common goal (their project).

The third is pretty fluffy and you'll probably only get the social folks to participate, but it can be a real morale boost - celebrating withing a team is one thing, but showing others that you had a big success motivating in a different way and it raised the morale of the company, because people find out that good stuff is happening in other places in the company - which is always a plus.

I am sometimes willing to try less pointed interaction - like technical presentations to the larger group - but I find that when such things aim to be generic enough to be widely useful, they can also be too fluffy to be interesting, unless you have a really good topic and a really good presenter. I don't count that as likely, as what makes a good presenter, vs. a good software developer are usually quite different things.

The bottom line to keep in mind is to have a certain sense of cost vs. value - when you drag EVERYONE into a meeting, it's a very expensive meeting (meeting time X number of paritcipants). If you instead seed the communication by selected (rotating) invitation to a meeting you'd have anyway - then you may get more bang for the buck - 1 or 2 cross team invitees may represent 70% of the knowledge of the whole team, giving you great value for a small amount of time given by just a few people. Once people realize that there are awesome smart people on other teams, they will tend to seek them out naturally.

4

Why can't you just make an effort to talk to people in the other groups? It doesn't have to be forced. There will be some who think you're wasting time, so get a feel from your supervisor to make sure you're not doing it too much. Mention the conversations that went well. You never know, your team leader may have been thinking about recruiting that person.

We're human. We're curious about one another. That takes time and a little effort. The first time you have to make a requrest, you don't want to have to introduce yourself as the 'void' from the other floor.

Companies need to realize that having positive working relationships with co-workers is a key-factor for employee retention.

2

Because of this, there is usually little communication between the teams, since it is not strictly necessary for day-to-day work.

Here is the problem. People who are busy (and presumably everyone is busy) are not going to be excited about spending more time doing unnecessary bonding/teambuilding/warm-and-fuzzy types of things. I have yet to meet at technical person who gets excited about those sorts of things.

How can I go about fostering communication even where it's not strictly necessary for a project?

You can't. Management seems to have a idealistic sense of "well we want this, therefore our employees will too" - and normally this applies to additional work/time types of things, above and beyond normal job responsibilities.

If you expect employees to be excited about non-value-add work you need to either:

  • lower expectations on normal employee contributions (ie, if you spend 2 hours a week on this sort of stuff, expect 5% less overall productivity - not add 2 hours a week and expect the same)
  • make it valuable

The worst thing you can do is schedule "team building" events on top of everything your teams are doing in the hopes people will somehow approach them with a positive attitude and magically come away feeling more connected/empowered.

So how to make it valuable. bethlakshmi covered a few good things for this - I've got another suggestion. Sponsor "lunch and share" types of things where the company provides lunch/refreshments (basically bribery, in some sense) and find a few people interested in sharing a cool technology/tool they use and have them give a short presentation.


You may also be able to find some people on all the teams who are in fact interested in this sort of collaboration without management support.

  • Whoever downvoted, please explain why – enderland Sep 16 '12 at 1:46
  • 1
    -1: I downvoted this answer because you expressly stated that it's impossible to foster informal communications between two workgroups. That's both patently ridiculous and false. Company culture makes such a difference for company's productivity and efficiency. Many university courses have been taught and many books have been written that included verifiably proven ways to foster informal communicatons and improve a company's culture. – Jim G. Sep 16 '12 at 3:34
2

Does it make sense to organize team events (talks, common lunches, ...)?

Absolutely.

Here is my guidance:

  • If you're dealing with remote teams, fight for upper management's blessing when arranging group events.
    • Having the two teams meet in the same physical space goes a long way when building bonds of trust. You certainly don't want people viewing "the other team" as an assemblage of faceless names.
    • If necessary, you need to fight for sufficient funding and dedicated time to make this happen.
  • When arranging a group get-together, make sure that at least a portion of it is a scheduled, informal event such as a joint-lunch or dinner.
    • This event is critical, because it's at these events (and these events only) that people can really "let their hair down" and bond with members of the other team.
    • Make attendance compulsory, and make it an immovable event (not subject to change in the event of a corporate emergency).
  • 1
    I think making attendance compulsory at a "team building" event is a fast way to build resentment, particularly among people who are shy, introverted, and/or really busy. – Kelly Tessena Keck Sep 20 '12 at 21:03
2

You had great answers about active sharing, but you can also consider passive sharing. To do that you may consider creating simple posters, mainly to show the schedule of current projects, annotated by encountered problems, and their solutions if it exist. You can also maintain a company social network, it's cheap, and people go there because people love to spy on their colleagues...

  • "Passive sharing" is a good idea. We do have a company wiki, maybe we could create some space there... – sleske Sep 16 '12 at 16:24
2

Several solutions have been proposed that basically say "just talk to each other" but depending on your size/setup, try setting up Diaspora*, an IRC chat room, or forum.

  • The benefit of Diaspora* is that it's very familiar to facebook types, but it's private (so OK in corporate environments)
  • The benefit of a forum is that any question asked there is remembered forever, creating a search-friendly internal knowledge base.
  • The benefit of an IRC chat room is that it's not remembered at all, improving off-the-cuff, real-time group communication.

All three solutions are very easy to implement. The hard part to any of these is that your co-workers have to want to talk with you as much as you want to chat with them.

1

Leveraging cross-functional people to help is good too. For instance, as a data person, I work for multiple teams on multiple projects at the same time. If people brag to me about how they solved problem XYZ and later someone mentions they have problem XYZ, I tend to put the two people together. So use those people (data people, systems people, QA testers, tech writers) as people you tell information to. We often see where there are similar challenges on different teams, make it ok for us to talk to you about it.

1

I am a consultant and we invite everyone on the blended team to a daily stand up meeting (scrum) as well as a weekly status which generally works pretty well.

The main challenge here is that each team has its own set of priorities and it is sometimes difficult to get them to buy into what you are trying to do.

You will have to be the one to be proactive and get everyone together.

0

If possible, have folks from the different teams sit next to each other. Don't group offices, desks or cubes by team. It helps to share ideas and information across disciplines and helps to bring gaps and overlaps to light. Keeping the teams that are working on related projects separate creates a mentality of ours vs. theirs.

This is assuming you're in the same geographic location. :-)

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.