Showing posts with label Agile Team. Show all posts
Showing posts with label Agile Team. Show all posts

Wednesday, July 26, 2023

Are there Benefits for adding ChatGPT as a team member?

There is evidence that ChatGPT can be beneficial in helping you do your work. Involving ChatGPT today is already occurring in repetitious, creative, and diagnostic type work. Some say it’s inevitable and you should learn to work with many forms of AI. Current uses have shown that it can improve work efficiency, assist with tedious tasks, help you with creative tasks, and facilitate learning. We are also learning that because ChatGPT is based on a large language model, it can act as your assistant; providing personalized responses based on your inputs, helping you work smarter, and boosting your productivity.

As it can help an individual in their work, how about helping a team?  In this article, I explore how helpful ChatGPT can be for a team. In other words, I suggest making ChatGPT a member of your team. ChatGPT is an artificial intelligence chatbot capable of mimicking human-like conversations so why not be a member of your team? As mentioned, ChatGPT has been recognized to boost productivity so let’s consider the context of a software engineering team who are producing new features and correcting bug fixes to the code base.  To consider this, here are the potential positives, negatives, and limitations of incorporating ChatGPT as an engineering team member. Here are some considerations:

First, let’s start with some Positives:

  • Multi-tasking: ChatGPT can handle many questions, inquiries, and tasks simultaneously allowing certain work to be handled more efficiently and scaled to a higher volume of work.  
  • Quick feedback: ChatGPT provides quick feedback to questions and inquisitions allowing for more input for potential better options and decision-making.
  • Availability: ChatGPT is technically available 24/7 and can work while team members rest allowing for busy work to get completed and tasks to be ready for team review when they are back online.
  • Scalability: As an AI, ChatGPT can handle a high volume of inquiries without experiencing fatigue or requiring breaks.
  • Database of information: ChatGPT has access to a vast amount of information and can provide accurate and up-to-date answers to team members' queries.
  • Human Languages: ChatGPT can speak in multiple languages and can accommodate global teams across multiple boundaries and locations.  
  • Programming Language: ChaptGPT has the potential for programming capability across various language platforms.  

Next, let’s move to the Negatives:

  • Time from Team Members: Working ChatGPT will take time from some team members. A buddy for ChatGPT will need to be designated to help provide context for ChatGPT, line up tasks, reduce ambiguity of the requests, verify and validate the work done by ChatGPT, and more.
  • Lack of emotional intelligence: ChatGPT lacks emotional understanding and empathy, which may limit its ability to provide refined and empathetic output to team members.
  • Limited contextual understanding: ChatGPT will struggle to understand the context in which you are working including the complexity of the work, potentially leading to misunderstandings or incorrect responses.
  • Bias and completeness fn training data: the database from which ChatGPT pulls has already shown some bias based on patterns and data provided which means it may generate reasonable responses but may be incorrect or biased if not carefully reviewed.
  • Lack of creativity: Because ChatGPT pulls from existing data and patterns, this limits its ability to generate genuinely innovative or creative ideas.

Finally, several considerations should be factored in. The first is ethical considerations as ChatGPT may inadvertently generate or reinforce biased or discriminatory responses due to its training data (which includes such biases). Careful monitoring and bias mitigation strategies will be necessary. The second consideration is legal and compliance challenges.  Incorporating ChapGPT into a product team may raise legal and compliance concerns, particularly in regulated industries that require human input, oversight, and/or accountability.

It's essential to consider these factors and strike a balance when integrating ChatGPT or any AI model into a product team. Human supervision, ethical guidelines, and continuous evaluation can help mitigate the limitations and ensure optimal utilization of AI technologies like ChatGPT. Now it is time for you to wrestle with this question: Are there Benefits of adding ChatGPT as a team member? Hopefully the overview, positives, negatives, and considerations can help you with your answer. 

----------

If you are interested in learning more about ChatGPT in relation Agile, Teamwork, or experimentation, consider reading these additional articles:



Monday, May 25, 2020

Visualizing your Team with the Team Constellation

Your team is real. It is made up of real people that support each other toward common goals. We often get so engrossed in our work that we forget the important connections and relationships across and beyond a team. What really is a team?  Emergn defines a team as having a shared purpose, compelling direction, complementary skills, shared responsibilities, and common performance goals. It is important to imprint the team in a visual way.  Equally important for a team to visual themselves is for those that support the team to be visually connected.  
One way to envision a team is through the visual Team Constellation.  The team constellation is a visual way to share who is on the team and who may contribute to the team.  The question is how to create the constellation? If you have a team room or area, you can construct one on a white board or on large poster paper, although in either case, I recommend using post-its to represent the people. I’ve had some teams print out small photos of their faces. For distributed teams, you can create a digital online constellation via a number of graphic or illustrative tools and place them on team sites or printed out so they can be shared.
I typically recommend a Team Constellation with three tiers as there are three levels of responsibility that typically are needed to embrace the team’s needs.  The first tier includes the core team who are committed to work directly on the product or service and meet the definition of team (in the first paragraph). They provide leadership for each increment, self-organize around the work, build the deliverables, and attend team ceremonies.
The second tier are the extended team that contribute to the team but are not fully committed. They may provide subject matter expertise in a specialized area or a missing temporary skill needed by the team to build the next increment. For work done in an increment, they should participate in any planning, stand-up, or demo related ceremonies.
The third tier are the stakeholders that support and advocate for the team.  Those in this tier, have an interest in seeing the team’s work become successful.  This will include providing sponsorship in terms of people and resources.  They help with communicating progress more broadly and may attend team demos to observe what is being build and may provide feedback. They may also help the team remove roadblocks beyond the team level.

Consider taking time to visualize your team via a team constellation. Take a moment to adapt the definitions of each tier. I suggest making it publicly available so that others understand those that work on and support the team. It can also help you solidify what it really means to be a team.  

Sunday, August 20, 2017

Ways to Mitigate the Challenges of moving to Self-Management

If you are considering Self-Management, first you learn what it is.  Then it’s important to understand the difference between Self-Organization and Self-Management. Next you should gain insight on some of the steps to put Self-Management into action. This article, the fourth in this four-part series on Self-Management focuses on the number of challenges you may encounter when moving toward self-management. Let’s explore some of those challenges.

Lacking Management Context
One of the concepts of self-management is that you operate as if there are no managers.  However, this is much harder than it seems.  Most employees do not have the working context of a manager.  Who do you contact for finance questions or issues?  How do you begin the interview process? How do you escalate issues? Do you have enough context to make decisions that cross the border of your team? What do you do to mitigate the lack of context?
  • Pick the brain of your manager on the various topics such as budgeting, human resource, hiring, expenses, and any area that they have had responsibility. 
  • Become aware of oddities and exceptions on how things work within an organization and what has been tried.     
  • Decide who on the team will be the new contact for different areas.  The contact may rotate.
  • Connect with and meet with those contacts from other departments.

Unfamiliar with Structures, Processes, and Policies
Within each company, there are often a maze of processes and policies.  Most employees are exposed to only a small number. When becoming self-managed, those on the team must become more familiar with the array of processes and policies. In addition, when there are reorganizations or a change in structure in different departments, a manager typically learns what this means.  What do you do to mitigate this unfamiliarity with structures, processes, and policies?
  • After a reorganization or change in structure, take time to fully learn what the change is and how this may impact your team. 
  • Take time to learn the processes and policies within the organization.  This will vary from country to country.  Consider doing this as a group. 
  • There may be unspoken policies.  Ask your manager if they are aware of any and have them explained.   

Not respecting Knowledge and Experience
There is often a misunderstanding that now that you are self-managed, that everyone is the same.  Self-Management within a team context does not mean everyone is created equal.  You may have some people who have knowledge and experience in self-management and some who have none.  What do you do to mitigate this lack of knowledge and experience?
  • If you have little or no knowledge or experience, be honest about it.  Be open to continuously learning as self-management is a journey.  Explore, learn, and adapt.
  • Be willing to take guidance from those that have experience.  Recognize and value others’ experiences.
  • As moving toward self-management is hard, be honest if you (as a team) are not ready to assume some of the responsibilities early one. 

Lack of discretion about your Self-Management
It is important to understand that few teams will have the unique responsibility and ability to direct their own future with few constraints that self-management brings.  This can make other teams envious. You can find yourself creating problems if you share this too broadly.  What do you do to mitigate the concern of discretion?  
  • Act with discretion.  Only share your self-management experience when asked. 
  • If a team is exploring the idea of self-organization or self-management, then consider sharing those portions of the topic that may benefit them. 

Confusion around Communications and Stakeholder Management
When there is a manager, there is often communication both from the outside to the manager and the manager to the team.  There is a more complex pattern of communication when everyone from the team is involved.  Who gets the communication?  Who do you communicate with?  How do you solicit feedback from your stakeholders?  What do you do to mitigate the confusion around communication and stakeholder management?
  • Create a communication strategy both amongst the team and outside of the team.  This ensures that everyone gets the information in a timely manner and no one is missed.
  • Be mindful what you communicate outside of the team.  A manager often adapts the message depending on what information is to be shared so it is delivered in the right tone and balance.  Learn to adapt the message.
  • Identify who communicates to whom outside the team.  This may be one person, a rotation, or different people depending on the topic at hand. 

Additional Workload on the Team
When moving to self-management, the team absorbs the responsibility of the manager. This shouldn’t be taken lightly and injects a whole full-time equivalent amount of work onto the team as the manager’s responsibilities are transitioned to the team.  Where does all of this work go?  It gets shared across and amongst the team.  What do you do to mitigate the additional workload?
  • If the team already has enough work to fill the number of people on the team, then they will need to reduce the workload in order to absorb the new responsibilities of the manager when moving to self-management.
  • Consider creating a percentage of slack time to be able to adapt to the peaks of activity that may be needed.
  • Add the manager’s activities as real and visible work on the team backlog

Lack of ownership
There can be an illusion that in self-management that everyone owns the work. While this is generally true, it is misunderstood. There is a saying that ”When everyone owns the thing, no one owns the thing.” There will be a need to have theme owners of work to ensure the work is adequately being guided with appropriate strategy. What do you do to mitigate the lack of ownership?
  • Identify theme or epic owners who understand the work more closely, who prioritize the work in increments, who get feedback, and who craft the strategy.
  • Add the owner as the primary contact for the work. Anyone can own a particular activity relating to the theme or epic. 
  • While there should be owners of buckets of work, input from other team members should be continuously collected. 

Increase Team Conflict
A manager has a certain hierarchical position.  When the manager moves toward the background, team members need to step up.  This can cause conflict when some personality types jump at the chance at leadership roles and some that shrink from it.  However, this doesn’t mean that the extroverts should automatically get the opportunities or are better at the responsibilities.  Who enacts the leadership roles now that the manager is not around?  What do you do to mitigate the potential increase in team conflict?
  • Allocate thinking time to discuss how to manage potential conflict.  This may include ways to negotiate leadership opportunities and rotations.
  • Work on conflict-management, problem solving, and decision-making soft skills as a team.  
  • Build team knowledge and experience in giving and receiving feedback. 
  • Recognize that you may be re-entering the forming and storming phases (per Tuckman’s model) and team-forming activities may be needed.   

-->
It is important to learn about the challenges of self-management so that you don’t stumble into these problems. Instead, proactively be prepared. Consider adding self-management challenges as part of your self-management education.  Also, as you embark on your self-management journey, consider regular retrospectives so that you can understand what is going well and what can be improved.  Good luck!
Consider reading the rest of the Self-Management series:

Sunday, May 28, 2017

Being Agile in HR with Peer Recruiting

A collaboration by Alexa Fuhren and Mario Moreira

Does a manager know better than a team who fits best to a role? How can we recruit the right people that fit best to our Agile organization? The answer is, by being Agile ourselves, particularly in the recruiting process!

In a more traditional working environment if there is a vacancy in a team, the manager approaches the recruiter, shares the requirements of the role, hands over the responsibility for the recruiting process to the HR department, and will be involved again when interviewing and selecting candidates. The recruiter is responsible for creating a job ad, posting it in appropriate recruiting channels, pre-selecting candidates, inviting the manager to interviews and making an offer to the selected candidate. The team usually plays a minor role in selecting the candidate.
Many teams in Agile operate with a self-organizing model.  This model includes much more team ownership, autonomy, as well as responsibility and accountability for all team members than traditionally operating teams. In self-organizing models, the concept of peer recruiting can be applied where the team should play a much stronger role in selecting the right candidate that fits best to the team. Due to a better person-team fit, a reduction of early employee turnover could be a desired outcome.

If teams are responsible for selecting new team members, this will change the role of the recruiter from owning the recruiting process to supporting the process and coaching the team. Depending on the knowledge and experience of the team, the recruiter will be more or rather less involved in selecting the right candidate.

Self-organizing teams can be responsible for the whole recruiting process and accountable for hiring the right candidate. It starts with creating a (new) job profile for the vacancy. The Recruitment Coach will challenge the team to figure out which profile is needed to increase their current and future team performance. When creating a job ad, the Recruitment Coach can give advice on how to make it compelling and will provide templates that are in line with corporate design.

Team members can post the job ad on job boards and in their social media channels (LinkedIn, Xing, Facebook, chatrooms, private networks). After pre-selecting the candidates based on previously defined criteria, the team invites the selected candidates for interviews, roles plays, presentations etc. They can choose to ask the manager or recruiter to interview the candidates. The recruiter’s role will be to train the team on interview techniques and how to avoid evaluation errors like stereotyping, the halo effect or the Pygmalion effect etc.

Implementing peer recruiting means moving the decision to the people who know best who fits to their teams. It helps to speed up the recruiting process by reducing long decision making processes with managers and HR.

What is in it for the company?
  • Faster decisions due to less interactions with HR and the manager
  • Higher team commitment
  • Less turnover in the first 6 months of employment due to a better company-person fit
  • Recruiter can focus on strategic work, e.g. employer branding, building networks etc., and become a valuable coach for the recruiting processes
What is in it for the candidate?
  • Candidate experiences an Agile culture right from the first contact with the company
  • Candidate gets to know the colleagues he will closely work with
  • Job interview at eye level with team members instead of the potential manager
Peer recruiting shifts the recruiter’s role to a coach who supports the business in making hiring decisions faster, selecting candidates that fit best to the company and lowering the early turnover rate. Enabling the team to select new team members increase their autonomy which can lead to higher team commitment and higher team performance.

-----------------


Learn more about Alexa Fuhren at: https://de.linkedin.com/in/alexa-fuhren-b745843/de

Mario Moreira writes more about Agile and HR in his book "The Agile Enterprise" in Chapter 21 "Reinventing HR for Agile"


Sunday, April 16, 2017

Exploring Five Pair Programming Techniques

A collaboration by Antonio González Sanchis and Mario Moreira

Extreme Programming (XP) introduced a programming technique that’s been famous since its early days: pair programming. It sounds simple, two people working together with the same computer. However, what people don’t know is that there are many ways in which you can approach this technique. Let’s explore a few:

Driver-navigator: This is the best known style of pairing. It consists of one person ‘driving’, taking the keyboard and coding or doing the work, while the other one is ‘navigating’. The Navigator’s job is to pay attention to the work being done by the driver while keeping the big picture in mind.  They should guide the driver in the right direction. It is very important that driver explains every decision they make, otherwise the navigator might lose interest and may stop paying attention. It’s healthy to switch roles every now and then.

Ping-Pong: For this approach you might need two keyboards connected to the same computer. In contrast to the driver-navigator mode, in ping-pong both people can be driving at any point in time. A good strategy for this approach is to have one person writing the tests while the other one tries to pass them. As in the previous approach, you should be switching roles often.

Backseat navigator: A typical approach when there’s a new team member in the group or a junior colleague. The navigator (usually the more senior team member) tells the driver, who has the keyboard, what to do to solve a problem with every little detail. The navigator should provide insights on how to solve the problem but also on why that’s the best solution in mind. It’s a good way to ramp up new members in your team as they build relationships with other people in the team while learning about the working style.

Tour: If there is an even number of team members or someone who you used to pair with went on holidays, you are not going to stop working. However, when those people return or you start pairing with someone, you don’t want them to start right away. Therefore, a good way to start would be to do a ‘tour’ through the code or work you did in their absence. The person who doesn’t know the most about the work takes the keyboard and the mouse and starts driving through the code while the ‘expert’ acts as a navigator and explains every detail.

Distributed pairing: Often people tend to think pairing is for collocated teams but that’s not entirely true. While pairing face-to-face is definitely much more effective than remotely, there are many tools and ways colleagues can pair. A good suggestion would be to use a videoconference messaging tool with a screen sharing app that allows the navigator to see in real time what the driver is doing.
These are not the only pairing styles that you might encounter but they are the best known.  They are also the easier techniques to try when you want to start pair programming. Also, examples seem to focus on software development but pairing is applicable to almost every field.  For example if you are in marketing and are launching an email campaign, you can pair with someone to navigate through the email while you write it, etc.

There might be anti-patterns when pairing. For example, you might find cases when the navigator is ‘sleeping’. This means the navigator can be checking emails, texting or even coding in parallel without paying much attention to the driver. Try to identify the root causes of this behaviour before you jump in into action. Usually it might be because the driver is not explaining properly the reasons why he is doing a specific task in a particular way.

Lastly, keep in mind that while pair programming may work in every role or department, it might not be suitable for every work. There will be times when you just want to discuss the approach with the team and go do it by yourself. That’s also a way of getting feedback, which in the end is the main purpose of pair programming: getting feedback early.  

If you are interested in trying pair programming, the first thing to do is review the list of possible techniques (above) and select one that you will experiment with.  Then identify your pair.  Brainstorm on how you might approach pair programming, specify how long you will try your experiment, and begin.  

------------
Learn more about Antonio González Sanchis at https://www.linkedin.com/in/antoniogonzalezsanchis/

Read more of Mario's article at: http://cmforagile.blogspot.com 

Thursday, July 14, 2016

Pokémon Go to Agile Go

Pokémon Go is an augmented-reality game that recently launched in Australia, New Zealand, United States, Germany and a number of other countries. In a nutshell, you search for Pokemon in the Poké world in your actual, geographical location, which you can explore by physically walking around.
Allow me to introduce you to my newly invented game called Agile Go.  Like Pokémon Go, Agile Go is a reality based game in which you search for people within your “Agile World” (aka, your company) that are exhibiting Agile behaviors aligned with the Agile values and principles.  Take a picture of them and tag it with “Agile Go”.  In Pokémon Go, you capture pokemon.  In Agile Go, you capture the moment where people are exhibiting Agile behavior.  What Agile behaviors should you look for?  Here are some real time scenarios to look for:
  • Business and development collaborating together
  • Product Owner or Team welcoming change to requirements
  • Teams self-organizing around the work
  • Team or Product Owner demonstrating an iteration of work
  • Product Owner getting feedback from actual customers
  • Team member applying a secondary skills to help others 
  • Anyone applying face-to-face communication 
  • Team identifying work not needed during grooming 
  • Anyone completing an action for improvement 
  • Manager or anyone removing an impediment to progress
If you see someone exhibiting any of these Agile behaviors or others you deem as aligning with the Agile values and principles, take a picture of them, write the Agile behavior they are exhibiting, and tag it with the “Agile Go” logo (see below).  Then share the photograph with them, letting them know that you appreciate them exhibiting positive Agile behaviors! Even consider tweeting their picture with the #agilego hashtag.  Go Agile!

© Agile Go All rights reserved. Anyone may use the Agile Go logo for non profit and non revenue basis