David Baird
Premium

David Baird

Male, 39 years old,

Haifa

,

Israel

 

How much does local culture affect your software d...

How much does local culture affect your software development environment. What I'm talking about is how team members communicate with each other, and I'm not just talking about the language. I am thinking specifically about the Jim Highsmith book Agile Software Development Ecosystems which pushes for a common room for all engineers to work in. This is to encourage free communication, and to allow conversations to be heard even subconsciously by engineers as they work.

Perhaps this idea makes sense in a culture where people go to work, and avoid contact with their team members. I've worked in such a place, in lots of places like it. I can work all day without saying a word to a co-worker, even if we are separated only by a low cubical wall. The question is, would I talk to them if there were no cubicle walls? And what about my current employer, which gives everyone their own private office with a door? When I visited our offices in San Diego, no one would say good morning, let alone ask me a question, unless scheduled a meeting and sat in their office. One on one, the conversation would be very lively, but otherwise, the environment was rather stale, quiet.

Things are a little different in our Haifa, Israel office. We all have offices with doors, but there is this cultural attitude, and I am sure it is rather Israeli, that one can go into any one's office and ask a question, and get undivided attention and a thoughtful answer. A common phrase while standing in line is, "I just have a question," as a means of cutting ahead. Even if you are sitting in a meeting with someone, another colleague will open the door, ask a question, and get immediate attention, then back to the meeting. Cell phone calls get the highest priority, although there is a new tendency to let the call go to voice mail when in a meeting.

This leads to the need for all team members to work together in the same room. We do have this opportunity as well. We have labs with assigned workstations. Our team lead asks us to work in the lab a few hours a day, even if we don't need lab equipment to do our job. This is to facilitate that level of communication which Agile advocates recommend. Truth is, it does increase the number of interactions I have with other team members. They go up to me, or call me from the other side of the lab, and ask their question or discuss their coding problem, or whatever else they need. I can't say it isn't productive, it is. On the spot conversations lead to very relevant ideas and solutions.

So where is the problem? I don't get my work done in the lab. I mean, I pretend I am working, but really, I am debugging something, fiddling with the comments, or doing code reviews. Ten minutes won't pass by without a question. I know being in the lab is important, because I do want to help solve problems. Furthermore, I know that people don't want to write an email or schedule a meeting, they want to see me to ask a question.

When I really want to get some code written, I go to my office and close the door. I suspect it is a cultural thing, and I really wonder what working in a common room in other countries are like.

I've heard about a team which worked in the lab in our San Diego offices who didn't talk to each other at all, except at weekly meetings or through email. They worked no more than a few feet from each other. I might get an question emailed from one of them, and I answer. I assumed that the information I wrote would be shared, but a couple weeks later, I find out that the other team members had no idea that I had already answered the question.

So perhaps putting all team members in the same room is not the only answer to being agile and productive.