Modern Software Engineering

T04 Branches That Don't Suck: Smarter Strategies for Modern Dev Teams

March 17th, 2026

8:00am - 9:15am

Level: Intermediate to Advanced

Benjamin Day

Author, Trainer, Developer

Let's be honest — most teams use branches as a substitute for clarity. Can't decide on a feature's priority? Branch it. Can't ship without a meeting? Branch it. Not sure if it's even going to production? Definitely branch it.

In this talk, we'll break down why we branch, not just how. We'll explore the difference between branches that support clean delivery versus ones that just postpone hard decisions. You'll learn when branching is helpful (isolation for stability, long-running experiments, clean hotfixes) and when it's a sign of deeper team issues (fear-based development, no release strategy, unclear ownership).

We'll cover practical, modern Git workflows — from trunk-based development to feature flags to Git Flow-lite — and how to choose the right one for your team size, release frequency, and deployment strategy.

This isn't just a Git talk. It's a "think before you branch" manifesto for shipping smarter.

You will learn:

  • Evaluate when branching is valuable versus when it hides process or decision-making problems.
  • Apply branching strategies that align with your release strategy, CI/CD flow, and team maturity.
  • Implement clean Git practices that reduce complexity, simplify merges, and support continuous delivery.