Case Study: Panther
- Industry: B2B SaaS, Security
- Team Size: 120
- Airplane Usage: 1000+ runs / week
Panther is a threat detection platform built for teams in the cloud. Teams use Panther to detect data breaches and keep their organizations safe.
In December of 2021, Panther raised $120M in Series B funding at a $1.4 billion-dollar valuation. They're used by Dropbox, Airtable, Circle, Coinbase, and many other companies, and use Airplane as their primary internal tooling platform.
Rapid growth led to a need for scalable internal tools
Over the last year and a half, Panther has grown from a handful of founding employees to 100+ employees across various departments from Sales to DevOps to Customer Success. The hyper-growth they faced in 2021 led to a need to build more quickly than ever. With that came a need for internal tools that scale.
One-off customer operations became increasingly painful with each new customer. Their engineering team was constantly running one-off scripts and queries to solve these issues. Panther knew they needed to find a way to free up developer bandwidth while still supporting customer asks that came in through sales, customer success, and solutions engineers.
This situation was not only time-consuming for the engineering team, but also painful and brittle. Running these ops scripts often required installing a bunch of different dependencies. They had to preinstall services directly onto machines, install specific Docker and Python dependencies, and build out a wiki to support knowledge storage. Since Panther's workflows had a number of scripts requiring AWS access, they would either need to give broad access to everyone who needed to run these scripts, or force a small subset of the engineering team to be the bottleneck for the whole organization.
This situation resulted in two significant blockers to Panther's growth:
- Organizational bottlenecks and frustration: Teams across the company were blocked on developers when it came to engineering-heavy operations. For example, the engineering team had CLI scripts for provisioning and de-provisioning accounts that sales and marketing relied on. And while sometimes the engineering team addressed these requests in 2 hours, other times it would take up to 3 days. This resulted in inconsistent turnaround times and customer dissatisfaction.
- Wasted developer time: A number of employees at Panther came from companies like Facebook and Airbnb with entire teams dedicated to building out beautiful internal tools. At Panther, where these tradeoffs were too high, there was no single source of truth for the company's internal operations. Developers would waste time figuring out what repo to look in and if they had the latest script, or they'd end up rewriting a script or query all together. Additionally, disruptions ended up being a huge time sink for engineers and caused further delays to product work.
Bridging these internal tooling gaps on their own would have been a significant investment–they would have had to turn a collection of one-off scripts, queries, and Notion docs into robust internal apps with UIs, permissions, approvals, notifications for long-running tasks, and more.
They didn't want to divide their team's focus between building the core product and building internal tools. Panther was facing increasing demands on both the product and customer fronts and started looking for an enterprise-grade third-party solution.
Retool didn't solve their internal tooling challenges
Panther first evaluated Retool as an option. However, there were a couple challenges that made it a poor fit for their use cases.
- Unneeded complexity: Panther was looking for a solution that reduced the complexity of making internal tools. Retool, while powerful, had so much potential for front-end customization that it could result in an inconsistent end user experience.
- Difficult to use: While Retool offered a lot of customizability, it wasn't easy to use. Panther needed a solution with fast time-to-value that was easy to spin up and required minimal maintenance rather than something that would take a lot of time set up correctly and support.
- Lack of support for long-running jobs: Panther's platform deals with large data scale. As a result, things like data migrations that could take multiple hours weren't feasible due to Retool's maximum 120-second timeout window. For example, a migration of Athena data to Snowflake might take upwards of 24 hours.
Airplane as the solution
Airplane solved the problems that Panther had with Retool. Joren McReynolds, VP of Engineering, started using Airplane with his team to automate some of the more manual tasks that customer-facing teams like sales and customer success would ping developers on. "With Airplane, we've created a consistent, reliable experience that saves time across our entire company."
- Fast time-to-value: Airplane was extremely easy for Panther to set up. It took just minutes to spin up their first task. Within days, engineers had transformed the most tedious repetitive operations into shareable Airplane tasks that non-engineers could use. Engineers were motivated to deploy their one-off scripts to Airplane because it turned a repetitive multi-hour operation into something that others could self-serve onto.
- Knowledge store: Prior to Airplane, it was time-consuming for developers to either locate or rewrite the same scripts and queries for non-engineering teams. Airplane's library now serves as a single source of truth for all the internal operations available to sales engineering, customer success, and other teams. Panther uses granular group-based permissions to ensure only the right people have access.
- Consistent, reliable results: Customer-facing individuals like CSMs are no longer blocked on developers to respond to customer requests. They're able to manage customer accounts and update free trials safely and immediately using Airplane. This provides customers with a reliable experience and Panther's non-developer teams with a self-service tool and no dependencies.
- Support for long-running jobs and schedules: Panther is able to complete DB migrations and configure timeout windows on a task-by-task basis. Using Airplane, they can kick off hours-long operations and get notified when they're complete and set certain operations to run on schedules. Airplane also allows Panther to set resource limits to ensure operations run safely.
Overall, Airplane has removed engineering bottlenecks at Panther and saves hours of developer and customer-facing team time by enabling teams across the company to perform previously engineering-only operations safely.
There are a number of ways in which Airplane has been valuable at Panther:
- Customer operations: Tasks and runbooks are the perfect solution for a number of Panther's customer and user management operations. This includes things that solutions or sales engineers would handle such as: modifying customer information, de-provisioning customers, and enabling custom features on customer accounts.
- Deployment pipeline: Panther also uses Airplane for engineering-specific use cases. They use Airplane to kick off a release candidate of their new version of Panther to their staging environment. Since Panther's data scale is so large, sometimes the data they take in can't get popped off and processed quickly enough resulting in a large queue. When this happens, they use Airplane to run re-queue operations.
- Reporting: Panther leverages Airplane's Slack integration for metric reporting. They have an Airplane task that runs and automatically reports the percentage of deployments that were successful to stakeholders in a configured Slack channel. This provides visibility around deployment statistics.
- Using Airplane alongside Notion: Panther's customer-facing teams store data about their customers directly in Notion–for example, whether a customer is using an on-premise or SaaS version of Panther. They then use Airplane to hit Notion's API directly to read and write data in Notion. They can pull in this customer context into the execution of Airplane tasks and also have the effects of those operations be reflected in Notion.
Today, Panther executes 500-1,000 runs per week across dozens of unique tasks and runbooks. "Airplane has made a massive difference in the day-to-day experience of our customer-facing teams, and our engineering team feels motivated to house their tools there because it saves them hours weekly."