Skip to main content

The Evolution of Team Collaboration




In my point of view, if a team has a good collaboration, team members will achieve the following:
  • To be more effective
  • To make work more enjoyable
I have been working for a company for nearly four years as an software developer. Working on various projects from maintaining existing systems to developing a substantial product resulted in me moving to new teams three times. Actually, my most stable team lasted only around three years. 

Every time I've moved to a new team, I have a chance to work with new members and a new team culture again. Indeed, I realize that there is a process of developing the team collaboration which gets better time by time. I think it is an evolution!

Phase 1: Poorly collaborate

For example, that is when the team members have the following issues:
  • Only work on his/her area of expertise
  • Don't communicate to others
  • Be not confident to take on new challages
  • Don't listen to other members.

Subsequently, the team has some Failed Sprints and the knowledge gap between the members is increased.

Phase 2: Cover each other

As a result, the team would have a lesson learned! In Scrum, we have the Restropective Meeting where the team members can figure out what are the issues. 


Now, the team members have to learn how to collaborate. Each member becomes willing to support the others when being asked. Moreover, each member actively "takes care" of the others even he/she is not asked. 

For example, there are two members working on a User Story. If a member find a missing requirement or a potential bug of the other partner, he/she will proactively contact to the partner and then solve these issues together

Phase 3: Be self-organized

The team has already collaborated well is good but not enough. How about if their Scrum Master/PO is off? How about if tallented and strong members leave the team? And, so on. That is when the team should be self-organized. Each member should achieve the following attributes:
  • Be able to work as a leader.
  • Be knowledgeable, courageous and autonomous.
  • Have team goal rather than personal goal in mindset.
  • Trust each other blindly and respect is in the DNA of each team member. [1]

What I mean when I did highlight these words: trust and respect is that we should try avoid the conflicts among a lot of strong members. Am I right?

In the end

Hope you enjoyed the videos! :)

I think we should consider to include one criteria "team collaboration" when setting up the team goal in order to build up our stable dream team.

Do you have a self-organizing team? What I am thinking about is a Scrum Master can even lead more than two teams but I am not sure if it is real. 

Post YOUR opinions down below!

-------------
Reference:
[1]. https://www.scrum.org/resources/blog/evolution-development-team

Comments

Popular posts from this blog

BIRT - Fix the size of an image

I use a dynamic image as a logo my report in pdf. At the beginning, I use table to align the logo in left or right. I meet a problem with some images with a large width or height. My customer requires that the logo should be displayed in original size. These following steps solves my problem: 1. Use Grid instead of Table 2. Set Grid "Height" is 100%  and "Width" is blank 3. Set "Fit to container" for images are "true". Download the the template here .

[Snippet] CSS - Child element overlap parent

I searched from somewhere and found that a lot of people says a basic concept for implementing this feature looks like below: HTML code: <div id="parent">  <div id="child">  </div> </div> And, CSS: #parent{   position: relative;   overflow:hidden; } #child{   position: absolute;   top: -1;   right: -1px; } However, I had a lot of grand-parents in my case and the above code didn't work. Therefore, I needed an alternative. I presumed that my app uses Boostrap and AngularJs, maybe some CSS from them affects mine. I didn't know exactly the problem, but I believed when all CSS is loaded into my browser, I could completely handle it. www.tom-collinson.com I tried to create an example to investigated this problem by Fiddle . Accidentally, I just changed: position: parent; to position: static; for one of parents -> the problem is solved. Look at my code: <div class="modal-body dn-placeholder-parent-positi...

Generating PDF/A From HTML in Meteor

My live-chat app was a folk of project Rocket.Chat which was built with Meteor. The app had a feature that administrative users were able to export the conversations into PDF files. And, they wanted to archive these files for a long time. I happened to know that PDF/A documents were good for this purpose. It was really frustrated to find a solution with free libraries. Actually, it took me more than two weeks to find a possible approach. TL, DR; Using Puppeteer to generate a normal PDF and using PDFBox to load and converting the generated PDF into PDF/A compliance. What is PDF/A? Here is a definition from Wikipedia: PDF/A  is an  ISO -standardized version of the  Portable Document Format  (PDF) specialized for use in the  archiving  and long-term  preservation  of  electronic documents . PDF/A differs from PDF by prohibiting features unsuitable for long-term archiving, such as  font  linking (as opposed to  font em...

[Snippet] Generate a new unique "name" string from an existing list

Suppose that we have a list of employees. Everytime, we want to add new employee into this list, the name of the employee will be generated with the following rules: - the name of the new one is set to " [originalname] 1 " - in case the name already exist, " [originalname] 2 " is used, and so on. Here is my code snippet by Javascript: var employees =[ {id: 1, name: 'name'}, {id: 2, name: 'name 1'}, {id: 3, name: 'name 2'}, {id: 5, name: 'name 4'} ]; var commonUtils = { isExistName: function(_name, _collection, _prop) { for(var i = 0; i< _collection.length; i++){ if(_collection[i][_prop].localeCompare(_name)==0){ return true; } } return false; }, generateNewName: function(_name, _collection, _prop){ var i = 1; var searching = true; while (searching) { var newName = _name+ " " + i; if (!this.isExistName(newName, _collection, _pro...

Retrospective with Sailboat

Have you ever got bored with the Retrospective meeting? I have, sometime. Most of the times, this meeting just goes traditionally by answering three questions: "What good things have we done? What bad things have we done? And, what actions should we improve?" Ever and ever again! My team found a way to make it a little bit more exciting. The idea is that each member - not only our Scrum Master - will become a host. If a meeting is hosted by a memeber, the next meeting will be hold by another one. Yeah, I used "Sailboat" pattern in my turn. So, I just want to share with you guys how it was. I started the meeting by telling a short story that I hoped everyone in my team could recall the meaning behind of Retrospective meetings: There is a group of people trying pick up trash in a park. At the first look, the park seem not to have a lot of trash because they are spread out all over the place. However, these people continuously found trash when they sta...