The Google Foobar Challenge!!! Is Google hiring through this?

Anish Garg
6 min readJun 13, 2020

--

Google Foobar popup

What is Google Foobar Challenge?

The Google Foobar challenge is a secret recruiting challenge given to individuals who search for certain programming terms in Google. Google uses this to hire some of the best developers around the globe which they think can be a good match for their organization. Many developers in Google have been hired through this hiring challenge. In order to join Foobar, you must be invited by a friend or someone OR it will automatic popup while searching some CS terms on Google.

How to get an invitation for this challenge?

Google Foobar login page

Getting the invitation for Google Foobar is also a mysterious thing, no one exactly knows the criteria for the Google Foobar invitation eligibility… First and foremost Google is keeping history of all the keywords you search on it’s search engine. For this ,you have to be logged in with gmail account.

Based on what you search, over a period of time, Google would know if you are a software engineer/developer/programmer or researcher, and determine either you are eligible for the Google Foo Bar challenge or not..
If you click here you will be redirected to this page,but you will not be able to login and also there will no any option to directly Signup in Google Foobar.

To get an invitation for Google Foobar:
Open google.com/ncr (Original page) and search for “Arraylist Java” Copy the URL of the search result page and repeatedly open a new tab with that link for 10–20 times.
Instead of Arraylist Java you can also search for the term like list comprehension and mutex lock.

When you get an invitation it completely change the view and pop up in a unique style, looks like this and ask:

Curious developers are known to seek interesting problems. Solve one from google?

Google Foobar

Terminal of Google Foobar:

So after accepting the challenge by click on I want to play, you will redirect to website which look like the above image. Foobar is basically a website which contains a unix like shell, which only have some standard unix commands, which are listed in the help command, like cd , ls ,edit , cat etc.
Using the “ls” command show that journal.txt, and start_here.txt are two files in your directory. The journal.txt file contains the welcome text, and gets updated after every completed challenge. The start_here.txt tells use to “Type request to request a challenge.
Don’t forget to sign in, otherwise you will not able to login again.

Google Foobar

After you request for the challenge, you get some files in your Foobar command-line folder, and you have a question waiting for you to solve.
This folder contains 4 files: solution.py, solution.java, constraints.txt and readme.txt which you can read using the less command(listed in help) or cat command(not listed but it will display all the content of the file).
The “constraints.txt” tells you the stuff like “python 2.7 only basic libraries” and “readme.txt” contain your problem and solution files contain, well, your solutions.You get two files to write the solution to your problem statement “solution.java” and “solution.py”. You can choose to code in any of the preffered language either Java or Python for each challenge.

How to write a code in Google Foobar

To write the code, you can edit the file by run the command “ edit filename”, and you get a tab on your same webpage and in the tab, an editor with your file open.
you can “Save” your file with the use of shortcut key(ctrl+S).
Once you have come up with a solution, you can verify your solution with the “verify filename” command. Google will check your code with multiple test cases (most of which are hidden). If you pass all the test cases, you can submit your solution by using “submit filename” and when you are ready, request a new problem.

I made it past Level 1! (That ascii bunny moves!)

After completing the first challenge you will see a jumping bunny on your screen and now you can request for a second challenge when you feel ready and have enough time to complete it.Let me tell you about the structure of the whole challenge. There are 5 levels. The following table shows how many challenges there are in each level as well as the time given for each challenge:

The final goal in Foobar is to reach and complete level 5. But once you finish level 3, you are able to request a Google recruiter to review your code and hopefully get in contact with you. After completing the level 2 and level 4 you will get a referral link through which you can refer your friend.

General tips:

  • Make sure you understand the problem. Don’t just read the problem prompt once, read it multiple times. The prompt will also usually give 2 test cases that will help you further to understand the problem and also while testing your code. Try to use ALL of the hints that are in the prompt.
  • Make sure that you have time to dedicate to your problem before you request it, because all the problems are time bounded.
  • In my opinion Google Foobar is one of the best tools that you have to improve your coding skills , so don’t go for Foobar only about thinking to get a job at Google.
  • If you fail!! you’re done, you can’t come back again to restart. So don’t start until you are prepared for this challenge.
  • Above all, have fun! Pass or fail, you will still grow from this experience.

Though, as soon as I complete my second challenge,i will like to share my friend referral link to one of the random guy from the comment section below, all you need to do is to share your Github or LinkedIn profile. If you have any query or want to share your experience with Google Foobar, comment below .You can also connect with me on LinkedIn here.
Anyone who gets the secret invitation from Google to do this challenge should not hesitate to click “I want to play”.

If you found this one worth reading, then give a clap👏.

--

--

Anish Garg

Computer related tech, Cyber Security, Cloud Computing