  Team assembly is a problem that demands trade-offs between multiple fairness
criteria and computational optimization. We focus on four criteria: (i) fair
distribution of workloads within the team, (ii) fair distribution of skills and
expertise regarding project requirements, (iii) fair distribution of protected
classes in the team, and (iv) fair distribution of the team cost among
protected classes. For this problem, we propose a two-stage algorithmic
solution. First, a multi-objective optimization procedure is executed and the
Pareto candidates that satisfy the project requirements are selected. Second, N
random groups are formed containing combinations of these candidates, and a
second round of multi-objective optimization is executed, but this time for
selecting the groups that optimize the team-assembly criteria.
