- How does the team make decisions?
- How do you divide the work?
- Does the team share the same goals and incentives?
- What happens when work isn't completed as expected?
- When do team members likes to work?
- What other commitments do your team members have?
- Where will you get the work done?
- Basic Process:
- Determine minimal feature set
- Draw UML on the whiteboard
- Sketch out your API on paper
- Write example code
- Review
- Repeat
- Issues can represent both tasks and bugs theat need to be fixed
- Issues should be:
- A reasonable chunk of work
- focused and cohesive
- Use labels to represent priority
- Consider using milestones
- Use a simple Kanban board to measure progress
- Single-branch development doesn't scale to teams
- Create a new branch for each feature
- allows parallel development
- no dealing with half-finished code
- no merge conflicts
- Every commit to "master" should pass CI checks