This pattern refers to the work behavior of repeatedly working privately and hoarding all work in progress to deliver one giant pull request at the end of the sprint.
Programmers often wait until their work is complete before sharing it, which can limit collaboration and slow down progress. We’ve heard from engineers that this can be caused by a fear of judgment or a desire for their work to appear effortless.
However, working alone is riskier than working with others, and software engineering is a team effort. Saving work until the end damages the whole team’s progress and creates unnecessary pressure for teammates to do a lot of work at once to review and provide feedback, often causing large interruptions in their own workflows.
Submitting work early allows for better review and collaboration, resulting in higher quality code and shared skills among the team.
How to Recognize Hoarding the Code
There are several signs that can indicate an engineer is hoarding code:
- Large, infrequent commits: Visualized by longer dashes in Work Log.
- Large PRs: Delivered later in a sprint.
- Less activity as a code reviewer: Indicating a focus on their own work rather than the team's code quality.
Addressing Hoarding the Code
Above all else, be compassionate. Odds are, you’ve recognized this pattern right before or just after the end of a sprint, so these engineers are likely tired, stressed, and worn out. Make sure they get the time and space they need to recover from delivering such a big payload.
This can be great timing for an impromptu and informal 1:1. Get them talking about their latest project, ask what went well, what didn’t, and recognize their achievement.
Along the way, bring up the topic of team collaboration, and how saving work until it’s completed leaves little room for learning from others throughout the process. When teams do work together throughout a project, they can learn from each other’s perspectives, reduce uncertainty, move faster, and find improved solutions to the problem. In practice, that might look like submitting work far before the engineer thinks it’s ready for a review.
Benefits of Early Code Submission
Encouraging early code submission and collaboration brings several benefits:
- Improved Code Quality: Early reviews allow for catching issues sooner, leading to higher quality code.
- Enhanced Collaboration: Regular interaction and feedback from team members promote a more collaborative environment.
- Shared Knowledge: Team members can learn from each other's work, spreading knowledge and best practices.
- Reduced Pressure: Smaller, more frequent reviews reduce the burden on reviewers and maintain a steady workflow.
By fostering a culture that values early code submission and collaboration, teams can improve their development process, enhance code quality, and achieve better project outcomes. Recognize and support engineers who practice collaborative behaviors, and use their efforts as a model to promote best practices across the team.
- Comments
- Leave a Comment