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 - Files Go, designing for next billion users. Collaborated closely with the team, I researched, designed, and prototyped a lot to craft a delightful user experience. I learned a lot from my internship project and from my host Akhil - who is an amazing designer and my model now ;)

Besides having a clear vision of what kind of designer I want to be, I realized how deeply I LOVE design during this summer. Whenever I realized that I am designing something, I feel true happiness from the bottom of my heart. It makes me then realize how lucky I am. I am super lucky to be able to do something I have a passion for as my job. So I keep working harder to repay my luckiness.

During my summer at Google, I not only worked on my main project to design a new feature from scratch but also worked on 20% projects. Getting my hands dirty made me grow fast as a professional designer.

Unfortunately, due to NDA, I am unable to share any specifics until the project launches publicly, but here are some takeaways and valuable moments that I’d love to share. I will highlight them in three parts below:  Design Reflections - mindset, Move Fast - practical tips and Be Professional - soft skills.

Design Reflections


1. Bridge the cultural differences

Files Go is one of the products on the Next Billion Users team. We design for new internet users in emerging markets. It was very challenging for me as they are people far away and completely different from me. They face different problems every day, they have different attributes as users, and they speak different languages... but all those are just visible distinctions, beyond them are the different mindsets and the cultures - there can be a huge difference between two cultures, so I have to immerse myself to achieve real understanding.


When it comes to design, even though using some default patterns, users of a different culture may react to them in a way you didn’t expect. So how can I address cultural characteristics in my design? Here are some techniques I learned: do massive local competitive analysis, talk to people who based in the different countries, validate your hypothesis very often, and test your design with real users. Thanks to the cross-country user researchers and the UX writer on my team, they helped me to move fast and bridge the cultural difference on my design project.

2. Strive for simplicity

Every designer can solve problems, but only good designers simplify solutions. It’s always easy to solve a problem by coming up with a complex solution, however, it takes effort and smartness to make it simple.

When I came up with the first round of design concepts for my project, I did it as usual: I broke down the main problem into parts, gave a solution to each, and then combined them together. Though it does solve the problem, it’s too complex and sort of blue sky. When getting feedbacks, people smiled: “They look good, but... will users know how to use it?” It’s not only the problem about on-boarding process, but how to synthesize it with the current product, align it to the user habit, and make it simple.

2. Simplicity0.png

“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

I then focus on the essence of the problem and prioritized the main tasks to redesign the experience for the main use cases. However, I am wondering: Can all the problems be solved simply? What if I am designing for vastly different user groups and I still want to ensure the inclusiveness?

Then here comes the product mission which I am going to talk later. Attaching closely to the mission and consider the long-term goal, I believe that there should always be some solutions that might complex inside but simple outside for every problem.

3. Align to the product mission

When my project first kicked off, I was faced with some ambiguity. I didn’t know what features we needed and felt hard to make a balance between the design guidelines that we set later. This was compounded by the fact that the project was complex and tricky with diverse user groups and contrary user needs. I tried really hard to ensure the inclusiveness. However, after a while, I realized that I have to make a compromise - I can’t design for everyone.

So how?

3. Product mission0.png

Making compromise doesn’t mean you ‘lose’. The goal of doing it is to do what’s best for the team and the product - not only the short term milestones but also the long-term goal. The product needs to be built to be valuable and supports the ultimate product mission. The good thing is that you work on a team. Talking to the PMs and other people on the team constantly helps me to know what user needs do we really need to solve and for others, even though they look severe, I have to let go of something.

4. Creativity?

I always like trying out new things and getting new experiences. When it comes to design, I like to jump out of the box and view things from different angles. I believe that one of the best values a designer can provide to the team is ‘creativity’. So I brainstormed a lot to come up with concepts that are ‘creative’ and completely different from the current solutions intentionally. However, after evaluating all those concepts with PMs and Engs, later on, I realized that many cool concepts either are too hard to be implemented or require high learning cost for the users. The ‘creative’ solutions didn’t work well and finally, the ‘boring’ solution won.

4. creativity0.png

So, do designers still need to advocate for creativity? I’d say absolutely yes, but the definition of creativity should be updated. What I learned from my internship is: creativity is not to solve a problem in a unique way intentionally but to solve a unique problem that has never been solved perfectly. It is possible that the solution at the end might be ‘boring’ and already be used by other products, but as long as it can really solve the new problem and fit the specific context, then it’s still a creative and good one.


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 different 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. International 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