Tag Archives: students

My Path to Google – Beyza Bozbey, Software Engineer


Welcome to the 44th installment of our blog series “My Path to Google.” These are real stories from Googlers, interns, and alumni highlighting how they got to Google, what their roles are like, and even some tips on how to prepare for interviews.

Today’s post is all about Beyza Bozbey. Read on!

Editor’s note: Beyza speaks about her experience participating in Google’s longest running coding competition, Code Jam. The 2020 online qualification round is happening this Friday, April 3. If you would like to register,  you can do so at g.co/codejam.

Beyza posing on the Brooklyn bridge.

Can you tell us a bit about yourself?

I was born and raised in Istanbul, Turkey. In high school, I participated in a special program that prepared a small number of students for the Informatics Olympiad computer science competition. I was the only woman in the program from my high school. When I learned programming and algorithms, I discovered my passion for Computer Science. After I finished two years of college in Istanbul, I transferred to the University of Southern California in Los Angeles where I studied Computer Science. During college, I participated in robotics and fashion clubs and did an internship at a fashion tech startup company which was a great experience for me to combine my programming skills with my interest in fashion. 

Outside of work, I love traveling, following fashion trends, and watching movies and TV shows — especially supernatural ones. I'm a huge Marvel fan and I once camped out to get into a panel at San Diego Comic-Con. 


Beyza posing in glasses and a cape.

What’s your role at Google?

I'm a Software Engineer on the YouTube Comments team. I've been working on the backend side of a new project about the comments section. What I love the most about it is that everyday is a challenge and it never gets boring. When I create a new feature or fix a bug, it is truly amazing to see that the impact reaches thousands of users around the globe. This is absolutely what makes me get out of bed every morning. Also, Google has an incredible amount of resources, therefore learning at Google is a never ending journey.


Beyza posing in front of YouTube sign at her office.

You’ve participated in a few Google coding competitions, can you tell us more about that?

I’ve participated in both Google Code Jam (Google’s longest running coding competitions for individuals) and Hash Code (Google’s team coding competition). I didn’t realize it at the time, but the types of questions I really enjoyed during the Informatics Olympiad competition were very similar to Google coding competition questions. My first Google competition was Hash Code — when I heard about it, I was so excited. I found two friends from college and convinced them to join. While the problems were a little advanced for our level, it was fun to work together and brainstorm in order to solve the questions.

Code Jam registration is open now — any advice to those thinking about getting involved?
Definitely sign up! You don’t have to know everything about coding competitions already. The UI is simple and it’s also really fun to see other people solving a question. When I see that others have solved a question, I think, “if they solved it, I can solve it too!” It’s encouraging.

Has participating in Google's Coding Competitions affected your path to becoming an engineer at Google?
Yes! I started to realize that I was developing a lot of great skills while doing the coding competitions. Code Jam was a similar practice and environment to a coding interview, making it fun and useful at the same time!

Beyza sitting inside a giant "G" statue.


Can you tell us about your decision to enter the Google application process? 
After I learned programming in high school, I wanted to learn more about how Google Search works. As a high school student in Turkey, working at Google was like an impossible dream for me. Then I heard that someone who graduated from my high school started working at Google and that inspired me. I realized that it was an attainable goal, so I decided to apply. However, my application wasn't accepted and I couldn't get an interview. One year after my internship application got rejected, a recruiter contacted me and asked if I'd be interested in interviewing for another internship. I was super excited and nervous, but during that time, I was trying to adapt to moving to a new country (the USA) and transferring to a new school (USC), and unfortunately, I couldn't pass the interviews. Fast forward two years and two more attempts at interviewing and I got a full-time offer. Do not give up if you don't get it your first (or second or third) try!


Beyza in front of the Golden Gate Bridge.

What do you wish you’d known when you started the process? 
I wish I had known Google's interview process better before my first interview. I remember that I was so nervous that I couldn't even understand the question. I should have asked some clarifying questions and talked about my thought process.

Do you have any tips you’d like to share with aspiring Googlers? 
LeetCode was super helpful, but sometimes it makes you lazy to check edge cases. You can submit your solution with just one click and if it fails, it's so easy to find out which edge case caused the failure since the website shows you the input already. However, in a real interview, you walk through your solution by hand. You have to find the edge cases on your own and which input might break your solution. Therefore, I highly suggest aspiring Googlers code on a piece of paper and practice walking through your solution by hand. You can also pair with a friend and practice interviewing ... and sign up for Google's coding competitions!

Google Summer of Code 2020 now open for student applications!

If you’re a university student and want to sharpen your software development skills while doing good for the open source community, check out Google Summer of Code (GSoC) 2020! This will be our 16th year of GSoC!

We are now accepting student applications for our program that introduces university students from around the world to open source software communities, as well as our enthusiastic and generous community of mentors. For three months students code from the comfort of their homes (the program is entirely online!) and receive stipends based on the successful completion of their project milestones.

Past participants say the real-world experience that GSoC provides honed their technical skills, boosted their confidence, expanded their professional network, and enhanced their resume, all while making them better developers.

Interested students can submit proposals on the program site between now and Tuesday, March 31, 2020 at 18:00 UTC.

While many students began preparing in February when we announced the 200 participating open source organizations, it’s not too late for you to start! The first step is to browse the list of organizations and look for project ideas that appeal to you. Next, reach out to the organization to introduce yourself and determine if your skills and interests are a good fit. Since spots are limited, we recommend writing a strong proposal and submitting a draft early so you can communicate with the organization and get their feedback to increase your odds of being selected.

You can learn more about how to prepare by watching the video below and checking out the Student Guide and Advice for Students.



You can find more information on our website, including a full timeline of important dates. We also highly recommend reviewing the FAQ and Program Rules.

Remember to submit your proposals early as you only have until Tuesday, March 31 at 18:00 UTC. Good luck to all who apply!

By Stephanie Taylor, Google Open Source

My Path to Google – Juan Angustia, Visual Designer

Welcome to the 43rd installment of our blog series “My Path to Google.” These are real stories from Googlers, interns, and alumni highlighting how they got to Google, what their roles are like, and even some tips on how to prepare for interviews.

Today’s post is all about Juan Angustia. Read on!



Can you tell us a bit about yourself?
I was born and raised in Constanza, a small town surrounded by beautiful mountains in the Dominican Republic. In the year 2004, before I ever dreamed of joining Google, I went to college at the Universidad Autónoma de Santo Domingo (UASD) to study Advertising with a focus on Graphic Design. However, I did not finish my degree because the school did not offer classes that sparked my specific interests. Instead, I decided to continue teaching myself the things that I loved. 

At that time, a career in UI or UX didn’t exist. You either studied Graphic Design or Advertising, which I was never passionate about. I wanted to work on something that people could interact or play with, something more exciting. This is why I started to design websites. 




During and before I started college, Google was my main source of knowledge. I attribute 80% of the knowledge I obtained to the information I found on Google. Back in the day, I remember walking miles from home to the only computer lab in town. This was the only place where I was able to get internet access. Every day after lunch I took my central processing unit (CPU) and walked to the lab. I connected my CPU and my first thought was to open Google.com to search for tutorials on how to use Photoshop or how to create digital designs.

When I’m not working, I love to dance. It is a form of mediation for me, and also a way to express and share my Latino/Caribbean vibes with others. Sometimes at the office, I dance and work at the same time. I also love to travel and work on personal projects. I take photos and make videos like my short film El Camino. These hobbies to me are a way to find inspiration outside of my day to day work. If you want to know more, feel free to check out my Medium and Instagram: @jcagarcia.


As a Dominican I have music on my blood, it is part of our culture. Merengue and Bachata are some of our typical music. This is a tambora (drum), a popular Dominican instrument.

What’s your role at Google?

I’m a Visual Designer on the Google Duo team in our Seattle/Kirkland office. I’m blessed to be part of this team. The culture, the people, and the vibes are the things that I like the most.. A cool project of mine was recently launched, the new Duo precall interface for the web, which you can check out. You can even submit feedback if you have ideas to help improve the experience for our users.


Duo team event in Playa Vista, Los Angeles. My design for the event is on the screen.

What inspires you to come in every day?

I’ve been working at Google for almost a year, and every day is like living a dream. I feel grateful for the opportunity that I have. Working with very talented people with diverse backgrounds (professional and cultural), and with products that touch billions of people's lives around the world is one of the most exciting things that I could mention. In other words, I work with an incredibly diverse group of people who are some of the smartest, most creative, and humble people I've ever met. I learn something new every time I’m in a meeting.
The team at an offsite event.
Can you tell us about your decision to enter the process? 
The first time that I applied I was rejected for lack of qualifications. Four years later, I was contacted again. I still don’t know how to describe the feeling  when I read the subject line in that email,  “Hello from Google.” It was a mixture of excitement and fear. It was a difficult decision to make, because at that time I had a stable position at my former job in Philadelphia. I also had just bought an apartment a year prior that I absolutely loved. 

Also, I didn’t know if I was ready for the job, or to move cross country and leave my mother behind in Philadelphia whom just three years prior I had brought to the U.S. to fulfill her “American Dream.”


Checking out the Android statue garden.
How did the recruitment process go for you? 
After the first initial call, I was able to move on to the second round of calls, which would be with a designer who would evaluate my experience.The interview process was very friendly and comfortable. Another detail that I noticed from the first moment, was the high attention to detail and how important the recruiter made me feel throughout the process. 

The more nerve-racking but also exciting part was the design exercise, where I was to show my design skills and process. To make a long story short, it took me two weeks to plan, idealize, design, and prepare my project 

Much to my relief, a week after I turned in my design I received a call from the recruiter who was working with me during the interview process. They told me that I had passed the exercise and that I would proceed with an in-person interview at the Google headquarters in Mountain View, California. A shoutout to the excellent attention I received from the recruiter who assisted me throughout this entire process.

The whole interview process took me about three months — months filled with mixed emotions. Finally, after spending months of waiting to complete the entire interview process and contemplating whether I should accept the opportunity to join Google, I decided to accept the position of Visual Designer in Seattle with the Google Duo team.



What do you wish you’d known when you started the process? 
I would have liked to know more about Google’s internal environment and culture, something that I learned after joining  the company and by reading “How Google Works” by Eric Schmidt  & Jonathan Rosenberg. I highly recommend reading this book, this helped me immensely to understand Google’s culture, the company’s history and how people manage their projects and time.


At my Noogler orientation, showing how proud I am to have come from the small town of Constanza, Dominican Republic to Google.
Can you tell us about the resources you used to prepare for your interview or role?
I read a lot about Google Material Design, reached out to friends who work at Google, and also watched videos on YouTube about how to prepare for a Google interviews.


Do you have any tips you’d like to share with aspiring Googlers?
I would recommend that they identify what it is that they are good at and focus on the things that they are passionate about. Never stop dreaming. Continue to pursue your dreams and channel your passion by doing the things you truly love. This is undoubtedly what will help you conquer any opportunity.


Me with a little guitar that I made using a vinegar bottle, piece of wood and fishing lines. (1996).


Google’s Computer Science Summer Institute (CSSI) applications are open!

Opportunities are live for Google's 2020 Computer Science Summer Institute (CSSI) — available to graduating high school seniors in the US or Canada. Learn more about this program below and apply before February 28!

Students from CSSI 2019

What

Google's Computer Science Summer Institute (CSSI) is a three-week introduction to computer science (CS) for graduating high school seniors with a passion for technology — especially students from historically underrepresented groups in the field.

The program includes:

  • A specially designed project-based curriculum to help prepare for your CS studies.
  • Daily development sessions to help you prepare for future job opportunities.
  • An opportunity to interact directly with Google engineers.
  • Exposure and insight into Google’s internship programs and technical career opportunities.

Where & When
We offer several options for CSSI depending on where you may be attending school. You can find more details on location here. Most of our programs run from June - August 2020.



Who

Any high school senior who plans to attend a four year institution in the US or Canada, has a passion for technology, and intends to enroll in a computer science, computer engineering, software engineering, or related department for the 2020-2021 academic year.

Why
Google is committed to increasing the enrollment and retention of students in the field of computer science. CSSI is not your average summer camp. It's an intensive, interactive, hands-on, and fun program that seeks to inspire the tech leaders and innovators of tomorrow by supporting the study of computer science, software engineering, and other closely-related subjects.


Students running through CSSI exercises on a computer.

How
You’ll need to complete a general application, which includes a transcript and two essay questions. You’ll also be asked to complete an online challenge at the beginning of March. Visit the Google CSSI page for more information and to apply.

The application deadline is Friday, February 28 at 11:59 pm PST. Final decisions will be announced in early May.

Questions?

Give us a shout at [email protected]

Solve a Google engineering challenge in Hash Code 2020

Want to solve a Google-inspired engineering problem? Want to meet other developers? Want a chance to visit a Google office? Well good news! Hash Code, Google’s team programming competition, is back for 2020!

This is the 7th edition of Hash Code, and while the competition has grown over the years, one thing has stayed the same: its focus on real-world problems that can be solved with technology. In the past, developers have put their heads together to tackle challenges focused on YouTube, self-driving cars, compiling code at Google scale, and more! We asked one of the founding Hash Code engineers, Przemek Pietrzkiewicz, to share his favorite past challenges :

Przemek on stage at a Hash Code world finals.

1. Routing Street View cars, Hash Code 2014
"One of my favorites has to be the first ever Hash Code problem. In this challenge, teams were given a description of a city (the actual data set was an approximate representation of Paris) and asked to schedule itineraries for a fleet of Street View’s image-capturing cars.The objective was to photograph every street in the city as quickly as possible. Since this was the first Hash Code problem, it set the example for those to follow: it was open-ended, challenging, and inspired by Google software engineering — some of my colleagues at Google France worked on this very problem around the same time!"

2. Directing Loon balloons, Final Round, Hash Code 2015
"In this problem, teams had to route Google’s connectivity-providing balloons in order to provide internet coverage to users around the world. This is tricky because these balloons can’t move on their own. While they can control their altitude, they are actually moved by winds in different layers of the atmosphere. I loved this problem because it was fun to generate the data sets — we had to learn about wind and weather, as well as find software libraries that would let us generate pseudo-random, realistic-looking wind maps."

3. Creating a photo slideshow, Online Qualification Round, Hash Code 2019
"This problem tasked teams with arranging a set of photos into an engaging photo slideshow. The Google Home Hub is a “smart display” — among its many features, it serves as a photo frame, displaying photos from your personal collection in a never-ending slideshow. In addition to showing landscape (horizontal) photos, the device can also find interesting pairs of portrait (vertical) photos and combine them together on a single slide. I’m an avid user of this product and thought it was a neat idea for a Hash Code challenge. I’m really happy we used it!"
Hash Code participants during the finals.

Interested in tackling a challenge like these? Then head over to g.co/hashcode now to register for the Online Qualification Round on February 20. For this round, your team can participate from wherever you’d like, including from a Hash Code hub near you (remember our hub post from last month?). Top teams from the Online Qualification Round will be invited to the World Finals at Google Ireland in April. And if you don’t have a team yet, don’t worry! You can register today and find a team later using our Facebook group. We hope this year’s challenge will be one of your favorites! 

Solve a Google engineering challenge in Hash Code 2020

Want to solve a Google-inspired engineering problem? Want to meet other developers? Want a chance to visit a Google office? Well good news! Hash Code, Google’s team programming competition, is back for 2020!

This is the 7th edition of Hash Code, and while the competition has grown over the years, one thing has stayed the same: its focus on real-world problems that can be solved with technology. In the past, developers have put their heads together to tackle challenges focused on YouTube, self-driving cars, compiling code at Google scale, and more! We asked one of the founding Hash Code engineers, Przemek Pietrzkiewicz, to share his favorite past challenges :

Przemek on stage at a Hash Code world finals.

1. Routing Street View cars, Hash Code 2014
"One of my favorites has to be the first ever Hash Code problem. In this challenge, teams were given a description of a city (the actual data set was an approximate representation of Paris) and asked to schedule itineraries for a fleet of Street View’s image-capturing cars.The objective was to photograph every street in the city as quickly as possible. Since this was the first Hash Code problem, it set the example for those to follow: it was open-ended, challenging, and inspired by Google software engineering — some of my colleagues at Google France worked on this very problem around the same time!"

2. Directing Loon balloons, Final Round, Hash Code 2015
"In this problem, teams had to route Google’s connectivity-providing balloons in order to provide internet coverage to users around the world. This is tricky because these balloons can’t move on their own. While they can control their altitude, they are actually moved by winds in different layers of the atmosphere. I loved this problem because it was fun to generate the data sets — we had to learn about wind and weather, as well as find software libraries that would let us generate pseudo-random, realistic-looking wind maps."

3. Creating a photo slideshow, Online Qualification Round, Hash Code 2019
"This problem tasked teams with arranging a set of photos into an engaging photo slideshow. The Google Home Hub is a “smart display” — among its many features, it serves as a photo frame, displaying photos from your personal collection in a never-ending slideshow. In addition to showing landscape (horizontal) photos, the device can also find interesting pairs of portrait (vertical) photos and combine them together on a single slide. I’m an avid user of this product and thought it was a neat idea for a Hash Code challenge. I’m really happy we used it!"
Hash Code participants during the finals.

Interested in tackling a challenge like these? Then head over to g.co/hashcode now to register for the Online Qualification Round on February 20. For this round, your team can participate from wherever you’d like, including from a Hash Code hub near you (remember our hub post from last month?). Top teams from the Online Qualification Round will be invited to the World Finals at Google Ireland in April. And if you don’t have a team yet, don’t worry! You can register today and find a team later using our Facebook group. We hope this year’s challenge will be one of your favorites! 

My Path to Google – Nada Elawad, Software Engineer

Welcome to the 42nd installment of our blog series “My Path to Google.” These are real stories from Googlers, interns, and alumni highlighting how they got to Google, what their roles are like, and even some tips on how to prepare for interviews.

Today’s post is all about Nada Elawad. Read on!

What’s your role at Google?
I am a Software Engineer at YouTube Knowledge, which is the part of YouTube that focuses on building a platform for classifiers and features that increase satisfaction and support our responsibility to viewers, creators and society.


What I like most about it is how I can see the impact we are making on the world in actual measurable numbers. Also, at YouTube, we get to be in touch with creators (who have thousands and millions of subscribers). These creators have some of the loudest voices in our society today.
Nada at Google Zürich shortly after joining Google.
Can you tell us a bit about yourself?
I was born and raised in Cairo, Egypt. I received a Bachelor's degree in Computer Science from Ain Shams University. During college and before joining Google, I developed a passion for competitive programming that really made my years in college much more interesting. That passion I owe to the ACM (Association for Computing Machinery) community at my university, which was very challenging, yet fun, and pushed me forward.

On the leisure side, I love 3D Puzzles, video games, boats, and electric micromobility vehicles. I am also a huge fan of F.R.I.E.N.D.S and Tarantino movies.

What inspires you to come in every day?
What I like most about Google is how much they care about diversity and inclusion, and how much they care about their employees in general, from providing resources for them to learn and grow to making sure they are having fun and are happy at work.

From a user perspective, what I like most is how they keep all kinds of users from all places and backgrounds in mind when designing or launching a new product, and the way they always act on a global scale, so that everyone can use their products.
Nada conducts a fireside chat with Google Senior Fellow Jeff Dean at the opening of our new Engineering office in Paris.
Can you tell us about your decision to enter the process?
During college, Google was always that magical place that everyone talked about. It was very famous for being the coolest place to work and also the hardest to get into, which made it seem like the recruiting process would be very difficult. 

I had applied for every intern position during my first two years at college, and I was not at all confident I'd get a chance—I didn't at first. My first successful step towards Google was when I applied to attend Inside Look in Zürich, an event that gives university students an inside view at working as a Software Engineer at Google. My application was accepted, but unfortunately my visa was rejected a week before the event. 


Nada at the Googleplex in Mountain View, CA.



How did the recruitment process go for you?
As I was about to start my senior year of college, I was contacted by a Google recruiter following my previous visa rejection, to ask if I would be interested in applying for a full-time position this time — I definitely would! 

Due to travel issues, my recruiter worked with me to conduct the interviews online, for which I was very grateful, and yet worried it might not go as well as if it was onsite. However, my recruiter was amazingly reassuring. I decided to go ahead with my interviews online during final exams of my last semester. A week later I received the most incredible news—and two things got marked off my to-do list: (1) Travel and (2) Get a job at Google.

Nada relocated from Cairo to Google Paris!
What do you wish you’d known when you started the process?
I wish I had known that Google is not just looking for code-geniuses. Interviewers don’t expect you to go in and solve everything optimally in the first few minutes because that’s not how real problems are solved, but they do care about your thought process, how you approach a problem with a simple solution and move to a better, more optimal solution. This would have made me worry much less about getting everything right during the interviews and increased my confidence during the process.


Can you tell us about the resources you used to prepare for your interview or role?
I mainly used online judges, like CodeForces and TopCoder, on a daily basis to keep a problem-solving mindset. I refreshed my knowledge of data structures and algorithms using various blogs and online resources about getting hired at Google. These helped me get an overview of what I should focus on and not get overwhelmed by all the things I didn’t know. 

Since I had to do my interviews online I mainly used Pramp to practice more effective communication. Also, I remember reading almost every question about working at Google and their recruitment process on Quora, which gave me a sufficiently comprehensive idea of every step along the way.


Nada at the FIFA World Cup semi finals, which she attended after working on a project related to the World Cup.
Do you have any tips you’d like to share with aspiring Googlers?
Take your time honing your problem-solving skills. Keep an open mind, as Google is a fast-growing, changing, and flexible place, where you can definitely find something to work on that interests you. Don't get discouraged if you don’t make it at first; many great Googlers didn’t get the job on their first few tries.


Bring Hash Code to your university this February

Calling all student leaders! Want to host a fun, technical event for developers at your university this February? Maybe we can help.
Hash Code is Google’s team programming competition and is back for another year of challenging developers to tackle engineering challenges inspired by real Google products and problems. Previous challenges have ranged from optimizing video streaming on YouTube to scheduling rides for self-driving cars. The 2020 Online Qualification Round will take place on February 20. From there, top teams will be invited to Google Ireland in April to face off in the Final Round.

How can you get involved? Registration to compete in Hash Code opens in early January, but you can sign up to organize a hub at g.co/hashcode right now! You might be wondering...what exactly is a hub? Hubs are volunteer-organized meetups where teams from the same university, office, or programming club can come together to compete in the Online Qualification Round. Last year, more than 700 hubs were organized by developer communities around the world!
Why host a hub at your university?
  1. Hubs add extra excitement to the competition. We’ll create a separate scoreboard for your hub, so your hub’s teams can see how they stack up against each other. You can also tune in to the Hash Code livestream from your hub and listen together as the challenge is shared and the results are announced.
  2. Hubs are a great way to connect with other developers. Hash Code offers technical Google content that is suitable for developers of all skill levels. Whether you’re looking to grow a developer community at your university, or run an event for a well-established Computer Science club or society, there is something for everyone in a Hash Code challenge (see all past challenges here).
  3. Fun! Sure Hash Code is a competition, but it’s also about having fun...and what’s more fun than tackling a challenge alongside friends?


Learn more and apply to host a hub today at g.co/hashcode. We’ll see you again in early January when we open registration.

Getting to know a research intern: Paul Rubenstein

Research teams are embedded all throughout Google, allowing our discoveries to affect billions of users each day. From creating experiments and prototyping implementations to designing new architectures, our team members and interns work on real-world problems including artificial intelligence, data mining, natural language processing, hardware and software performance analysis, improving compilers for mobile platforms, as well as core search and much more.

Google offers a variety of opportunities for students who wish to gain industry experience. Through our Getting to know a research intern series, we provide a glimpse into some of these opportunities as well as the impactful projects research students at Google work on. Today we’re featuring Paul Rubenstein, from the University of Cambridge.
Tell us about yourself and your research topic. How did you end up working in this area?
I first studied math at the University of Cambridge and went on to get masters degrees in computational biology and machine learning. I then joined the Cambridge-Tuebingen PhD program where I am now in my final year. In the first two years of my PhD, I worked mostly on theoretical aspects of causal inference. Generally, causal inference is about learning causal structure in the world from a mixture of observational data (passive observation of the world) and interventional data (where you perform experiments and see what happens).

In the second half of my PhD, I’ve been working on  representation learning (where one tries to learn lower dimensional features of high dimensional inputs such as images that are useful for transferring to other tasks), generative modelling, disentanglement, and some learning theory. Representation learning has been the broad topic of my research internship at Google.
This is your second internship at Google. Why did you apply the first time, and why did you decide to come back? 
I applied for my first internship because I was interested to see how machine learning is used and developed in an industrial context. I was really impressed by several things about both my team and Google generally: the incredible infrastructure and computational resources, the plethora of interesting problems with practical impact, that academic publishing is encouraged, and that Google is generally a great place to go to work each day.

For these reasons and more, I decided to apply for a second internship. This year, I was with the Brain team in Zurich, focusing on fundamental machine learning research. Being on this team is as close as I imagine it gets to being in an academic lab while in industry — people have a lot of freedom in choosing their research topic and writing papers and having a research impact is the main goal, yet there are several advantages over my experience of academia. The level of software engineering skill (and presence of dedicated software engineers collaborating on the projects) lead to shared code bases that enable prototyping and experimenting at large scale much more easily and quickly than in typical academic labs. These factors, combined with a more collaborative atmosphere, lead to the undertaking of larger scale, potentially more impactful projects.

What project was your internship focused on? What was the outcome of your research? 
In the first half of the internship, I worked on understanding the theoretical underpinnings of some recently proposed representation learning algorithms. This line of research led to a research paper On Mutual Information for Representation Learning which is currently under submission at the International Conference on Learning Representations (ICLR), one of the top machine learning conferences. In the second half, I worked on new algorithms for representation learning. This work is ongoing, and the resulting paper hasn’t been published yet.
Did you write your own code? What advice do you have for future interns?
Yes. Coding at Google is a little different than what I was used to in academia in two main ways. The first is that a lot of code is shared, and as a result, good software engineering practices are followed! This also results in larger code-bases that are a lot more complex than are typical in my PhD. The second is that you have access to a large amount of cutting-edge computational resources. This means that it is possible to run very large scale experiments.

My advice to future interns is that once you’ve started, there are many Google-specific things that have to be learned, so when you inevitably get stuck on something, the best thing to do is to ask someone for help. Asking questions is encouraged because it is the fastest way to improve your productivity and thus the productivity of your team!

What key skills have you gained from your time at Google? What impact has this internship experience had on your research?
My software engineering skills have definitely improved a lot as a result of working here. I’ve also learned a lot about how organisations and teams can be structured and managed in order to be most productive. I have learned a great deal about areas of research that I hadn’t worked in before the internship, and I hope to continue my research in these areas after my internship ends. The exposure to good software engineering practices has had a big impact in that it has facilitated my research in more practical areas involving lots of coding, in contrast to the more theoretical research I did earlier in my PhD.
Looking back on your experiences now: Why should a PhD student apply for an internship at Google? Any advice to offer?
My main reasons to do an internship at Google:

You will be exposed to very interesting problems that you may not see elsewhere.
You will work with and learn from colleagues who are experts in their fields.
I may have mentioned this once or twice already, your software engineering skills will improve a lot!
It’s incredible the amount you can achieve and learn in a 3-4 month internship at Google.

In order to prepare for coding interviews, I recommend the Cracking the Coding Interview book (though some chapters might not be relevant). I typed out my solutions in a Google doc to match the real interview experience as closely as possible. For more practice questions, there are many websites that have libraries of example coding interview questions, you can find many of them on Google's Tech Dev Guide.

To prepare for a research interview, I recommend practicing talking about your research at a high level to those that might know only the basics of your area. You should also review the basics of machine learning and deep learning, e.g. be able to explain basic concepts such as empirical risk minimization/generalisation/overfitting, common architectures (MLPs/convolutions,) and training techniques (SGD/momentum/Adam).

Google Code-in 2019 Contest for Teenagers

Today is the start of the 10th consecutive year of the Google Code-in (GCI) contest for teens. We anticipate this being the biggest contest yet!

The Basics

What is Google Code-in?
Our global, online contest introducing students to open source development. The contest runs for seven weeks until January 23, 2020.

Who can register?
Pre-university students ages 13-17 that have their parent or guardian’s permission to register for the contest.

How do students register and participate?
Students can register for the contest beginning today at g.co/gci. Once students have registered, and the parental consent form has been submitted and approved by Program Administrators, students can choose which “task” they want to work on first. Students choose the task they find interesting from a list of thousands of available tasks created by 29 participating open source organizations. Tasks take an average of 3-5 hours to complete. There are even beginner tasks that are a wonderful way for students to get started in the contest.

The task categories are:
  • Coding
  • Design
  • Documentation/Training
  • Outreach/Research
  • Quality Assurance
Why should students participate?
Students not only have the opportunity to work on a real open source software project, thus gaining invaluable skills and experience, but they also have the opportunity to be a part of the open source community. Mentors are readily available to help answer their questions while they work through the tasks.

Google Code-in is a contest so there are prizes*! Complete one task and receive a digital certificate, three completed tasks and you’ll also get a fun Google t-shirt. Finalists earn a jacket, runners-up earn backpacks, and grand prize winners (two from each organization) will receive a trip to Google headquarters in California in 2020!

Details
Over the past nine years, more than 11,000 students from 108 countries have successfully completed over 55,000 tasks in GCI. Curious? Learn more about GCI by checking out the Contest Rules, short videos, and FAQs. Please visit our contest site and read the Getting Started Guide.

Teachers, if you are interested in getting your students involved in Google Code-in we have resources available to help you get started.

By Stephanie Taylor, Google Open Source

* There are a handful of countries we are unable to ship physical goods to, as listed in the FAQs.