Strategies for project team organization

Any mid-senior devs/architects/pms have ideas/recommendations for putting a team together to work on a project?

Is trello boards as a team a good idea? Or just using github issues/pull requests...how do you organize major parts and make sure all the pieces are being made...who makes the call on how to do things...

how would you pick leadership and find people to work collaboratively with them? And not just have everybody doing whatever they wanted...but also not micromanaging?

When putting a team together, it's important to remember that your role isn't too tell people what to do in order for the team to be successful; your role is to provide an environment that allows the team to be successful.

So it's less about picking tools (though tools can be important), and more about setting expectations and norms.

This is why sprint / iteration planning is so ubiquitous across software teams. Use this ceremony as an opportunity for the team to triage issues in your backlog, agree on what each feature is and what the definition of done is; then prioritise the work.

The team should be working on the work agreed for the iteration, so everyone knows what needs done. Whomever picks up a task has the flexibility to build it as they see fit, assuming it passes the definition of done. Of course, some teams use WIP pull requests to discuss design decisions early; that's usually good practice to encourage pairing and mentoring.

With regards to "pick(ing) leadership" - is this necessary? Generally leaders don't need hand picked, they'll evolve into that role given the right circumstances. People pick their own leaders, but their managers are forced on them 🤣

So, we're trying to put a team together now, our first meeting was yesterday and when we finished only 1 person had tasks to do. Do you find that sometimes the work loads in a sprint unbalanced? What do you do with the idle folks? You know what they say about idle hands. ...