Author Archives: Florence Poirel

This research intern worked with teams in two countries

Research happens at Google everyday, on many different teams throughout the company. Elena Kirilenko conducted a research internship with both the Chrome team in Paris and the Compression Research team in Zurich. She shares what it was like to intern virtually with teams across multiple countries, and how her internship led to publication of her research and open-sourced code focused on making the internet a faster place.

How did you first get interested in technology?

I’m from Moscow, where I graduated from high school, got a bachelor’s degree and am now doing a master's program in applied mathematics and Informatics. Computer science was my number-one passion starting in ninth grade. Since then I’ve explored different areas of computer science including backend, data science, natural language processing and frontend. My main interests are now machine learning and software engineering, although I’m always open to learning new technologies and picking up new skills.

What was it like to intern virtually?

It was quite hard and unusual in the beginning, as you can’t walk through the office, engage in personal conversations or go to the canteen with your coworkers. At first it was harder to communicate because messaging or video conferences could not replace a real conversation. 

However, when I got to know Google's culture and became more confident with my project, this problem totally disappeared because it became clear that each person in Google is really responsive and there is no need to be afraid to ask questions. 

Moreover, there were a lot of exciting activities you could participate in online, like sports  and dance classes, virtual lunches, games and speaker series.

What project was your internship focused on? 

Efficiently delivering Web applications is a hard problem to solve. Compression technologies play a crucial part in solving that problem, by reducing the size of the resources that need to be downloaded over a network. Web Bundles enable servers to avoid sending to the browser resources it previously downloaded, by only sending to parts of the bundle the browser doesn't have.

This is where my research fit in. I was working on achieving fast and efficient compression for WebBundle subsets with Google’s Brotli, a general-purpose compression algorithm. High-quality Brotli compression creates small files, but takes a lot of time and processing power. As a result, it’s only feasible to apply to content ahead of time, as opposed to compressing resources as they’re being sent to the browser. . 

Brotli compresses content by calculating artifacts about it (an artifact is a piece of information, like how the content should be divided for optimal encoding), and storing them in the compressed file. High-quality compression invests time and resources in calculating the ideal artifacts for the content, resulting in smaller files and faster compression rates. My project reused the ideal artifacts for an overarching piece of content when compressing just a subset of the same content, achieving both time and processing benefits compared to regular dynamic Brotli compression.

What was the outcome of your internship? 

My code has been fully integrated into a branch of Brotli and is now ready to be deployed by users at Google, or anywhere else! We also published a comprehensive design doc describing the work done and result we achieved. If you want to learn more, there is ablog post explaining it at a higher level.

What key skills have you gained from your time at Google?

During my internship I’ve learned a lot of new things about compression algorithms and Web Bundles, which I knew almost nothing about before. I also got a big experience in writing in C and found out many interesting tricks and things you can do there that I didn’t know about. Besides that, I learned how to present the work you’ve done, structure the documentation and how to write blog posts which people may find interesting and useful.

Another thing I picked up is to take initiative. Once I became confident with my project I developed the intuition on what will work and what probably won't. I wasn’t afraid to share my ideas with my host and co-host or even tried to experiment with them on my own.

Any advice for potential intern candidates?

Don’t hesitate to ask. It’s totally OK if you can’t understand the technology you don’t know. People at Google are really open to help you and it’s really important to ask them for help, otherwise you may spend hours or even days trying to figure out something instead of doing some great work. I think communication is one of the most important aspects that drives Google.

How Eurovision inspired a research intern’s project

Research happens at Google everyday, on many different embedded teams throughout the company. For example, Amit Moryossef developed a machine learning model for sign language detection while interning this year with our Language team in Zurich. Since our 2021 Research Internship applications opened this month, Amit chatted with us to discuss what his experience has been like.

How did you end up pursuing research around sign language processing?

After finishing college, I started a master’s degree in computer science at Bar-Ilan University. While I was there, I was introduced to deep learning, and to doing research. I worked on natural language processing, specifically looking at text generation and gender bias in machine translation. I planned for those years to be my final years in an academic setting, and then I’d go into the workforce.

Everything changed, surprisingly, after I watched the 2019 Eurovision Song Contest. They had sign-language interpretations of the songs. I realized how much of the world is not built to be accessible to the Deaf and hard of hearing communities, and this led to a bit of a shift in my plans.

Today I’m doing a PhD in computer science, working on sign language processing with the hope of making the world more accessible. This is also the topic of research I worked on at Google during my internship.

Why did you apply for an internship at Google? 

Google always seemed to me like a great place to work — a place that would have all of the resources I could ever need, both computationally and personally. I applied to Google with the honest belief that this is the best place for me to do research on what I am passionate about, and make that research available to everyone.

How did the ongoing pandemic affect your internship?

In March, I was still in denial that this would affect me, and I was hoping the internship would go as planned. In April, I received the message saying the internship would move to a virtual model which was initially disappointing on a personal level, but made sense as the world was going deeper into lockdown.

The remote nature of the internship introduced new challenges. Having a supportive manager and caring recruiter were some of the key factors for me in dealing with some of these challenges successfully—helping me get assistance with unfamiliar tools, fostering relationships with new colleagues and helping me to create and maintain a work-life balance.

What project was your internship focused on? 

My internship project was about sign language detection for video conferencing applications.  This task is simply defined as to detect when someone uses sign language on a video call, and set them as the current “speaker” of that call, just like a person using their voice would be. This work goes hand in hand with my PhD research—making the world more accessible to people who use sign language.

Maayan Gazuli, an Israeli Sign Language interpreter, sits in a chair and demonstrates the sign language detection system.

Maayan Gazuli, an Israeli Sign Language interpreter, demonstrates the sign language detection system.

What was the outcome of your internship? 

We designed the sign-language detection model and built an application that runs this on-device, and works with all video-conferencing applications. This means we empower signers to use whichever video conferencing applications they would like, and our system should work just as well.

We published and presented a long paper in the SLRTP workshop, as well as an academic demo and a Google AI blog post. You can try our experimental demo right now! By default, the demo acts as a sign language detector. The training code and models as well as the web demo source code is available on GitHub.

What impact has this internship experience had on your research?

I learned how to better communicate and work with folks who were previously unaware of my research and how to operate within a large organization (compared to academia).

My experience showed me the practical application of my research, and that it is possible to change the world for the better.