Remember this for later:
I have always like the idea of team work, but I think over the years my definition has warped. I work in a scrum environment, where we are divided into teams of around 7-9 members. By definition, scrum team, we are all working towards a common goal to produce the highest value backlog items each sprint.
We were introduced to the concept of a swarm and some of teams tried it. They felt that it did help them produce higher quality software faster. From my perspective, I saw 7-9 people in a room watching one person drive on the projector. I can’t pass judgement because I was not there as a participant. I think this can be considered teamwork.
There is another team that also works in a scrum environment, but their team work seems to be a little different. I often see them sitting together working in a more XP fashion. There is no goofing around, just focused work. They produce high quality work each and every sprint. This seems to fit the definition of teamwork.
Over the years, the teams that I have been a part of didn’t have the intersections where we would need to work that close. Even recently I was working on a team, but the work that I was doing was orthogonal at best. I worked on my backlog items and they worked on theirs. In reflection, this does not seem to fit the definition of team work.
Fast forward to today and let me talk about the team that I am on now. On this team there are 3 junior developers and 3 senior developers. We only have one or two backlog items and we are working them together.
Today , for instance, I had one or two developers at my desk for most of the day. We were struggling to get the VMWare’s c# libraries working with SSPI. The remainder of the team split the work and they were at another developers desk working together in the same way.
In some ways I push back, wanting to be left to solve the problems on my own because this is unfamiliar behavior to me. Fortunately my friend is very pushy and he is forcing me to engage.
I am also working on including the junior developers as much as I can. I have always believed that it is the responsibility of the senior members to train and impart good practice on the juniors. I have not always done it or done it well. This time I am making it one of my missions. Fortunately for me, the juniors have a strong work ethic and they are all really smart so my job is a little easier.
I am fortunate to be on a team that is willing to work hard and really drive towards the finish line. They are teaching me the purpose and value of teamwork. Thanks SOC!