Categories
Articles

How a Group Becomes a Team

If there is one lesson I have learned in my years of leading engineering teams and product innovation, it is this: nothing gets done without teamwork. As a manager, I’ve seen great ideas falter and projects stall when individuals work in silos, each with their own vision and approach. But when you transform a group of people into a true team, magic happens. Ideas flow seamlessly, challenges are tackled collectively, and goals are not just met—they are exceeded. But how does a group become a team? That’s where Tuckman’s stages of team development come into play.

From a Collection of Individuals to a Unified Force

Imagine you’ve just put together a new team—whether for a product launch, a critical engineering project, or a startup venture. You’ve got talented individuals, each bringing their own strengths and experiences. However, without a shared direction and understanding of how to work together, they remain just that—individuals. The challenge as a leader is to shape them into a cohesive unit working towards a singular goal.

Dr. Bruce Tuckman, a psychologist, identified five key stages that every team goes through in its evolution. Recognizing these stages can help managers and leaders guide their teams effectively and accelerate their growth. Let’s dive in.

Stage 1: Forming – The Excitement of the Unknown

At the forming stage, team members are polite, cautious, and eager to understand their roles. There’s excitement, but also uncertainty. I remember when I took over as CEO of Yapsody India, leading a diverse team across engineering, customer success, marketing, and design. In those early days, everyone was feeling out the new dynamics. My role as a leader was to provide clarity, set expectations, and ensure that everyone felt heard.

What Happens in the Forming Stage?

  • Team introductions and icebreaker activities to build rapport.
  • Setting initial goals, project objectives, and team expectations.
  • Assigning roles and responsibilities while allowing flexibility for adjustments.
  • Establishing communication channels and tools (Open Handbook, Process documents, Google Chat/Email, etc.).

Stage 2: Storming – Where Conflicts Shape Growth

This is the stage where tensions arise. People challenge ideas, struggle for influence, and experience frustration. It’s tempting to avoid conflict, but I’ve learned that healthy debates, when managed correctly, lead to better outcomes.

At Yapsody, we built a culture where challenging the status quo was encouraged, but it had to be done with integrity and respect. The key here is to ensure that conflicts are constructive, not personal. Leaders must act as facilitators, helping the team navigate differences while reinforcing the shared goal.

What Happens in the Storming Stage?

  • Differences in working styles and opinions surface, leading to conflict.
  • Some members may push against leadership or team norms.
  • Leaders step in to mediate disputes and set conflict resolution guidelines.
  • Encouraging open communication and trust-building exercises.
  • Establishing problem-solving frameworks to resolve issues objectively.

Stage 3: Norming – Finding the Rhythm

Once conflicts are addressed, the team starts to find its rhythm. Processes become smoother, collaboration improves, and individuals begin to trust one another. This is the stage where you see alignment—where team members understand not just their own roles, but also how they fit into the bigger picture.

As a leader, this is the time to reinforce positive behaviors and ensure that progress is being made. Acknowledging wins, big or small, fosters a sense of momentum and unity. I always made it a point to celebrate small victories, as they build confidence and reinforce the idea that we are moving forward together.

What Happens in the Norming Stage?

  • Team members develop mutual respect and recognize each other’s strengths.
  • Collaboration improves, and workflows become more efficient.
  • Leaders take a step back, allowing the team to self-organize more effectively.
  • Regular check-ins and retrospectives ensure alignment and continued growth.
  • Social bonding activities help solidify trust and camaraderie.

Stage 4: Performing – The Peak of Efficiency

This is where the real magic happens. A high-performing team is self-sufficient, goal-oriented, and innovative. They don’t just execute; they anticipate challenges, adapt, and push boundaries.

In my years of leading agile teams, I’ve seen the shift when a team moves into this stage. Stand-up meetings become more about problem-solving rather than status updates. Engineers proactively improve code without being asked. Designers collaborate seamlessly with developers. It’s a stage where leadership shifts from directing to empowering.

What Happens in the Performing Stage?

  • The team operates with minimal supervision and high efficiency.
  • Problem-solving is proactive rather than reactive.
  • Team members hold themselves and each other accountable.
  • High levels of innovation and productivity emerge.
  • Focus shifts from managing conflicts to achieving peak performance.

Stage 5: Adjourning – The Transition to What’s Next

Every project has an end, and every team eventually disbands or evolves. This stage, sometimes called the “mourning” phase, is often overlooked, but it’s vital. Reflection, feedback, and knowledge transfer ensure that learnings are carried forward.

I’ve always encouraged my teams to document lessons learned and celebrate the journey before moving on to the next challenge. It provides closure and sets the stage for future success.

What Happens in the Adjourning Stage?

  • Conducting retrospective meetings to reflect on successes and challenges.
  • Recognizing individual contributions and celebrating achievements.
  • Knowledge transfer sessions to document insights for future teams.
  • Emotional closure as team members move on to new projects or roles.
  • Maintaining professional relationships and connections beyond the project.

Why Teamwork is Everything

Building a successful team is not about assembling the smartest individuals; it’s about creating an environment where those individuals can thrive together. The best ideas are rarely the result of one genius mind but rather the culmination of diverse perspectives refining each other.

In my journey, from leading mobile development at Yapsody to overseeing complex engineering infrastructures, I’ve seen firsthand that teamwork is the single most important factor in getting things done. No matter how innovative your technology, how groundbreaking your product, or how ambitious your vision—without a strong, cohesive team, execution falls apart.

So, if you’re a leader, engineer, or entrepreneur, invest in your team. Guide them through the natural ups and downs of team development. Encourage open communication, foster trust, and most importantly, keep them focused on a singular, compelling goal. Because when a group truly becomes a team, there are no limits to what they can achieve.

Categories
Articles

Enhancing Engineering Teams with a Competency Matrix

In the ever-evolving field of software engineering, it’s essential to keep teams performing at their best and continuously improving. One effective strategy to achieve this is through the use of a competency matrix. In this article we’ll discuss the challenges of objectively assessing individual skills, the benefits of standardizing roles, and how a competency matrix can help identify and bridge skill gaps through strategic hiring and development programs. Additionally, we’ll discuss how integrating this matrix into Objectives and Key Results (OKRs) for engineering managers can boost overall team performance.

Challenges in Measuring Team Competency

Challenges in Measuring Engineering Team Competency
Challenges in Measuring Engineering Team Competency

Measuring individual competency within a diverse engineering team is fraught with challenges. One of the primary issues is subjectivity. Performance reviews and skill assessments often rely on managers’ opinions, which can vary widely. This subjectivity can lead to inconsistencies, as different managers might have different criteria for what constitutes proficiency in a particular skill.

Another significant challenge arises from ambiguous designations given based on age instead of skills. When roles and responsibilities are not clearly defined, it leads to confusion and overlap. For instance, if the distinction between a “software engineer” and a “senior software engineer” is not clear, it becomes difficult to set appropriate expectations and evaluate performance accurately. This ambiguity can cause frustration among team members who are unsure of their specific duties and career progression paths.

The varied skill sets present within a team add another layer of complexity. Engineering teams comprise individuals with different roles and areas of expertise, making it difficult to create a one-size-fits-all assessment framework. For instance, the competencies required for a front-end developer are vastly different from those needed for a back-end engineer or a DevOps specialist. This diversity necessitates a flexible yet standardized approach to competency measurement.

Furthermore, the rapid evolution of technology adds another layer of complexity. Technologies and best practices in software engineering are continually advancing, requiring engineers to engage in continuous learning and adaptation. As new tools and methodologies emerge, evaluating competencies becomes a moving target, complicating the assessment process.

Building Competency Matrix

1. Standardize Designations and Roles

To effectively create a competency matrix, it’s essential to standardize job designations within the team. This begins with defining roles and responsibilities. Clearly outlining what is expected from each role helps in setting precise performance benchmarks. A huge shoutout to Sarah Drasner (@sarah_edo) for her career ladders! This framework is an excellent foundation for standardizing team designations based on roles rather than technology-specific titles as follows,

  1. Engineer I
  2. Engineer II
  3. Senior Engineer
  4. Staff Engineer
  5. Principal Engineer
  6. Distinguished Engineer

2. Identify Key Competencies

Next, it’s crucial to create skill categories. Skills can be broadly divided into technical and non-technical areas. Technical skills might include proficiency in programming languages, familiarity with development tools, and knowledge of specific frameworks. Non-technical skills, on the other hand, encompass abilities like effective communication, problem-solving, and teamwork. By categorizing skills, organizations can ensure a holistic approach to competency evaluation. Example,

General SkillsWeb FrontendBackendMobileQA AutomationTesting Areas
Attention to DetailTypescriptTypescriptTypescriptSeleniumDatabase/SQL
CommunicationReact JSNodeJSReactNativeAppiumAPI Testing
Problem-SolvingReduxExpressExpoCypressPerformance Testing
Time ManagementJest/MochaJest/MochaApp StoreTestCompleteSecurity Testing
QC StandardsSQLPlay StoreKatalon Studio
TeamworkMongoDB
Agile and ScrumDynamoDB
Documentation
Key Competencies

3. Establish Proficiency Levels

Lastly, establishing proficiency levels is key to standardization. Proficiency levels such as novice, intermediate, and expert provide a clear progression path for skill development. For instance, a novice in cloud computing might understand basic concepts, an intermediate might be able to deploy applications, and an expert might design and manage complex cloud architectures. These levels help in setting clear expectations and growth paths for team members.

Skill LevelDescriptionLevel
Not applicable / missing0
NoviceRequires hand holding and supervision1
Intermediatedoes not require hand-holding but requires supervision for complex problems2
Expertno supervision required, can teach others3
Proficiency Levels

Implementing a Competency Matrix

1. Set Up the Excel Sheet

  1. Open Excel: Start by opening a new Excel workbook.
  2. Label Rows and Columns: In the first row, list the key competencies across the columns (e.g., A1: Programming Languages, B1: Database Management, C1: Problem-Solving). In the first column, list the names of the team members down the rows (e.g., A2: John Doe, A3: Jane Smith).
  3. Define Proficiency Levels: Determine the proficiency levels you will use (e.g., 1 for novice, 2 for intermediate, 3 for expert). You can add a legend or key to explain these levels, perhaps in a cell near the top of the sheet.

Here’s a simple example to illustrate how your matrix might look:

Programming
Languages
Database
Management
Problem-SolvingCommunication
John Doe
Jane Smith
Alice Johnson
Bob Brown
Simple Competency Matrix

2. Populate the Matrix

  1. Assess Competencies: Once key competencies are identified, the next step is to assess current skill levels within the team. This can be done through self-assessments, peer reviews, and practical evaluations. Standardized tests or coding challenges can also be used to validate these assessments. For instance, team members might rate their proficiency in different areas, followed by peer reviews to cross-verify these ratings. This multi-faceted approach helps in creating an accurate picture of the team’s current skill set.
  2. Add Team and Employee Versatility: Apply the formula such that the individual team member gets a single score in percentage for the overall competencies defined as well as for each competency column for the team. In the table below those are shown as Individual Versatility and Team Versatility respectively.
Team
Coverage: 100%
Skills ▶︎JavascriptTypescriptReactReact
Native
Node
Team
Versatility ▶︎
100%75%75%75%100%
NameDesignationEmployee
Versatility
John DoeStaff
Engineer
100%33333
Jane SmithSenior Engineer93%32333
Alice JohnsonEngineer II80%32223
Bob BrownEngineer I67%32113
Completed Team Competency Matrix

Leveraging the Competency Matrix

With the establishment of the competency matrix, you now have a clear, objective perspective on the team’s skill levels and proficiencies. This tool allows you to accurately gauge the distribution of competencies across various roles and designations within the team. By utilizing the competency matrix, you can identify existing skill gaps and assess the overall efficiency and utilization of your team’s capabilities. This comprehensive overview offers invaluable insights for targeted skill development and strategic resourcing, ensuring that each team member is positioned to contribute effectively to the organization’s goals.

  1. Analyze Skill Gaps – With the current competencies assessed, the next step is to analyze skill gaps. By comparing current skill levels with the required competencies, organizations can identify areas where team members need improvement or where new skills are necessary. For example, if the team lacks expertise in a new technology that the organization plans to adopt, this gap can be highlighted for targeted development.
  2. Develop Learning and Development Programs – To address identified skill gaps, it’s crucial to develop targeted learning and development programs. These programs might include workshops, online courses, and mentorship initiatives. Encouraging continuous learning is key to keeping the team updated with the latest technological advancements. For instance, organizing regular coding boot camp or subscribing to online learning platforms can help team members enhance their skills.
  3. Hiring to Fill Gaps – When internal development isn’t sufficient to address all skill gaps, it’s essential to hire new team members with the required competencies. The competency matrix can guide the hiring process by pinpointing specific skills that are lacking within the team. For example, if there’s a gap in cybersecurity expertise, the recruitment process can focus on candidates with strong backgrounds in this area, ensuring a balanced and well-rounded skill set within the team.
  4. Cutting the Weeds – A crucial yet often uncomfortable aspect of leveraging a competency matrix is identifying team members who may be slowing down the team’s progress. By objectively assessing each individual’s skills and performance, the matrix can reveal those who consistently fall short of the required competencies. This transparency allows engineering managers to make informed decisions about whether to provide additional support and training to these individuals or, in some cases, to consider more drastic measures such as reassigning roles or even termination. The ultimate goal is to ensure that every team member contributes effectively to the team’s success and that underperformance is addressed promptly to maintain overall productivity and morale.

Integrating Competency Matrix into OKRs

To ensure that the competency matrix makes a tangible impact, it should be integrated into the OKRs for engineering managers. This integration involves several steps:

  1. Setting Clear Objectives – First, define specific objectives related to skill development and competency improvement. These objectives should be clear and measurable. For instance, an objective could be to “Increase the team’s proficiency in cloud technologies by 20% over the next quarter.” Such objectives provide a clear direction for skill enhancement efforts.
  2. Tracking Key Results – Next, measure progress through key results. Key results could include the number of completed training sessions, improvements in competency assessments, or the successful implementation of new technologies. Regularly reviewing and adjusting OKRs based on the team’s evolving needs and achievements helps in maintaining focus and momentum. For example, tracking the number of team members who have completed advanced cloud certification courses can provide tangible evidence of progress.
  3. Continuous Update and Feedback – Finally, it’s important to regularly update the competency matrix to reflect new skills and technologies. Encouraging feedback from team members helps in refining the matrix and training programs continuously. For instance, as new technologies become relevant, the competency matrix should be updated to include these skills. Regular feedback sessions can also help in identifying any gaps or areas for improvement in the training programs.

Benefits of a Competency Matrix to an Organization

Implementing a competency matrix offers several advantages across the organization on how other departments such as HR function because of this:

  1. Objective Measurement – A competency matrix provides a clear and objective framework for evaluating skills and competencies. By standardizing assessments, organizations can minimize subjectivity and ensure consistent evaluations across the team. This objectivity helps in making fair and informed decisions about promotions, role assignments, and development needs.
  2. Targeted Development – With a competency matrix, organizations can implement focused training and development initiatives. By identifying specific skill gaps, resources can be allocated efficiently to areas that need the most attention. This targeted approach ensures that training programs are relevant and impactful, leading to a more skilled and capable team.
  3. Improved Performance – Addressing skill gaps through targeted development leads to improved team performance. Teams become more proficient and capable of handling complex projects, resulting in higher-quality deliverables and increased productivity. For instance, a team with enhanced cloud computing skills can more effectively leverage cloud technologies, leading to better project outcomes.
  4. Enhanced Hiring – A competency matrix guides the hiring process by highlighting specific skills that are lacking within the team. This helps in bringing in new team members with the required competencies, ensuring a balanced and well-rounded skill set. By aligning hiring decisions with the competency matrix, organizations can build a team that is better equipped to meet current and future challenges.

Conclusion

A competency matrix is a powerful tool for enhancing the performance of engineering teams. By standardizing designations, identifying skill gaps, and implementing targeted learning and development programs, organizations can foster a culture of continuous improvement. Integrating this matrix into the OKRs for engineering managers ensures that competency development aligns with overall team performance goals. This alignment leads to a more skilled, adaptable, and successful engineering team, capable of meeting the dynamic demands of the software engineering landscape.