QIAOPANG.COM · SELECTED ESSAYS (2013–2026) · 260 ESSAYSBrowse Chronologically (2013 → 2026) ↗
QiaoPang · Programmers LifeSelected Essays · Systems, Craft & Agentic Era
Timeline ↗

Farewell to Tubi: Three Stories I Told

Farewell to Tubi: Three Stories I Told

Night rain has settled the dust; dawn clouds pierce the fading dark; the landscape quietly promises that the season of flowers is set. — Yan Jidao, Treading on Grass (Tasha Xing)

Farewell to Tubi: Three Stories I Told

This was a WeChat Moments post from March 23. After a night of rain, the AT&T Arena in the morning looked like a lotus rising from water—beautiful, bright-eyed, alluring. Walking to the office, I felt conflicted, because I was finally about to tell my boss that I planned to leave at the end of April.

Yes: after that trip to Seattle in early March, I had already made up my mind to say farewell to Tubi—reluctantly, very reluctantly—and throw myself into blockchain technology. The reason I waited three weeks to confess was that we were in the middle of migrating our data center, and I did not want to shake morale or delay the project again. Fortunately, the migration in the early hours of the 22nd went smoothly enough, and the stone hanging over my heart finally dropped.

For me, this was an extraordinarily difficult decision. From every angle, Tubi was enjoying the best period of its life: our personalization engine was performing beyond expectations, our content was getting better and better, our service was stable, and the data-center migration—mainly Infrastructure as Code—had laid the foundation for our infrastructure for two or three years or more. Sales were blooming: after several consecutive years of more than twofold growth, we were entering a new, more explosive inflection point. Even the first quarter, historically our weakest, turned out to be the best quarterly revenue in company history. Even setting aside this year’s breakout, at the previous pace of roughly twofold annual growth, within three to five years we could expect to reap the fruit.

Meanwhile, cryptocurrency—impossible to avoid if you want to do blockchain—had just passed through the booming 2017 of “build high towers and feast guests.” As Laozi put it, “When a thing reaches its prime, it begins to age,” and it had started to decline. In 2018, Bitcoin had already fallen nearly by half from its peak; talk of the tower collapsing was not exactly pessimistic. So from the standpoint of timing, my entry did not look great.

“Are you SERIOUS?” That was the first reaction from my bosses, Marios and Farhad, after their shock. But once I had made the decision, it was a serious one. For a stubborn Aquarius like me, once such a decision has been discussed and settled with family—mainly my wife—what remains for friends, colleagues, and bosses is simply to give an account. A few months ago, Uncle Li wrote an article about Zou Shenglong, full of bitterness, saying: “By middle age, true sincerity comes down to two words: account for it.” I increasingly feel the weight of those two words.

My bosses tried every means to keep me. After two failed attempts, and after I returned from a business trip to Beijing, they even offered, at no small cost, a package I almost should not have refused. I still politely declined. I was grateful, but I told them that a startup has to fight to the death over the KPIs we have agreed on; no individual or team should float outside them and enjoy special privileges. We are not Microsoft. At this stage, we do not need a research-oriented team that only grazes and produces no milk.

While they were still struggling over how to keep me, I spent a week closing out my work. I wrote a manuscript of SWOT analyses for each member of the China team, and completed the goals and initial curriculum for the planned engineering bootcamp—an important project that would benefit Tubi’s future and allow Tubi to produce a steady stream of qualified engineers.

Finally, this Monday, two weeks after I first raised my resignation, we reached consensus. I spent an entire day talking with the U.S. team, the China team members who were traveling in the U.S., and the China team still in Beijing, waving goodbye one by one. Starting at ten on Monday morning, I talked with each person, almost continuously repeating answers to roughly the same questions: Why? Where are you going? What will you do? What happens to us? What happens to product? What happens to the China team? How do we move forward? I talked until 11:30 that night, after the last person on the China team finished.

Then on Tuesday—the day before yesterday—at our routine all-hands meeting, Farhad made the announcement. He said many kind things about me, and they nearly brought tears to my eyes. Then he invited me onstage to say something.

I had prepared three stories. These three stories were for my colleagues, and also for myself. I hope that when you read this article, you can take away a little something too.

Serendipity

The first story is about how I met Tubi. The beautiful, sexy word serendipity—I wrote about it in “It Was Meant to Be.” At that time I had received my O1 visa and formally joined Tubi; I was riding high. This is roughly what I said—some parts I prepared but did not deliver:

In early 2015, I set foot on American soil. Soon I met Haofei. He was a smart young man who often came to my home and discussed with me the various problems Tubi was encountering in production. He successfully sparked my curiosity about a startup like Tubi. When, that July, he excitedly told me that Tubi was recruiting a VP of Engineering and asked whether I wanted to try, I agreed almost without hesitation. I met the company’s founders, Farhad and Tom, and met the team one by one. Although we were mutually drawn to each other, the visa problem stood in the way. I was on an L1 visa and could not change jobs. Farhad and Tom showed tremendous patience and sincerity: securing an O1 visa for me would take at least three months and had only about a 50% chance of success, yet they were willing to take that risk and wait. In the end, I got what I hoped for, received the visa, joined Tubi in November, and wrote the article “It Was Meant to Be.” At the time, quite a few of my friends in the United States were surprised. They downloaded the Tubi TV app and told me: this company’s app is terrible, the movies and shows are terrible, there isn’t a single one I want to watch—why would you join a company like this?

This is how I answered:

“I talked deeply with the founders. I think Tubi does two things well, so it will certainly succeed: 1) The founders clearly understand the importance of data. Our app really is terrible, and the backend is even more atrocious—one API took nearly 10 seconds to return a result. Yet beneath such a poor product there was already a complete data collection and processing pipeline—even if no one knew how to use that data better. 2) Beneath such a poor system, the company still had solid, growing revenue. So this is a business, a good business. And engineering has no black magic. As long as we have the right architecture, the right people, and the right methodology, with time everything will improve. The lesson Tuke Circle taught me was that no matter how great the engineering, without a business, you cannot survive long enough to reach the day when you can truly grow. Tubi, by contrast, had almost everything ready; all that was missing was the east wind.”

Fortunately, with everyone’s combined efforts, over the course of more than two years, Tubi reached where it is today. Our service is getting faster and faster; our 95th-percentile response time is measured in milliseconds, some even in microseconds. Our content is advancing by leaps and bounds, and we now have quality films from major studios. And our revenue—as everyone has seen—just came through the best quarter in our history in Q1.

These have been an unforgettable two and a half years, and also the most important two and a half years of my personal growth. I am deeply grateful to Tubi for letting me experience all of this.

Believe

The second story is about belief. I told it to the team, but really I was telling it to myself too.

Originally I had planned to tell the NetScreen story. I had previously read Tong Jian and Chen Huailin’s accounts of NetScreen’s extraordinary early years. Beyond the hardships of starting a company, the idea that success depends on human effort, and the principle of never letting a customer’s problem sit overnight, my biggest takeaway was this passage—I do not remember the exact wording: We were a third-rate company made up of second-rate engineers, and we beat a first-rate company, Cisco. We made hardware firewalls happen by sheer force, because we believed it could be done, and because, as first-generation technical immigrants, if this did not work, we did not have much of a fallback. I wanted to use the NetScreen story to discuss how belief is a self-fulfilling prophecy, but because I would be telling it to people outside the networking world, there were too many bits of knowledge and details to explain. So onstage I told a story I have told countless times, one that inspires me every time I tell it: Roger Bannister and the four-minute mile.

If you have heard Tal Ben-Shahar’s positive psychology, this will be familiar. This is roughly what I said—some parts slipped my mind in the excitement:

Decades ago, running a mile in under four minutes was considered impossible. Many top athletes tried, failed, tried, failed. Even when they came very close to four minutes, no one broke through, so a four-minute mile was considered the limit of human capability. Scientists and biologists even tried, on various occasions, to prove it. Roger Bannister, a doctoral student at Cambridge, was deeply skeptical of this so-called limit: if there is a limit, why is it exactly a round number? Why not 3:59.48? So he trained himself and tried to break this supposed limit. He tried and failed, year after year. Finally, at a track meet, he ran under four minutes. The whole world erupted—front pages everywhere recorded this heroic feat.

But the story had only just begun. Just one week after he broke the record, an Australian athlete pushed it even further. After that, other athletes succeeded in breaking four minutes as well. After he broke the spell, more than a dozen athletes accomplished the same thing within a year.

It is astonishing: they were the same athletes, and their training methods had not fundamentally changed. The wish they had previously been unable to fulfill was now easily achieved after Roger Bannister did it. In a short time, they had not become better physically, but their thinking changed from “this is absolutely impossible” to “this actually happened, so I can do it too.” When you believe you can accomplish something, you will always, subjectively, find different methods, and keep trying and improving until it is done.

At Tubi, we also went through moments of self-doubt. We once had a product manager who, after deeply researching and analyzing our retention, concluded that we simply could not retain users—that after about three to six months, new users would churn out almost entirely. If a company several years old cannot retain users, then product/market fit must be a problem; we needed to re-examine our product direction, pivot in time, and find the point of product/market fit.

We had a heated debate over this view. We all agreed that our retention had problems, but we did not believe it was a product/market fit problem. We firmly believed our direction was correct, and that the problem lay in product and engineering. So we made retention our most important KPI and continuously optimized it at the product and engineering levels—for engineering, that meant constantly improving performance, raising quality, and reducing crash rates. Eventually, our retention gradually improved, and everything became better.

If we had accepted our fate at that moment and given up looking for a solution, we would never have lasted until the dawn we see today.

Believe is a self-fulfilling prophecy.

Time

My third story is about time. It comes from my own experience.

First, let me ask everyone a question: What is time? To me, time is a measurement from a cause to a result.

People always ask me: why do you have so much time? You spend almost four hours a day commuting, you need to spend at least some time with two children, you manage a local team and a team in China, you write a lot of code, you work on your own side projects, and somehow you still find time to write articles.

This is how I answer: because time—especially free time—is so scarce for me that I have to make use of every bit of it. When something seems rare, you cherish it especially and therefore use it well.

My third story comes from a conversation with my daughter after a bedtime story. It happened just a few days ago.

That night, I had finished reading her a story as usual. She asked me some questions—I have completely forgotten what they were now. But my brain must have been kicked by a donkey, because this is how I answered her: the average life expectancy for Chinese men is about 73. Dad has already lived 36 years, so I have only 37 years left to be with you. By the time you are 18, I will have only 24 years left with you. She was stunned for a moment, then burst into tears, crying and saying: Daddy, I hope you can live a million years. I spent an extra half hour that night soothing her to sleep.

Back in my study, I realized that this was a completely new perspective on time and life. Life really is very short.

Life really is very short—very finite. If you want to learn Elixir, you had better start now. If you have unresolved bugs, fight with them. Once you recognize how short life is, you can always squeeze in time for the things you have been putting off, the things you meant to get to slowly. More important, you will realize that you are the master of your own time—like the grocery-store owner tells old Jake in The Shawshank Redemption: if you want to pee, go pee; you don’t need my permission. Yes, you do not need to wait for someone else’s order to do something. At Tubi, we have far too many unsolved problems; you can act immediately, and you don’t have to waste a day because no task has been assigned to you. Like me, your time at Tubi is actually very limited. I have 13.5 working days left; you may have 250 working days—one year’s worth—or 500, or 1,000, or even 3,000. No matter how many, it is not infinity. If you truly see this, you can always contribute more to the team than you do now. You will work harder and solve problems. If you plant that cause, the rest—the result, whether money, status, experience, or ability—being a trailing factor, will eventually catch up with the footsteps of time.

MORE IN Leadership & Career

Further Reading in This Column

View all essays in “Leadership & Career” →

The Programmer's Meltdown

After enduring the 'unsafe shitstorm,' actix-web's maintainer pulled the top-ranked Rust framework and walked away from open source—a story of maintainer burnout and the hidden cost of demanding that volunteers reshape their work for everyone else.

Book Next Chronicles (2013–2020)2,451 chars · 5 min read

Nana the Intern

When it comes to interns, beyond learning ability, I ask for one thing: a long enough runway. By "long enough" I mean at least two or three months — anything shorter and they leave before contributing anything of value, clutching a glowing evaluation form. Nana's story is an exception worth studying.

程序人生 (2015–2019)4,528 chars · 10 min read

ArcBlock at One Year

One year since trading the Bay Area for Washington State: a reflection on the winding road that built ArcBlock — its Forge framework, its bet on application chains, and the choices that led here.

Book Next Chronicles (2013–2020)6,593 chars · 15 min read