I've always loved programming for how creative you can be. There's a deep joy and satisfaction in playing around with ideas and building things that delight people. That's what got me into it as a young boy. I taught myself to code at a very early age, building interactive websites and simple games. When I started playing World of Warcraft, I began building user interface modifications to improve the game for myself and my fellow players. By the time I was thirteen the mods I'd built were used by millions of people. I ended up collaborating with Blizzard --- the studio behind the game --- and many of the innovations I developed even made their way into the official game, which was a truly fulfilling experience.
A few years later I got my first real job as a developer and joined Spotify. This meant I had to learn anew how to build backend applications. I was used to simple setups with one or two servers, but now we were building massively scalable systems for The Cloud™. The complexity of cloud infrastructure started to dominate my work. Instead of being all about building a great product we were spending all our time provisioning, orchestrating and managing cloud services. It was all very mundane and repetitive, and a hundred times slower and more complicated compared to the days of the single server. Nothing like the creative process I used to love growing up.
At one point the complexities of cloud infrastructure resulted in what felt like several months of hell. The payments systems I was working on at Spotify started having a nasty intermittent performance problem, and were constantly at the verge of falling over. My team kept being woken up by alerts almost every night, and we were doing everything in our power to keep everything up and running so that the company could accept payments. The experience was so stressful I ended up hospitalised with gastritis. I felt strongly that it would never have happened were it not for the complex nature of large distributed systems.
I realised I had to do something for all the developers out there like me who find building for the cloud incredibly frustrating and uncreative. There are loads of tools for improving small parts of the process. But they only have a small impact on the job overall. I wanted to find a way to massively reduce the time developers spend managing the complexities of the cloud; something that would free us to get on with the fun and creative part of actually building things.
I realised the reason we spend so much time configuring cloud services is because the tools we rely on have no idea what we're trying to do. So it's up to the developer to do almost all of the work. I had the idea that in order to make a real impact, I needed to build a tool that does understand that. That's the key insight behind Encore. It's a backend development engine for building scalable cloud-based software, that has the same mental model as the developer for how things work and how they're connected.
In 2017 I started by sketching the idea out to see if there was something in it. Once I realized it could work it took over my life. It felt so exciting and important. For years I'd get home from work at 6pm, start hacking away and suddenly it would be 4am.
By early 2020 Encore was ready for early adopters so I left Spotify to work on it full-time. We open-sourced it last year and the reception blew us away. We went from having a handful of users to thousands of developers trying it out.
Today I'm excited to announce we're releasing Encore v1.0. It's my belief that Encore will transform developers' lives. Our work will become far more joyful and creative. Rather than it being 80% about configuring tools and services that have been reconfigured thousands of times before, we'll spend our days building new products that have a real impact. And that could have huge benefits for society. Imagine the exciting innovations if the world's 25+ million developers are freed up to be five times more productive!
I also hope that Encore will open things up to a more diverse range of folks than the usual bearded men. You won't need to have a deep understanding of the nuances of cloud services to develop world-changing software. Instead it will be something people can do who are expert and passionate about the real-world issues they're actually trying to solve.
I'm happy to share that we've raised $3 million in seed funding, led by Crane Venture Partners, to help us accomplish these lofty goals. With this funding round we're able to both grow our core team, and invest much more in supporting our incredible developer community. We're now able to accelerate our efforts to provide a radically improved experience for backend developers everywhere.
Catch you in the cloud,