Facebook

Designing growth and engagement systems across the Facebook app, spanning video, feed, birthdays, and notifications at billion-user scale.

Background

Facebook was where I learned how design operates at scale. I joined through two internships before returning full time, and across all of it the lesson kept compounding: at billion-user scale, the screen in front of you is only one layer of the problem.

My first internship was on Facebook Jobs, designing moments in the application flow that prompted job seekers to add stronger information before they applied. It was also my first lesson in how large product organizations break work down. The structure felt confusing at first: orgs, teams, workstreams, surfaces nested inside surfaces, and designers assigned to very specific parts of the app, but the reason became clear over time. At Facebook scale, progress usually comes from reducing a large ambiguous product problem into the smallest useful decision a team can align on, test, and ship.

My second internship was on live audio rooms, which launched on both mobile and web. I designed the listener-side flows on web for discovering audio rooms through notifications, story surfaces, and feed, along with consumption states like full-screen, in-feed, and miniplayer. It was my first serious encounter with prototyping as a communication tool. Motion, entry states, active speakers, and room transitions were difficult to convey with static mocks, so I started using Origami prototypes and video recordings to make interaction decisions tangible for engineering and product partners. That habit became one of the defining threads of my full-time work.

Live Audio Rooms prototype
Showing desktop prototype for the listener-side live audio room experience.
June 2021 · Launch coverageSource
Public launch coverage for Facebook Live Audio Rooms.

Notifications

My longest-running and most senior work was on notification systems, across two problems: improving the main notifications surface, and making sure people could be reached through notifications.

The first problem was the surface itself: how people scan, understand, dismiss, preview, and act on updates. I designed gesture and action patterns: gestures helped people manage notifications quickly, while quick actions let them respond without opening a full destination. Simplification ran through all of it: making the surface easier to scan while preserving the actions people actually needed.

The second problem was reachability, when and how to ask people to enable notifications. The core challenge was timing. A generic promotion feels like noise, but a prompt that connects to what someone is already doing can feel useful. I worked on both new contextual entry points and existing upsell moments that could be optimized to make the value of notifications clearer.

I also actively reviewed and governed notification requests from other teams. Many teams rely on notifications as an entry point, but users experience the result as a single surface. That review work meant using guidelines and product judgment to help teams decide what belonged on the surface, how it should behave, and whether it fit a simpler, more coherent whole. This is the clearest example of the systems thinking the rest of my work points at: owning the coherence of a surface that dozens of teams write into.

Notification permission prompt
Optimized notification permission prompt by using elements that reduce distraction and communicate the value of turning on notifications.
Contextual push upsell
Showing example of launched work encouraging users in app to turn on notifications. I also worked on similar upsells on other tabs and pages in the app.

Prototyping and influence

Prototyping started as a way to solve a communication problem and became one of my strongest tools for influence.

I first leaned into it because motion and interaction states were hard to communicate with static design. Over time it became a broader way to align people: show the transition, make the edge case tangible, compare alternatives, and let engineering and product partners see what was actually being proposed rather than imagine it. That shifted prototyping from a personal craft into a way of moving decisions forward.

It also became part of my influence beyond my own team. I helped create prototyping-culture artifacts, including a Prototyping Zine built in Framer to feature prototypers and encourage prototyping across the app. I explored AI-assisted code prototyping, including ways for designers to load real product data into prototypes, which let us build higher-fidelity prototypes and became a reference case for broader investment in richer, data-backed prototypes.

Product work across video, feed, and birthdays

Before and alongside notifications, I worked across three other surfaces. They looked different, but the underlying product question felt the same: when is the right moment to ask someone to take the next step, how do you make an entry point feel contextual instead of promotional, and how do separate teams with separate goals still add up to one coherent app?

On the Video web and off-platform team, the work was helping people move from lightweight or off-platform consumption into longer-term Facebook usage. The recurring question was the balance of value and friction: at what point has someone experienced enough value to make an informed decision about signing in, opening the app, or saving their state? The work spanned audits, experiment proposals, and upsell patterns, and I shipped experiences that made upsell prompts to open the app or to log in feel contextual. For a deeper dive, see Designing for web users on Facebook Video.

On Feed, I worked on social context, the signals that help someone understand why a piece of content is relevant through its connection to people they know. I shipped header signal and participation cue work on that surface. The strategic question was what should happen after a user sees social proof, and I studied competitor patterns and past experiments and proposed experiences that could move social context beyond passive display toward participation.

Because I had come from Video, I could carry context from one surface into another, find the wedge between surfaces, and shape the overlap so different goals still serve the user as one app.

Birthdays were a warmer version of the same systems problem. I worked on the experience overall: helping people say thank you afterward, schedule wishes for upcoming birthdays, personalize their own birthday, and use lower-effort creation formats. A birthday is one recurring social moment, but it touches notifications, feed, profile, and creation at once. Because it exists across surfaces, the lesson I learned was that a single social moment needs a shared model, or it splinters across the teams that own each piece.

Birthday countdown
A birthday surface for helping people celebrate and express themselves before the birthday moment, not only count down to it.
Contextual app entry and login on web
Encourage users to go into the app or log in on web browser for a better experience.

Reflection

The throughline across my Facebook work is that scale changes the job of design. At smaller scale, a designer can focus on the screen in front of them. At Facebook scale, the screen is one layer, and every decision sits inside product incentives, platform constraints, design systems, review processes, metrics, surface ownership, and user expectations built over years.

That environment taught me how to work a specific way: break ambiguous work into the smallest useful decision, find the wedge between surfaces instead of optimizing one in isolation, prototype when static mocks cannot carry the interaction, make work visible beyond the immediate team when an idea needs broader alignment, and design for one coherent product even when the organization is many teams with different goals. That is the scale side of my practice, and it is what I carry into building products of my own.