Behind the curtain: Terraform Cloud Business launch | Glenn Gillen

Behind the curtain: Terraform Cloud Business launch

Sep 14, 2020

aka: Shared lessons & selfless generosity

Last month I was part of the team that launched a series of new additions to Terraform Cloud and there's so much about that release I'm really excited about. But there's a few things I wanted to share and celebrate from behind the scenes that aren't going to make it onto any official announcement.

I've spent a lot of my time back in Australia working with founders of early stage startups. They'd often ask what would get me back to the Bay Area and my answer was always the same: the people. There's just a density of experience that's hard to find anywhere else. It's nothing to do with the access VC. Or a difference in the standard of CS grads. It's just that the pace of things means people see and experience so much so quickly that it's like taking a short cut. A random conversation with someone at a cafe could so easily end up sharing some unique perspective on the very thing you're working on. Saving you weeks or months of effort because you get to learn from their success or failures. The city is filled with people willing to share their stories and provide insight. Part of the joy of working at HashiCorp is getting to work day-to-day with such people again, while also being closer to family back here in Australia. That's not the same as the external economies of scale you'd get from being located in California though. Though it turns out it might not be as important as it used to be.

For those that aren't familiar, HashiCorp has had two commercial offerings related to Terraform: Terraform Cloud and Terraform Enterprise. For most medium-large sized companies Terraform Enterprise was the solution they'd adopt to support the access and networking controls they needed. The Business tier launch was our first step toward making sure Terraform Cloud was an option for all companies that wanted to run less infrastructure. That also meant that when it came to designing the latest set of solutions we weren't entirely breaking new ground. Some of what was missing was closing the gap on table stakes expectations for "enterprise software" and so I looked around for what other people had done.

Top of the list was Single Sign On (SSO). So I looked around at what other companies did, what their setup and onboarding flows looked like for the SSO features they offered. What Identity Providers they integrated with, how the various flows differed. Like some combination of Product Management Archaeologist ana Anthtopologist; trying to piece together the parts, understand how it evolved to this point, questioning what drove this particular design to be. Through that process I went through the Buildkite SSO setup process and was very impressed. I mean, all we're talking about here is SSO. How exciting can it really be? What could possibly be impressive about it? Is a CI platform really in the vanguard when it came to federated identity? I was surprised about the answers to all those questions too! Because the answers were: Very, look at how simple and intuitive it can be, and yes they are.

As luck would have it I know the team at Buildkite and convinced them to jump on a call to talk about it some more. I explained where we were, what we were doing, and how impressed I was with what they'd built. I know they put a lot of thought and consideration into everything they do. "So what was the particular insight or reasoning from first principles that led to this design?", I asked. I'm pretty sure Keith literally laughed at me, in a way that was equal parts shocked that I'd asked the question and maybe even embarrassed that I thought they were so smart about it. "Have you not tried to support SAML? It's horrible! It's complicated. People mess it up the the most innocent of ways, but to disastarous effect. This isn't some deep product insight. This is the product of years of pain and us not wanting to scale a support team just to deal with it."

We probably spent about half an hour digging into all of the various permutations around ownership and membership. Talked through some almost philophical questions around what is a "user" and who ultimately should own what. The trade-offs they'd made. The things they're stuck with. The things they'd do differently if they had their time again. We were on the call for less than an hour but it was likely the most useful hour I've had from a product perspective all year. Precisely because, as Keith pointed out, "this is the product of years of pain". We could have learnt all the same lessons ourselves, eventually. Or we can take the short-cut while also understanding the intention and inputs that led to those decisions so we can make sure they're relevant to our context (we've done quite a few things differently).

It's the combination of hard-won lessons learned and a give-first mentality that made the Bay Area so amazing. There was no quid pro quo in chatting to me for an hour. It was a selfless act from the Buildkite team to help lift some others up in an area where they were clearly strong. I'm sure I'll repay it to them as soon as the opportunity presents. Until then, we're all better off if we're able to quickly learn via shared experiences, to stop re-solving the same old problem, and get back to solving the new and unique challenges ahead of us.

Over the following couple of weeks the pattern repeated. We spoke to Buildkite again (on its surface their agents looked similar to what we'd planned to release, we ended up going a different path though) and then to A Cloud Guru to share experiences about onboarding and lowering technical barriers for people. Again potentially months of effort saved just from hearing about all the challenges they'd run into over the years. None of these companies are based in California. The fact that they're both based in Australia is I think more coincidence or serindipity as I set out looking for the best implementations possible to learn from them rather than just knocking on virtual doors close to home. The most exciting part of all of this is it was entirely virtual. I've not seen any of these people in person for probably years at this point. So much of the industry has transitioned to remote or distributed work that it felt trivial and natural to just jump on a call. In the same way I used to just "hey, meet you at Sightglass tomorrow morning?" when I was in San Francisco. It's not a complete replacement. You lose the serendipity of running into just the right people at just the right time. But then in this case it turns out the right people weren't in San Francisco anyway.

And given you've read this far, the obligatory "I'm hiring" part: if you're looking for a Product Management role where you get to work on a highly visible and high growth product, get to help craft a vision and roadmap for a product that is impacting developers and companies across the world, and work alongside some great people from the comfort of your home (we've always been remote-first), then please check out the job listing and submit your CV!

Hi, I'm Glenn! 👋 I've spent most of my career working with or at startups. I'm currently the Director of Product @ Ockam where I'm helping developers build applications and systems that are secure-by-design. It's time we started securely connecting apps, not networks.

Previously I led the Terraform product team @ HashiCorp, where we launched Terraform Cloud and set the stage for a successful IPO. Prior to that I was part of the Startup Team @ AWS, and earlier still an early employee @ Heroku. I've also invested in a couple of dozen early stage startups.