Responsibility in Software Development Teams Part 2

Responsibility in Software Development Teams Part 2

In the first part of our article we talked about the most frequent allocations of responsibilities for project teams. But there are better strategies to improve responsibility.

Don’t forget that in order for a person to do this he must have responsibility and authority - two inseparable components. If you have the necessary authority, but not the responsibility there will be trouble ahead. If you have responsibility, but no authority then you are just a scapegoat. If you can see that a project has issues which must be solved you won’t be able to do anything. Only when you have both the necessary authority and responsibility, you can influence the situation and take responsibility for it, as well as getting a reward for success.

Let's see what the responsibilities of a Team Lead might be. Here they are:

  1. Responsible for JIRA tickets
  2. He is the owner of the resources (his subordinates)
  3. He has a list of specific tasks within a particular team / ticket / release (for example reporting about the project respecting certain criteria)
  4. Responsible for the quality of the project
  5. Knowledge Owner
  6. Tasks based on his expertise (for example he is a developer and must spend part of his time doing this)
These six points can be divided into two major areas:

Solving challenges

  1. Responsible for JIRA tickets
  2. He is the owner of resources (his subordinates)
  3. Has a list of specific tasks within a particular team / ticket / release (for example reporting about the project respecting certain criteria)

Quality and knowledge

  1. Responsible for quality
  2. Knowledge Owner
  3. Tasks based on his expertise (for example he is a developer and must spend part of his time doing this)
It makes sense that a Dev Lead should handle the challenges. The section referring to quality and knowledge can be summed up as Competence Lead. Thus we have no overlapping areas of responsibility and we can focus on clear, measurable and substantive matters. The first area ensures that tasks will be done on time and employees receive the necessary resources. Quality and knowledge refers to monitoring skills and employee development, without affecting the implementation of specific tasks.

Why is it necessary to separate these 6 tasks into two distinct areas with different people responsible for each one. If you are currently a Team Lead or if you have held this position in the past then you know how different these two areas are and what skills they require. It is very hard for just one person to have this specific skill set, especially if he has just recently been promoted to a Team Lead. Of course you should develop these skills but this process takes time. Therefore as a Project Manager it will be easier to assign these areas of responsibilities to two different people.

How it might look on an organization chart:

responsability_2.jpg


You can see that in the figure above that the QA experts are surrounded by a dotted line, and within this group there is a person that holds the position «Competence Lead QA». The Competence Lead includes all the testers in the project. If the project is large and the group is too large, break it into several smaller groups, under the rule 7 ± 2 (from 5 to 9 people per group).

How might a list of responsibilities look for a Team Lead and a Competence Lead.

Team Lead responsibilities:

  1. Specific JIRA-tickets
  2. Holidays
  3. Overtime
  4. Estimation tickets
  5. Distributing tasks to the team
  • Load Balancing Resources
  • Allocation of responsibility

Competence Lead responsibilities:


Responsibility for technical and quality objectives:
  • What technologies are used
  • What standards are used
  • Architectural issues
  • Approaches, concepts testing. Test plans. Review test cases
  • Quality specifications. Review specifications
  • Match-making requirements and specifications
  • The quality of the code. Code Review.

Proactive stance:
  • Coaching interns
  • Offer technical improvements

He should also be involved in the following aspects:

  1. Breakdowns and changes in development, testing
  2. Plans for the development of people, training

Next steps:

Once you update your organizational structure for the project, select your Team and Competence Lead and talk to them about their future responsibilities. Provide them with an adequate level of autonomy