Team Leading
- Get to know members individually so they can easily communicate complex issues
- Regularly assess individual progress, provide guidance and coaching
- Clearly communicate goals and context
- Regularly inform management of progress and potential risk
- Shield team from feature creep and premature requirements
- Establish clear development process
- All code committed must be code reviewed
- Maintain reliable automated test suite and act as living documentation
- Maintain architecture documentation
- Establish best practices like using immutable data and pure functions for domain logic, such practices can result in exponential increase in productivity
- Encourage continuous improvement to existing process
- Establish onboarding process for new hires, they should be able to produce production code in 1 or 2 week(s)
- Document the development process and maintain it
- Listen to members' issues, individually. Asking feedback during team meeting is unproductive and possibly destructive
- Enable team members by getting them what (via their feedback) they need in order to be productive