Real World Stories | Stories from the Trenches

August 9th, 2021

Developers doing deploys at HipChat

And what was really cool about this team is they didn't have a whole separate team that ran software. They didn't have a whole separate team that supported it in production. The developers were responsible for also deploying their change. When you made a change that went through poor request review and it was ready to go, you would run the script, which would push this change out to production. Sometimes to tens hundreds of machines over a period anywhere from between three seconds for our website and for, as we got bigger, some of our backend messaging systems took sometimes 20, 40, 50 minutes to roll out.

But what was so cool about all of this is just how empowering it felt as a developer because now I'm not dependent on someone else to get my job done. And I think that's the key. In fact, I would probably say that that's a universal thing for developers, especially, but anybody. It's when you feel empowered to be able to do your job and deliver it end to end without waiting for anybody, without asking for all this help, without sitting there annoying someone to, "Hey, can you do that thing for me so I can get it to the next step." When you can take it end to end, that's your dream, because now you can accomplish what you want.

And I think for me and HipChat, that was the experience. Because we could write a feature, we could click a button, it goes out to production. It goes out to hundreds of thousands of people, almost instantly in some cases, some cases a little bit longer. But the point is that you control that whole process. If you wanted it to go faster, we had the ability to go into the deployment scripts and actually make that thing faster so we could create the environment that we wanted. And I think especially in the early days, that created a rate of cheat featured delivery, which I'd never experienced before, where you could be on Twitter and people were very vocal on Twitter as I believe they are still today. And they see something they don't like and they tweet, "Oh, what the hell?" And then all their followers, "Oh yeah, this is stupid. Why would anyone do this?" And I used to watch the Twitter feedback then.

So I would watch the Twitter and see these people complaining and I think, "Oh yeah, I could probably fix that." And I could go into the code, make the change, get someone to review it, push it out sometimes within ... especially if it was a website sometimes within 10, 20 minutes. And then I can go back on Twitter and say, "Yep, good point. I agree. I fixed it. The change is out in production now. You shouldn't hit it again." That level of responsiveness to a customer demand breeds a loyalty that nothing else will. Because it's one thing to want something and have a salesperson and support say, "Oh yeah, we're looking into it. Yes, it's on the roadmap." That's a common one. It's on the roadmap or "Oh yeah, we're going to get to that next quarter."

But if you can instead say, "You know what, you're right. I fixed it. And it's already been shipped out to production." That's exciting. That's exciting to deliver. That's exciting to experience as a customer, because your voice is being heard, changes are being made. That fast pace of delivery is something that you want to be a part of, because that's where things are happening. That's where needs are being met in real time, in a speed that you've never experienced before. And to me, that's what it's all about.

We could talk about developer happiness. We could talk about team efficiency. We could talk about metrics, but at the end of the day, it's about the customer experience. It's about having customers who aren't just satisfied with your product, but they're passionate about your product. They are excited about your product. They are huge fans of your product, telling everybody. That's the experience that you want to deliver. And I believe that getting developers involved in deploying code, that's how you make it happen.I didn't fully understand how things really should be until I joined HipChat years later in 2012. So HipChat was a tool that was like Slack. It was a messaging system. It pains me to say that because HipChat came first, Slack came later, but everybody knows about Slack and not ... whatever. Anyways, water under the bridge. The point is HipChat, a chat system. And this was a startup that Atlassian acquired. And I was one of the first Atlassian people to work with this team.

Related Content