We ship new features every single week at Pitch. Our technical choices and iterative approach to development let us maintain this pace, but it’s not just a strategy for our product. It’s the rhythm that drives our whole company in our mission to enable every team’s best thinking.
When our founding team got together to discuss starting Pitch in 2018, we were all clear on one thing: We wanted a fresh start.
We’d all been teammates at Wunderlist, but after we were acquired, our paths had diverged. Some of us took roles at other tech companies, while others followed creative pursuits.
What brought us back together was the shared feeling that work wasn’t feeling right. Together, we dreamed of starting a new team, with a new set of values that represented who we are and how we like to work together.
For me, as our technical leader, that meant one clear priority: to build a product team that constantly shipped exciting new features and improvements. Every. Single. Week.
Today, that’s still my top priority, and for good reason. At Pitch, shipping every week isn’t just a strategy for our product — it’s the rhythm that drives our whole company.
I want to take the opportunity to explain the technical foundation that lets us set this pace, the decision-making approach that ensures we can keep it up, and the real reason why it’s such a valuable advantage for us at Pitch.
A foundation for curiosity
As our founding CTO, two of the earliest choices I made were selecting Clojure as our primary programming language and the web as our primary application delivery platform. Each offers us distinct advantages, but they were made in the same spirit: to make room for curiosity and creativity among our engineering team.
As a functional programming language, Clojure removes a lot of the ceremony typically required as part of the development process. By putting the spotlight on data structures and pure functions, Clojure allows programmers to focus on the problem. Also, compared with traditional programming methods, Clojure enables a more dynamic feedback model and a more interactive experience for developers.
In simple terms, Clojure lets us get the tedious stuff out of the way, and gives our team the time, confidence and headspace for iteration.
In order to iterate, we use the REPL, or read-eval-print loop, as our main driver during development at Pitch. The basic premise of the REPL is that you change the running program in small ways and observe the results.
When we’re building new features at Pitch, the REPL lets us start with small tasks and gradually automate them until we’ve reached the functionality we want. When we’re debugging, the REPL lets us quickly flag problems, inspect relevant data structures and develop fixes.
That brings us to our choice of the web as our application delivery platform. In a nutshell, the web is unrivaled in its reach and adaptability. The web browser’s capabilities give us the power to create an application that can be used anywhere that websites can be viewed or loaded, and our embrace of standard browser technology gives us the flexibility to integrate any kind of web content into Pitch.
So, rather than spending our time reinventing wheels, we play to the strengths of the web platform (sharing via URLs, embedding website content, and making presentations fully interactive) and rely on decades of excellent progress in the area of optimized rendering engines.
Sure, these disparate benefits all sound great by themselves, but let me bring it back to why we really made these choices. It’s all about the culture they enable, in which every engineer at Pitch is empowered to be a product-minded team player.
As a team, we don’t spend our time talking about the accidental complexity of various native platforms — we talk about our users’ real-world needs and problems.
A journey of discovery
With the foundations of our engineering culture in place, my focus more recently has turned toward empowering our team to go on what I call a journey of discovery.
To do so, you need the right mindset. In our view, that means always seeking a balance between our gut intuition and our users’ feedback. If we’re biased too strongly toward the former, we’ll build a product with only ourselves in mind; if we’re biased too much toward the latter, we’ll overlook opportunities to add our own unique touch.
It’s not an easy balance to strike, but I can say with confidence that it’s our founding team’s superpower. We’ve spent a decade fine-tuning it — first at Wunderlist, and now at Pitch.
In my experience, finding this balance requires two conditions.
- First, we set and maintain a clear focus on the problem statement. We expect team members to pause, get up, and think deeply about the problem they’re solving before any lines of code get written.
- Then, we create space for invention and experimentation. Here we find that Clojure's dynamic, feedback-driven development style serves us as an inspiration in our product iteration engine as well.
Our process for feature testing and evaluation is a good example of these conditions at work. Early on, we realized that the best way to see if we were on the right track with a new feature was to make a full build of the app available to the entire team. Not only did this simplify quality assurance; it also gave us a feel for how the change works in practice. In this spirit, we give developers the ability to share branch builds, work-in-progress versions of the product, as early as possible so we can collect feedback internally.
To make branch builds and similar tools a reality, we rely on the unparalleled openness and flexibility of the web platform, where a look under the hood is often just a few clicks away. Taking a cue from the browser's built-in developer tools, our iteration engine is a suite of tools that allow us to focus on the essential complexity — on the user value.
A rhythm for our culture
With Clojure and the web as our tools, and the journey of discovery as our guiding approach, we’ve set up the conditions to ship fast. We can move fast without breaking things, and we can synthesize our users’ feedback and our own creativity into new features and improvements. Every week.
But let’s be clear on the intention behind our shipping pace. If we pursued this approach in an environment where chaos reigned, and in which we forced ourselves to stick to a shipping schedule “just because,” we’d burn people out and lose our natural curiosity and sense of fun.
And to lose that, just for the sake of being able to say we ship fast, is not a tradeoff worth making.
My co-founder Christian likes to say that our weekly shipping pace is like “a train leaving the station.” As an engineer at Pitch, you can catch this week’s train, or you can catch the next one, but the train is leaving on time either way. Every single week.
It’s the rhythm that lies at the core of our entire company. It gives us a shared pace; it helps us develop Pitch in true collaboration with our non-technical colleagues; and most importantly, it makes work fun.
Where our train is headed
We’ve got big plans for Pitch. As we previewed earlier this year, our vision extends far beyond building a better way to create slides. We’re building the first complete platform for presentations.
From evolving the core editor experience to be even richer and more collaborative, to building in brand new functionality around analytics, sharing and playback, and creating a first-of-its-kind public ecosystem for publishing and exchanging presentations and templates, we’re going to have to wrangle significant product and technical complexity to succeed.
To do it, we’ll lean on the strength and reliability of Clojure and the power of the web platform, and we’ll leverage modern browser APIs that have turned the web from a hypertext viewer to the world’s foremost application distribution platform.
But to do it well, and to have fun doing it, we’ll be relying even more heavily on following our rhythm: breaking down our Herculean technical challenge into fun, stimulating problems, solving them with passion and creativity, and delivering fresh delight to our users.
Every 👏 single 👏 week.
Pitch is hiring at all levels. If you're inspired to join our journey, check out our open roles.