Skip to main content

Understanding Teams

Teams in Middleware are a fundamental entity.
This means that to make any real use of Middleware, you'll need to make teams. They are intended to mimic your actual organizational hierarchy.

Each team has the following things mapped to it:

  • One manager (optional)
  • Members (optional)
    • Insights for a team can be viewed even if they don't have members. It only really becomes a barrier if you want to see developer contributions/workload in a team, or bottlenecks
    • You will need to ensure the users are "linked" to Jira/Bitbucket/YouTrack/etc. or have a Github username specified.
  • Repositories/Codebases (required - for code based insights)
    • If you're interested in any code based insights for this team, you'll need to map repositories to it.
    • Not mapping repos to a team will just present you with an empty state if you directly try to view insights for this team.
    • Code integration required. Such as Github, Bitbucket, and Gitlab.
  • Projects (required - for project based insights)
    • Same as codebases. For sprint insights, team capacity and task completion related insights, you'd need this to be linked.
    • Projects integration required. Such as Jira, and YouTrack.
  • Incident Services (optional, but important for CFR/MTTR)
    • Incident based data is used to show comprehensive Change Failure Rate or Mean Time to Recovery insights.
    • You can still see this data based on reverted PRs instead, but if you're using an incident management solution, this will likely be better.
    • Incident management integration required. Such as Pagerduty, OpsGenie, and Zenduty.

Creating a Team

There are currently two variations of teams rolled out to users. Most newer users experience the new variation, while many of those that joined before 2025 experience the older variation and are being gradually upgraded.

For specific setup steps, visit one of the following pages:

This will cover things like, creating a team, adding members, repos, projects, incident services, etc.

Team Roles and Permissions

  • Admin: Full access to all settings, teams, insights, and billing. They can add new admins.
    • If someone is added as a manager to other managers (who must be managing a team), they automatically have admin access.
    • Admin access can also be granted explicitly.
    • Anyone who joins the organization before first-time onboarding has been completed is granted Admin level accesses.
    • Admins can remove other admins, but the current user can't remove themselves from being an admin.
  • Manager: Everything that the admins can do, except add new admins or access billing.
    • If someone is added as a manager to a team, they automatically have Manager level access.
  • Member: Can view and analyze insights of any singular teams.
    • Everyone who wasn't automatically made an admin by the system, another user, or added as a manager to a team by someone - is granted the Member level access.
    • Members don't have access to change most settings, or see org-wide insights.

Bulk Creating Teams

You can add members to teams in two ways:

  • Navigate to the Teams UI
  • Click "Bulk create teams"
bulk teams bulk teams modal
  • Click "Create teams"
bulk teams last step
  • You're done! For details on what happens to existing teams with the same names, what can go wrong or possible blockers, refer to this documentation.

Best Practices

  • Create teams based on projects or departments
  • Regularly audit team members, repos, and projects
  • Use descriptive team names and make sure managers are added
  • Remove inactive members promptly

FAQ

Q: How many teams can I create?
A: The number of teams depends on your plan. Free tier or trials have a 10 team limit. Paid plans don't have a limit.

Q: Can a user be in multiple teams?
A: Yes, users can belong to multiple teams with different roles. They can be a manager in one team, and a member in another even. As long as the hierarchy doesn't result in a cycle, where they are managing a team where they are also the member, directly or indirectly.

Q: How do I transfer team ownership?
A: Any manager or admin can simply change the manager of a team to transfer that team to be under someone else.