UX design intern on Files Go team, designing for Next Billion Users

Pic from  Google Play

Pic from Google Play

This past summer I was a UX design intern for Google. I interned on a file management app called Files Go (Now Google Files), designing for next billion users. Collaborated closely with the team, I researched, designed, and prototyped to craft a delightful user experience. I not only worked on my main project to design a new feature from scratch, but also spent time on side projects, like visual design and illustrations. Getting my hands dirty made me grow very fast as a mature designer.

Besides getting valuable design experience, I also had a clear vision of what kind of designer I want to be. My host Akhil sets an excellent example to me, from whom I understand that design is not only about crafting, but also about team-working. It is an art to always make design decisions that help the team to find the best way forward. Moreover, I realized how deeply I LOVE design. Whenever I am designing, I feel true happiness from the bottom of my heart. This then makes me realize how lucky I am. I am just so lucky to be able to do something I have a real passion for as my job. So I keep working harder to repay my luckiness.

However, due to NDA, I am unable to share any details until the project launches publicly, but here are some takeaways and valuable moments that I’d love to share, like the design mindsets that I developed, the practical tips that enabled me to move fast, and the soft skills that let me to work professionally.

Design Reflections


1. Bridging the cultural differences

Files Go is one of the products from the Next Billion Users team. We design for the new internet users in emerging markets. These users live in a culture far from where I live and think in a way completely different from mine. They face different problems every day, they have different attributes as users, and they speak different languages, but beyond these visible differences are the invisible different mindsets and the cultures, so I have to immerse myself into their world to understand how Files Go can serve a variety of users.


After we really understood the users, we then must ask ourselves how we can address these invisible cultural differences in our design. For example, users’ lack of awareness of common default patterns that we use in user interfaces could cause unexpected confusion. Here are some techniques I learned: do massive local competitive analysis, talk to people who are based in different countries, validate the assumptions very often, and test the design with the real users. Fortunately, the cross-country user researcher team at Google helped me to move fast during my internship and bridge the cultural difference on my design project.

2. Striving for simplicity

Every designer can solve problems, but only good designers simple solutions, which requires being smart and working hard.

When I came up with the first round of design concepts for my project, I did it in the standard way: I broke down the main problem into parts, found a solution to each, and then combined them. Though this approach did solve the problem, it was too complex and idealistic. When I got feedback, people smiled and had comments about my solutions like,  “They look good, but will users know how to use them?” This was a problem not only with the on-boarding process, but also with how to synthesize it with Files Go, in other words, how to align the overall concept with the users’ habits, and how to make using the product simple.

2. Simplicity0.png

One quote has inspired me:

“Simplicity is not about embracing minimalism as an aesthetic. It’s about questioning why you’re including certain elements, and it’s about understanding what is necessary.”

—— Jon Westenberg

After getting the feedback, I then focused on the essence of the problem and prioritized the most impactful tasks to design for the main use cases.

However, I wondered if all problems could be solved so simply, especially when I was designing for vastly different user groups and I still wanted to ensure inclusiveness. Thinking about this idea of simplicity led to my desire to solve complex problems in simple ways. I believe that for every problem, there should be some solutions that might be complex on the inside but appear simple on the outside.

3. Aligning to the product mission

When my project first kicked off, I was faced with lots of ambiguity. I didn’t know what features we needed and it was hard hard to make a balance between the design guidelines that we set. One reason was that the project was complex and tricky with diverse user groups and conflicting user needs. I tried hard to ensure the inclusiveness of my design solution. However, after a while, I realized that I had to make a compromise - I couldn’t design for everyone.

So how?

3. Product mission0.png

Making a compromise doesn’t mean losing a battle. The goal of doing it is to do what’s best for the team and the product to not only achieve the short term milestones but also hit the long-term goal. I need to build the product that is valuable and supports the ultimate product mission.

It sounds like a huge task right? However, the good thing is that designers working on a team. Talking to the PMs and other people on the team constantly helps me to know what user needs we really can meet and what needs we can’t. Prioritizing and cutting helped me to find a clear map for my design work.

4. Being creative

I always like trying out new things and getting new experiences as a designer. When it comes to design, I like to think outside out the box and view things from different angles. In the work, I always believe that one of the best values a designer can provide to the team is creativity, so I like to brainstorm a lot to come up with concepts that look cool and are different from the current ones. However, in my internship, after evaluating the concepts with PMs and Engineers, I realized that many cool concepts either are too hard to implement or require high learning cost for the users. Oftentimes, it turned out that the cool solutions didn’t work well, and the “boring” ones always won.

Then what does creativity really mean to the team? I’d say we should update the definition of creativity first:

4. creativity0.png

What I learned from my internship was that being creative doesn’t mean solving a problem in a unique way intentionally. Instead, I discovered that being creativity means solving a unique problem as simply as possible. Do not take a detour if you already know the route.


Move Fast

Practical tips

The internship is so short and to finish my project I had to move very fast. However, design is all about communication and finding a balance to move forward in the way that’s best for the team. You can’t just wall yourself off to design only to come out at to the end; It might seem like saving some time in the early stage, but then you’ll realize it takes much more time to reach an agreement later or the design will never be built.

There are two practical tips I learned from this summer to keep me moving fast:

1. Shoot for the moon and come down to earth

I reached out to get feedback from the team constantly. At the start, I would present many different design alternatives, not knowing which one would be better. After presenting several times, I found that actually no one knows the answer, not only experienced designers, even the users themselves. All they can do was giving opinions instead of the answer. Also, the alternatives I presented were too many and each seems doable but not perfect.I then realized that I should exercise my own judgment before pouring all my ideas to the team. As I was the designer who owns the design process and makes decisions, I need to narrow down first by myself.

So what did I do? I still brainstormed a lot and came up with divergent ideas, however, I only present three options to the team each round.

5. moon $ earth0.png

The first is the most ideal option for the users which meets all the design guidelines well but sometimes blue sky. The second one is the most interesting option. It can be crazy but fun. The last one is the safest option which I knew can be implemented easily and align to the current product pattern but compromised on the user experience to some extent. Then weigh all the feedback you received based on the design metrics, product missions, and the timeline.

Actually, it was usually the safest option be taken, but presenting other options is still valuable as we never know what we might actually be able to get. What’s more, if it’s only about the timeline and budget, it’s still important to mark what the ideal design is so that future versions still have something to aim for.

2. Unhappy path  

“What if A? Have you ever think about B?”

Users do not always flow the ideal path that you designed to them. It is an ability for a designer to cover as many edge cases as possible. Some of the cases are hard to be noticed without testing with users, but some are just about awareness. Here is the tip that I learned from my host Akhil (he learned it from Vince Speelman’s passage 3 years ago):

6. Nine states0.png

Think about those nine states while you are designing.

Nothing: “What happens before your feature shows up?”;

Loading: “What values you can provide while users waiting?”;

None: “What to show when there is no content in your component?”;

One: “ What if there’s only one item?”;

Some: “What should be the ideal state of your design?”;

Too many: “How to deal with the overload?”;

Incorrect: “How to inform your users about the error friendly?”;

Done: “Will it be an ‘aha’ moment when a user finishes a task?”.

Be professional

Soft skills

However, besides all the design mindsets and practical skills I learned here, one more important thing that I realized is: to be a rock star, you need to be a genius of collaboration and master soft skills.

1. Communication

I was encouraged to reach out to other designers Google-wide and by the end of this summer, I had finished one-on-ones with 60 Googlers with different roles across teams, which means I met at least one new person every weekday. I learned a lot from talking to those people and knowing their stories about how they became designers and how they ended up working for Google. They had fantastic stories which inspired me a lot. But here I’d want to talk more about how to communicate effectively with new people when everyone was super busy.


First, reach out early. People’s schedules can be super tight after Wednesday. So if you want to talk to someone, start asking for a time from Monday or a week before.Second, be prepared. Know who you’re going to talk with, their roles and teams. Look at their portfolios and passages if you can find any. Make a quick note with all the questions you want to ask and share with the person a day before. Google Keep is a good tool to do this work :) Third, tell them what you want clearly. Ask specific questions. Don’t kick around the bush. People are always happy to help and share their insights as long as they know what you need. And that saves time. Lastly, be helpful. Be thankful to people who shared their time to help you. Then think about what you can do to pay off. It can be hard as an intern to really provide some actual help, but opportunities can be created if you observe attentively. Nothing is too small to be done.

2. Global teamwork

Working at Google for next billion users means you need to collaborate in interdisciplinary and geographically widespread teams. As internet and video chats connect teams easily, dealing with different time zones can be such a pain, especially when working with the user researchers who are 12.5 hours ahead. One thing I learned was that: you can’t just wait for the response. Besides setting regular meeting times every week, always have plan A and plan B in case you can’t get feedback on time. Also, do very good storytelling on your documentation. Make your shared slides self-explainable to decrease the cost of communication.

3. Get feedbacks selectively

People LOVE giving advice but each person stands on a different angle: PM wants to gain user growth and Eng wants to build effectively. As a designer, my role is to advocate for user needs and find a balance between all the metrics. To find a balance and push the design to an agreement, I found that getting feedbacks needs to be skillful: empathize with people in different positions and think about the reasons behind. For example, when giving suggestions, it’s possible that an Eng just throws you a solution. Whether the solution is good or not, it doesn’t matter, empathizing the reason behind is more valuable. By asking why the Eng might tell you that a component can be reused or a current pattern can be easily applied in your design. So it’s actually all about technical feasibility. The solution provided can be useful, but taking technical feasibility into consideration, there can be more and better ones.  


Moments and thanks:

My summer internship at Google has been a memorable experience and I couldn’t have grown that much without the help of my super team:


I was surrounded by such talented and passionate people, many of whom always willing to help me to reach out to resources, show respect to my opinions, provide feedback to my work consistently, and insist on doing right things. I was so impressed.

Special thank for my super host Akhil Sehgal, who always smile and laugh a lot, offering me consistent and considerate help from the beginning to the end, even when he was super busy with his field trip in India. He really did PERFECT work as a host and set an excellent example of a designer that I want to be. I also want to show my thank to my co-host Koji, as a design lead on our team, he guided me to finish the side projects rapidly and encouraged me a lot during all the meetings & presentations. All my emotions are positive and quite overwhelming from the beginning to the end:


My first day


My last day


Presenting on the Chai Weds


Design Sprint


Clay Offsite