The software development community is slowly realizing that maximizing the velocity of delivery is paramount. As Jack Welch said, "If you are not moving at the speed of the marketplace, you’re already dead—you just haven’t stopped breathing yet.” But it's an unfortunately accepted actuality that the software development and delivery velocity of an organization inexorably decrease over time. This happens not just in the context of a single codebase, which could be explained mostly by straightforward technical phenomena, but also across entire teams or companies. In this talk, I'll draw on my experiences with companies from tiny (startups I've co-founded) to large (Microsoft, Google) to offer some observations about the reasons behind the apparently unavoidable slowdown that software development teams experience. These reasons range from purely technical, such as the accretion of technical debt, to organizational and legal. But it's not all bad news: I'll also suggest a few concrete techniques that I've seen have a positive impact on velocity in software development.