Back in August, I’ve decided to leave SoundCloud. This wasn’t an easy decision. A bit more than four years ago I had the opportunity to join a mission-driven startup as one of its early engineers, and eventually lead the organisation as it grew from 20 to more than 120 engineers. I grew up as an engineer, as a manager, and as a person. I am super proud of the world-class team we built there, it’s just that after all this time I was ready for something new.
When I first left, I didn’t really have anything else lined up. In Germany the leave notice period can take up to three months, so I’ve decided to use this rather long time to find something new and exciting. I had absolutely zero idea of what I would like to do next, so wanted to talk to everybody who would spare some time to tell me about what they were doing. I’ve talked to everybody, from single-person teams in Europe to the usual suspects in California.
You may know DigitalOcean, the platform, but you probably don’t know a lot about DigitalOcean, the company. I certainly didn’t. My first contact with the company was when we hosted them at SoundCloud’s Berlin office for a Q&A session on their then-new datacentre in Frankfurt. They came across as very likeable people, with some huge challenges ahead of them.
When talking to Ben and Moisey, my first question was about how they structured their teams. Irrespective of me applying for a job there, it would be super interesting to learn more about how a cloud computing company organises itself. The biggest surprise came when they told me that the software engineering team was about 40 people, something I’d consider super small for what they did.
I was blown away by how somebody was able to work in such complicated domain, with such crazy growth, with just 40 engineers. I thanked them for the chat, but wasn’t sure how I’d actually be of any help there. I am a userland person, both as a manager and as an engineer. As a manager, I’m way too used to shortening feedback cycles; and as an engineer my area of expertise is flexible software, focused on iterative and incremental development. It surely sounded to me that the challenges they had there were going to require some proper grown-up people—you know, those folk who know about kernels and hypervisors and stuff.
The way they described it to me, I was absolutely right. DigitalOcean has some incredible challenges in the lower part of the stack. For many kernel and system engineers, these challenges and the small team size make it the perfect gig: instead of being left alone in a corner working on something that nobody understands, these engineers are actually working on the core product. Each change they make has a massive, immediate impact on the business. This kind of organisation isn’t easy to find.
But I was also missing the point. The reason DigitalOcean is such a big deal isn’t just because of the systems software, performance, or pricing structure. What I hadn’t realised was that they have as a cornerstone in their strategy what is probably the cleanest and simplest user experience around cloud computing and general hosting in the market.
And that sounded like something I have a lot of experience with. I have worked with many consumer products, and it turns out that, with the increasing number of developers joining the market every year, a cloud computing offering is very similar to your typical consumer product.
Those of us who work in userland know very well that delivering a simple user experience at scale requires managing a lot of complex, moving parts. Publishing 140 characters, how hard can it be? Uploading an audio file and playing it back is simple, no? Spinning up hundreds of services in many different datacentres and billing by usage, surely a piece of cake?
After this chat I soon found myself in a plane to NYC, to have final conversations with the whole team. After an intense day with both local and remote interviews (DigitalOcean is probably around 40% remote in engineering), I was convinced that I would definitely have a good time here.
Join a small team playing a game that until now only the big ones would play. Build products people really love. Fix the mess in an industry where everything else feels like you need a flowchart just to figure out which offering you need for your use case. Work in a domain I am very familiar with and passionate about. Once more introducing a service-oriented approach to a previously monolithic environment.
That was it. Last December I started working for DigitalOcean, still from Berlin while I wait my US visa paperwork to come through—which just happened this week, yay! It’s still early days, but a great ride so far, and I am super excited about the organisation and products we are building.
Now that my life is a bit more stable, I’ll get back to posting more frequently here about what we’re up to there, plus some reflections on past experiences. Meanwhile if you are in the NYC area or would like to work remote from wherever you happen to be, we’re obviously looking for people (you can also just hit me at pcalcado@most popular email provider on earth dot com).