Since joining the Greylock investing team in 2020, Christine Kim has been exploring how technology can be applied to a range of industry sectors to improve daily life.

Prior to joining Greylock, Christine spent five years at Uber, where she led the product team that launched and scaled Uber Eats. The app started as a small pilot project that quickly caught on, and Uber Eats now generates $50 billion in revenue annually. The pandemic further solidified Uber Eats as a critical component of Uber’s business, as the app accelerated demand for food delivery. Eats was also key to sustaining Uber’s growth as its core rides business shut down overnight.

The experience taught Christine several valuable lessons that are widely applicable to the product development process, and which she references regularly in her work as a partner to early-stage founders at Greylock.

From platforms to empower the creator economy to tools to streamline ecommerce, Christine is driven by a Gen Z-mindset to reimagining everyday infrastructure. Her interests span B2B and consumer marketplaces as well as health, gaming, cryptocurrency, and decentralized internet. She works closely with Mike Duboe and David Thacker, and was involved with Greylock’s recent Series C investment into flexible staffing platform Instawork, as well as several unannounced seed and Series A investments.

She recently joined the Greymatter podcast to talk about her experience at Uber Eats, and has outlined the key takeaways in the essay below. You can listen to the podcast here.

5 Lessons Learned at Uber

In my 5+ years at Uber, I was an engineer and product manager, working in both the Rides and Eats businesses. During my time at Uber, the company grew from 2k to 25k employees, launched Uber Eats, changed CEOs, went public, and laid off nearly 20% of our workforce in the midst of the pandemic.

Through the highlights and crises, from witnessing a product flop to seeing it become revived as a successful business, to pulling out of an international market at just the right moment, here are some key learnings I extracted from that eventful five-year run.

1. Start Small

Don’t be afraid to scope down your MVP (minimum viable product) to the smallest features possible that will still allow you to test product market fit.

Many people know Uber’s core business first started as a black car service before expanding to the peer-to-peer model. But few recall the humble, hacky beginnings of Uber Eats.

I was a product lead for Eats from 2018-2020, which is a $50b business for Uber today. But Eats started very small. The division’s trajectory was the result of several deliberate, often difficult decisions, but all done in the goal of building a new, enduring business unit.

In summer of 2014, the team built a scrappy MVP for Uber Eats (then called “Uber Fresh”) to test food delivery. We had already built a two-sided marketplace between drivers <> riders and wanted to validate demand for food delivery within our existing rider base, as well as drivers’ willingness to transport “things” in addition to people. If this test succeeded, we would figure out how to build out the network of restaurants down the line.

To launch a food delivery pilot as quickly as possible, we assembled a skunkworks team and scoped the project down to the absolute minimum requirements:

  • Launch in 1 city. We chose LA because it was on the west coast (GrubHub was already popular in east coast cities) and it was easier for drivers to make temporary stops to pickup/dropoff food
  • Only offer a few dishes a day, no custom orders
  • Pre-order prep food ahead of time. Pre-load into drivers’ cars
  • Only available on weekdays during lunch hours
  • Users meet drivers and pick up food
  • Ship within the existing Rides app by hacking the vehicle selection toggle

Since several services such as GrubHub and Postmates were already in operation, we didn’t have to wonder whether people wanted on-demand food delivery. That was established.

There were, however, many second-order questions that we were able to test through our pilot. For example, we had hypothesized for some time that people wanted more elevated food. We tested different cuisines, how long people were willing to wait, and what price they were willing to pay.

We validated that there was strong demand for items outside of the traditional pizza and Chinese takeout categories. Users were ordering salads, ramen, steaks, smoothies, and desserts. As we added more hours and days, we identified different power user behaviors like work lunches on weekdays or late night munchies on the weekends. We tested delivery times/distances and found that ~20 minutes was the ideal limit to maximize restaurant choice while minimizing delivery wait time.

In 2015, after successfully testing additional markets for about a year, we rebranded Uber Fresh to Uber Eats, launched the service as a standalone app, and allowed users to order any item on the menu from dozens of restaurants at any time. This felt like a huge deal then, but now these are expected conveniences of any on-demand food delivery service.

Today, Eats generates $50b revenue annually and it’s hard to imagine its origins as a feature within the Rides app. No one could have predicted what a success Eats would become. The pandemic further bolstered Eats as a critical component of Uber’s business by accelerating adoption of food delivery and continuing to sustain Uber’s growth even as its core rides business shut down overnight.

Uber Eats experience in 2014 vs. 2021

2. Revisit old ideas

Long before Eats was around, we had a vision that Uber could provide the logistical infrastructure to move not only people, but also “things” — packages, retail purchases, groceries, etc. We tested multiple concepts in pursuit of this vision. Some succeeded (see: Eats), while others failed.

One of these failures was the UberRush API, which was launched in 2014. The API allowed businesses and merchants to send almost any item to other businesses or customers by requesting an Uber for delivery. We envisioned local use cases like corner shops fulfilling grocery orders or flower shops delivering bouquets to customers, and lined up key partnerships with CVS and Walmart.

Despite our earnest efforts, the program was largely a flop and we deprecated the product a few years later.

Yet, despite shutting down the logistics business, the vision for an UberEverything still lived on. In 2020, things came full circle when I led an initiative to launch new delivery verticals in the Eats app. With our focus on grocers, florists, and convenience stores, it felt like UberRush all over again — but this time, we did things differently.

Some key learnings from the first iteration were:

  1. Merchants weren’t equipped with the right technical teams to implement API-based solutions.
  2. Many merchants did not feel the “need” to offer delivery for their products.

When rebooting this initiative, we changed the solution by building support for these businesses within our Eats experience. The pandemic’s effect on retail changed merchants’ willingness to consider delivery options. This solution modification and environmental change gave our original vision new legs and was a good lesson to constantly revisit old ideas with a fresh perspective.

Today this born-again delivery of “things” – known as “Go Anywhere, Get Anything” – is now a $3b GMV business.

3. Know When to Land Grab

There are times when a company should be “heads down” building and other times when it’s best to focus on a land grab against competitors. This is especially true for markets with a first-mover advantage.

As my colleague Reid Hoffman has discussed in a Greymatter podcast about assessing the competitive landscape, a good leader should know how to identify these times and mobilize the company effectively.

For Uber, 2011-2015 was our “land grab” moment where we geographically expanded our core rides product very aggressively. (From 2015 onwards, we started to invest in more product innovation – Eats, Autonomous, Freight, etc).

While many companies spend several years getting the business model to work on their home turf, Uber was very quick to expand internationally. We began testing Uber in Paris in 2011, just a few months after officially launching in San Francisco. Paris was just the 4th city to launch (after SF, NYC, Chicago) and forced us to develop an international operations playbook very early on when we were still a tiny Series A startup.

This decision forced us to solve all sorts of challenges – localization, regulatory, distributed teams – from the very beginning and was key to providing a foundation for our subsequent international expansion. The years following (2012-2015) were very focused on international expansion as we launched in Europe, Canada, Mexico, India, and South Africa.

When I joined in 2015, China was our top priority. Uber was already live in 300 cities but China was one of the largest greenfield expansion opportunities left for the company. At the time, we were doing more than 100,000 trips per day in about a dozen Chinese cities and wanted to launch 100 more cities over the next year (China has 100 cities with populations over 1 million whereas the US has 10). My team and I were tasked with integrating Uber into Baidu Maps, a strategic partnership that paved the way for us in China.

However, China would soon teach us a lesson on when to retreat, too. Which leads us to…

4. Be Prepared to Cut Your Losses

While you should always play to win, it is important to have a realistic take on the situation. Be prepared to retreat if you can walk away with a better deal.

As I mentioned previously, my team and I built the integration between Uber and Baidu which was an important milestone in our expansion to China. It was critical to ensure we had the backing of a large Chinese company like Baidu as, at the time, we were up against Tencent-backed Didi and Alibaba-backed Kuaidi.

However, after a few years of intense competition and consolidation (Didi and Kuaidi merged in 2015) we sold the Uber China business to Didi in exchange for an 18% equity stake in the merged business. While at the time, “exiting China” was largely viewed as a failure, this turned out to be a valuable decision as Uber’s stake in Didi is now worth $8B.

While the end result was ultimately in our favor, that initial “failure” was also infinitely valuable because it was so instructive. We learned how to develop a playbook for evaluating and assessing international markets more broadly. Over time, we developed a framework for international markets and divided them into 3 buckets:

Tier 1 Regions where we are first or second in market share (for example,
ridesharing business in the US)
Tier 2 Regions where we are not currently Tier 1, but we have a path to reach that
with sustainable growth/burn rate and within a reasonable time horizon. For
example, the Latin American food and grocery business is dominated by
Colombia-based Rappi. However, Didi and Uber Eats are competing for the #2
spot and we continue to invest in this area as it is one of our fastest
growing regions.
Tier 3 Regions where we are not Tier 1 and do not see a sustainable path to reach.
These markets tend to have strong existing competitors (Zomato in India) or
very strict regulation in place against Uber (South Korea) that are unlikely
to change.

This framework is very simple, but offers a logical way to rank which regions to prioritize: In Tier 1 markets, we invested in retention and engagement. We often exited or sold Tier 3 markets, which allowed us to free up resources to focus on acquisition and growth in critical Tier 2 markets.

Understanding when to make compromises and let certain projects go is a critical learning for any company.

And isn’t just applicable to market expansion. The concept applies to almost all points along the product development cycle.

My team and I experienced this time and again when ensuring all business lines were aligned when we were working to simplify the app (which I go into at greater detail in the next section). Before we could unify all parts of the app under a single platform, we had to make some significant tradeoffs.

For example, adding an Eats CTA to the Rides homescreen had a negative impact on ridesharing’s conversion rate. Ultimately, this was an executive-level decision — teams not only agreed on a tradeoff between Rides and Eats, but also defined a clear ratio for us to stay accountable (e.g. X% growth in new Eats orders was worth a Y% decline in rides).

5. Keep it Simple

An early Uber mantra was that you could “get a ride with the push of a button.” This mindset around simplicity was a driving force behind everything we built.

We wanted Uber to feel like a magical moment. Simply enter in a few details and – voila! – a car just shows up. Under the hood, there was a complex engine optimizing the driver match, price, navigation — and it was important to abstract that away from the user experience.

One of my last initiatives was to embed the Uber Eats experience within our core Rides app. As Uber’s portfolio of products matured, we felt that it was important to have a unified experience and single starting point for all our business lines — rides, food delivery, scooters and bikes, groceries, and even public transit.

How did this work internally? At the foundational level, most of Uber’s products were already built on top of shared technologies. We built accounts, profiles, wallets/payments, customer support in a way so that it was shared and consistent across all products. However, as business lines developed and grew on their own paths, there were also many features like subscriptions or loyalty rewards that could have been shared but only worked in one setting.

There were efforts to integrate these systems so we could launch platform features like a subscription pass that worked for all of Uber’s products. At the application layer, we leveraged webviews (ie. Uber Eats website launched inside the Rides app) which was the fastest way to integrate without massively impacting our app binary size.

Uber app

Conclusion: Embrace Your Own Challenge Story

Leading a product team during a period of major expansion was among the most instructive experiences in my career. Many of these overarching lessons may seem pretty obvious in hindsight, but I don’t think I would have truly understood what they looked like in practice unless I had lived through them. And, as you’ll notice, almost all of them were learned the hard way. We had to start Uber Eats small because we didn’t have a choice. I wouldn’t have known how to revisit old ideas unless those ideas hadn’t previously failed. Learning when to aggressively expand and when to humbly retreat requires taking risks and also letting go of ideas and features you may have worked hard on (and loved).

As I work with early-stage founders and their teams today, the overarching idea I hope to impart is to never get too comfortable with success. Whenever I meet founders that have companies that have weathered their own tough times – unsuccessful product launches, inability to penetrate a specific market, and, of course, the extraordinary financial and societal impact of the pandemic – I’m more inspired to work with them than those who haven’t experienced challenges (or failures). It’s great when there’s a success story, but I love it even more when a founder has challenge story, and you can sense that they have that grit to get through it.


Christine Kim

Christine invests in the next generation of vertical software companies and marketplaces.

visually hidden