Documented Workflows

Problem: When workflows are not documented, teams can get confused and lose time on repeated questions and mistakes.

Solution: Keep a shared, up-to-date record of all processes so team members can find answers quickly and work more smoothly.

Documentation is a cornerstone for moving quickly. Having the information in one place and easily available removes major roadblocks.

Tools

  • Whenever someone on your team asks a question, write down the answer in your Single Source of Truth. When topics keep getting brought up, write them down.
  • Document the way you decide things as well as your decisions.
    • By maintaining detailed records, teams can trace issues, resolve handover errors, and sustain continuity during personnel changes.
  • When all team members have access to essential information, reliance on hierarchical guidance decreases. This allows faster decisions by enabling teams to make informed decisions independently, improving agility and reducing dependency on top-down directives.
  • Record Everything. Cultivate a culture where knowledge sharing is prioritized. Use video and writing whenever possible, to communicate tone and technology as well as knowledge.
  • Test ideas continuously to catch issues early, save time, and increase confidence.
  • Adopt Trunk-Based Development. Trunk-based development came from a software development strategy in which all developers work on a single main branch (the "trunk") rather than creating separate feature branches for new code.
    • Use trunk-based development to limit long-lived knowledge branches, reducing merge conflicts and speeding up integration.
    • Here’s a breakdown of the principles and best practices for trunk-based development and how to use it effectively:
      • Single Branch (Trunk): Instead of multiple branches, all work is integrated into a single main branch (a Single Source of Truth)
      • Small, Frequent Commits: Editors make small, incremental changes and commit them frequently.
      • Feature Toggles: When working on features that aren’t ready for the public, use toggles (also known as feature flags) to hide incomplete features.
      • Each edit should represent a logical, standalone change. This practice makes it easier to identify issues and roll back specific changes if needed.
  • Establish a ‘Definition of Done’:(Definition of Done)
    • Clearly define the criteria that edits must meet before they are approved.
  • Daily Lineup/Standups, quick syncs, or tools like Slack and Notion can help keep everyone informed of progress and upcoming changes.
  • Periodically review the process to identify bottlenecks.
    • Use peer reviews for routine changes instead of external approvals to maintain agility.