Airplane.dev 的终结
The end of Airplane.dev

原始链接: https://yolken.net/blog/end-of-airplanedev

一位软件工程师讲述了他们出售科技初创公司的历程,详细介绍了公司最初的成功、突然出现的问题以及最终的收购。 尽管他们对内部工具空间表现出了热情,并喜欢与才华横溢的同事一起学习,但由于对收购条款的不满以及整个过程缺乏透明度,他们最终拒绝了收购公司的工作机会。 不幸的是,这次出售导致客户失望,导致失去了经过大量努力建立起来的宝贵客户关系。 尽管如此,作者对他们在该软件公司的整体经历进行了积极的反思,并计划在未来参与建立另一家类似的初创公司。 他们的反思强调了处理即将发生的收购的替代策略,并强调了优先考虑长期客户关系的重要性。

根据上面的段落,针对 Airplane 的关闭,建议了内部应用程序的哪些替代方案(包括开源选项)?:“尽管我之前因性能问题而放弃了其中一些其他工具,但考虑到最近发生的事件,我 我现在正在仔细观察。” 这建议探索内部应用程序的替代方案。 一项建议是查看 https://visualdb。com/。 另一位读者问:“有人在数据库上构建了更好的 Repeato 吗?” Repeato 被认为与 Airplane 类似。 提到的其他选项包括 https://windmill。gr/ 和 http://retool。co/,两者都被描述为 SaaS 产品开发环境。 还推荐 Superblocks 和 Dropbase。 最后,读者指出,查看 Cron Atlas (https://cronatlas。com/) 似乎是合乎逻辑的,因为它在 Temporal 上添加了漂亮的镶边和功能。 作者还建议查看 https://gitlab。com/ops-ai/nomiconfig,它试图创建一套更完整的可重用配置配方,用于配置 Prometheus、Grafana 和 Alertmanager,以及 Kubernetes 的操作员。 或者,“也许可以有一个AcquiaHire”,建议客户对原来的公司失去信心(如果他们曾经有过的话!),并与收购陷入困境的公司的大公司联手,为所有相关人员带来更好的结果。 On another thread, another reader suggests moving away from SaaS solutions altogether and relying solely on open source alternatives or developing one's own solutions in house, mentioning Mapzen's closure and the ability to migrate off its relied upon API thanks to open licensing。 Overall, readers suggest investigating options such as https://super。so/ and https://www。nomiconfig。org/ or http://my。domain。com/: a domain specific application runtime and application framework to provide teams 具有独立开发的能力; 为团队提供标准库和插件; 通过运营商实现部署和管理(独立部署); and integrate tightly with the control plane of the cluster (Kube controller and Dex。sh)。 Readers ask questions regarding what alternatives for internal apps, including open-source options, are suggested in response to the shutter of Airplane。: Has anyone built a better Repeato atop a database? 还有,什么是
相关文章

原文

I worked at Airplane, an internal tooling startup, for nearly two years. Earlier this year, it was announced that the company was being acquired by Airtable and that the product would be shut down. In this blog post, I want to explain what happened from my perspective as a former employee.

Background

I joined Airplane in March of 2022 because I was excited by the internal tooling space and, after some time at Twilio, wanted to work at a smaller company.

For the first 16 months or so, it felt like the company was doing well. We were onboarding lots of new customers, we expanded the team from 12 people to more than 20, and there was a general sense of excitement about our prospects both internally and in conversations with users.

Personally, I was also pretty happy. Although I had had some negative interactions with the CTO, I really liked all of my other coworkers, the mission of the company, and the technologies that I got to use day-to-day. I felt like I was learning a lot as an engineer, and I was hopeful that the company would continue to expand and provide growth opportunities for me in the future.

Initial headwinds

In the summer of 2023, the company hit some headwinds. First, although we were still adding customers, our revenue growth rate had noticeably slowed down. From what I understand, this was a trend across the entire SaaS tooling space that wasn’t unique to Airplane, but it still hurt morale and made us less optimistic about the company’s near-term future.

In addition, people on the team started quitting. Up until that summer, we had had zero employee attrition. Then, within a three month period, we lost 4 engineers and the company’s head of growth. These colleagues had all been at the company for a while and all had legitimate reasons for resigning unrelated to the revenue slowdown (several, for instance, wanted to start their own companies), but the latter didn’t soften the blow. They were all well-respected and great at their jobs, so we were sad to see them go.

To top it all off, the CEO (who was also a co-founder) announced that he was leaving so that he could work on a personal, AI-related passion project. The CTO (the other co-founder) would be taking his place. His departure wasn’t a huge surprise- he had been very clearly burnt out and disengaged for months. But, it’s still never a good sign to lose the leader of your organization.

My colleagues and I were obviously upset by these developments, but we figured that the new CEO knew what he was doing and would successfully navigate us through.

Stabilization

By the fall of 2023, things had stabilized a bit. The employee attrition wave died down, and we added several new engineers and a new growth lead to the team. We also had some substantial product launches and signed two big, new enterprise customer deals. Our Q3 revenue numbers were strong, and we had new customers excited to sign with us in Q4.

In early November, we did a company retreat in Napa Valley to hang out together in-person and hack on various new product features. The CEO was a little less engaged than usual, but otherwise morale was high and there were no signs that anything was wrong.

Brewing trouble

After we got back from the retreat, we got an abrupt message from the CEO in our team’s Slack workspace. Effective immediately, we were winding down our hiring pipeline. We were also rescinding two engineering offers that we had just extended.

My colleagues and I knew that this was a bad sign. Rescinding offers is something that causes a lot of reputational harm and isn’t done casually. Companies generally only do this if they’re about to do layoffs or go through some sort of big transformation like an acquisition. The former didn’t make any sense, though, because we had lots of money in the bank (enough to last for many years at our current burn rate), had already slimmed the team down via voluntary attrition, and had an overflowing backlog of new features to work on. That left an acquisition as the most likely explanation.

Several people on the team confronted the CEO, but he denied that there was an acquisition brewing. Instead, he made vague statements about “figuring out the direction of the company” and potentially doing some sort of product pivot to reignite growth. He claimed that any update would be good news and that he’d make sure we were taken care of.

The announcement

On the morning of December 4, around 3 weeks after the new hire offers were rescinded, the CEO scheduled an all-hands for 1PM that day. He also sent out a Slack message that this was a very important meeting and that we should cancel other things if needed to be there. We knew that we would finally be getting answers about what was going on.

The CEO, who was presenting from his home in SF, started with his usual statement of Airplane’s mission, “We’re here because we believe that software is a force multiplier…”, but ended with the clause that we’d be continuing that mission as part of Airtable.

He then explained that the Airplane product would be shut down, but that most of us would be getting “extremely strong” offers from Airtable. However, we’d have to do interviews for leveling purposes, and the financial details wouldn’t be made available to us until later. This was a great outcome for us, he said, much better than the alternatives he had considered, so we should be happy. The goal was to wrap everything up before the holidays.

After the Zoom was turned off, our room in the NYC office was silent. While we were optimistic at the beginning when we heard about Airtable, the mood had clearly soured as we got more information. Basically, our product was being shut down, we’d have to interview for our new jobs, it was unclear what we’d be doing at the new company, and our stock was potentially worthless. It was also unclear why, exactly, we were doing this given that Airplane had many happy customers and tens of millions of dollars in the bank.

For the remainder of the day, we met 1:1 with the CEO to talk more about our personal situations. For me and the other engineers, the CEO told us that he enjoyed working with us and hoped that we’d continue at Airtable together. Our common stock was worth $0, but we’d be getting extra cash bonuses from Airtable to compensate. The exact details of our levels and roles were not known and would depend on the interviews to be done later in the week.

Based on these discussions, we put the pieces together and realized that this was an acqui-hire. Airtable wasn’t interested in our product, our technology, or our customers. They wanted our CEO to lead their new AI effort, and the rest of the company was baggage that would be accommodated to the minimum degree required. It was depressing for all of us.

Figuring out next steps

From this point forward, all regular work stopped. We continued supporting our existing customers (who didn’t yet know anything was happening), but there would be no more feature development and all conversations with prospective customers were cut off.

For the next week, we sat in the office doing interview prep and chatting with each other about our options.

I was personally not very excited about Airtable. I had interviewed there and gotten an offer back in 2019 but had decided at the time that it wasn’t a fit for me. Since then, the company had expanded greatly but then contracted abruptly via two large layoffs. Airtable’s headcount was about half of what it had been a year before, which seemed kind of depressing to me.

The interviews took place a week later and, thankfully, were fairly low stress. We were mostly asked about our previous experiences and projects. In my case, it was clear they were probing how high they would move me in the IC chain. My interviewers were interested in hearing about how I managed cross-company projects at the large companies on my resume as opposed to any of my technical work at Airplane.

Later that week, we got our Airtable offers. They were strong but definitely not as out-of-this-world as the CEO had promised. In addition to a base salary and equity, we were each offered a $50-75k signing bonus that would have to be paid back in full if we quit in the first year. We were given three business days to make a decision, and there would be no severance if we declined.

I said no, without much hesitation. As mentioned previously, I wasn’t excited about Airtable to begin with, and the whole acquisition process had left a sour taste in my mouth. In addition to shutting down the product and abandoning our customers, Airtable had never given us a product demo, detailed financial information about the company, or precise details on what we’d be working on aside from “AI-related features”. The whole process seemed like a rushed, disorganized mess, and I knew that there were better things out there.

Several of my colleagues came to a similar conclusion and also declined.

Winding down

On January 3, the acquisition and product shutdown was publicly announced. As expected, customers were shocked and upset. Many had been using Airplane for critical workflows within their organizations, and they now had to replace huge chunks of internal tooling before the final shutoff on March 1. The CEO tried to steer people to alternatives like windmill.dev and Retool, but neither of these is a drop-in replacement for Airplane. Even if users found replacement tools, it would take a lot of time and effort for them to do the migration.

Two days later was our last day of payroll. Our email and Slack access was shut off, and we were no longer Airplane employees. We were never given any termination paperwork to sign, and there were no formal goodbyes. The company had disintegrated with a sad whisper.

Why?

We were never told directly why the company was acquired under such unfavorable terms. Contrary to what one would logically think in these circumstances, we didn’t run out of money or even come close to that. In fact, we had tens of millions of dollars in the bank (allowing for years of runway) in addition to a great team, relatively happy customers, low churn, and solid revenue growth.

When pressed in 1:1 conversations, the CEO said that he didn’t see a path to significantly higher revenue. He claimed we would have to do a significant product pivot and/or change our sales strategy to grow beyond a particular point, and that this transformation would be risky and hard. It was easier to quit while we were ahead, shut everything down, and work on something new.

To me and others, it seemed like the CEO was tired of the startup grind and simply giving up. Ever since his fellow co-founder quit, he’d been running both the technical and go-to-market sides of the company, and it was clearly very draining. We felt that he wanted a less stressful position with a lower risk payday, and this kind of deal was the best way to achieve that.

Final thoughts

Overall, I had a good experience at Airplane and up until the last month I was pretty happy. In looking back, the thing that upsets me the most is not the loss of money (I never put much value on my stock options anyways) but rather the multitude of customer relationships that were flushed down the drain by abandoning the product. Many of these customers had personally stuck their necks out within their organizations to drive adoption of Airplane, and had spent hundreds of hours migrating critical, internal workflows to our product. Now, they were being thrown under the bus.

Were there any alternatives to what the CEO did? I obviously don’t know all the details of the offers that the CEO considered, but I feel like he could have either: (1) held out for an acquisition offer that involved keeping the product running, (2) separately sold the Airplane technology to another entity that would continue developing it, or (3) open-sourced the product. In the end, he unilaterally chose an outcome that I believe was not the best for our product or our customers, and it was sad that we all had to go along with it.

Building Airplane was a great experience, and I hope to work at a small startup again at some point in my career. For now, though, I’m going to decompress at a bigger company.

联系我们 contact @ memedata.com