As a product-led company, our shipping cadence serves as the rhythm of our business. Moreover, it represents our commitment to delivering ongoing value to our customers. Last summer, I outlined why shipping every week was so important to our team. At the end of May, we started shipping every business day. I’d like to share our thinking behind this change and what it means for you.
When we founded Pitch, we made every technical decision in the interest of speed, creativity, and adaptability. But some of those decisions and processes simply couldn’t scale to keep up with our growth.
While fast by most companies’ standards, the weekly release cycle had specific bottlenecks that slowed us down. Working toward release cut-offs, submitting and reviewing large pull requests, testing in our internal environment, and preparing each release added complexity and created room for error. Worst of all, it added a sense of stress to what should be thrilling: making Pitch better for our customers each and every week.
The move to daily releases helps us simplify key processes, reduce complexity, and improve engineering velocity. That, in turn, empowers our team to ship higher-quality code and a better product experience.
Living our engineering principles
Reading through our engineering principles lets you understand how vital iteration and collaboration are to our team. The only way we can get better at what we do is by opening ourselves up to early and frequent feedback and sharing knowledge across teams.
However, our previous release process made small iterations difficult, adding friction to how we collaborate — especially on code reviews and testing. Larger units of work became large pull requests, which in turn made code reviews more difficult and pushed us to rely on complex (and expensive) end-to-end automation. Inevitably, this led to situations where we discovered conflicts or errors on release days and had to shift focus toward last-minute fixes.
Our new release process enables us to break down work into smaller units. With this approach, we end up creating more but smaller pull requests. When pull requests are 25 lines of code — instead of 100 — engineers can provide better reviews, and we can merge them faster with greater confidence.
What I find most exciting about this change is that it aligns our behavior with the product we’re building. When you want to work on a presentation with a colleague, you expect to work on the same version, not a duplicate. By releasing each day, we eliminate the notion of an internal testing environment and a production environment — we work right where users use our code.
Creating a faster feedback loop with customers
Your feedback helps us make Pitch better for teams like yours. Daily releases make it possible to collect more feedback faster. Now, bug fixes and UX improvements can be shipped as soon as they’re ready, instead of waiting until next week’s release. As part of this change, we’re introducing a robust feature-flagging system to improve our approach to testing and rolling out new features. Essentially, that means we can enable or disable new features in production without deploying code.
Previously, the way we managed betas was quite manual, making it difficult to test new features with more than a few thousand users at a time. With feature flagging, we have more flexibility in how we test and introduce updates, ensuring that new features are useful, delightful, and bug-free before we release them to everyone. It also means that we can get feedback that’s more representative of our customer base and that you and your team will have more opportunities to shape the future of Pitch.
Keep track of what’s new in Pitch
Moving to daily releases allows us to iterate on how we deliver important product updates. Our weekly release notes have been an essential and long-standing company ritual. Since our limited preview release kicked off in 2019, we’ve delivered 134 decks outlining the latest updates.
Starting in July, we’ll move to monthly release notes that give a broader overview of the latest changes. We hope this helps you and your team stay on top of the latest changes without disrupting your flow while in Pitch. Of course, when we release significant updates and new features, we’ll make sure to highlight them, but more subtly.
We’ll also highlight updates, tips and tricks, and upcoming betas more frequently in our Slack Community, where some of our most passionate power users gather. If you’d like to be part of the ongoing conversation and connect directly with our product team, I encourage you to join the community.