Advice > Software engineering

Google Online Assessment Guide for Software Engineers (tips and prep)

By Kim Visda on November 20, 2025 How we wrote this article
A glowing Google logo

This guide is all about the Google online assessment (Google OA) for software engineer applicants and other engineering roles, and how you can best prepare for it.

Also known as the Google coding assessment, this timed online test can be quite challenging. It will test you on your technical skills, as well as your speed and time management. But with the right preparation, you can increase your chances of passing and get one step closer to landing a job at Google.

In this guide, we've compiled everything you need to know about the Google online coding assessment, from its place in Google’s interview process to sample questions and preparation tips.

Here's an overview of everything we'll cover:

  1. What is the Google online assessment?
  2. How does the Google online assessment fit into Google’s interview process?
  3. What does the Google online assessment aim to evaluate?
  4. Example questions from the Google online assessment
  5. Preparation tips
  6. After the Google OA

Click here to book a coaching session with an expert ex-Google interviewer.

1. What is the Google online assessment?

The Google online assessment (Google OA) is a virtual coding test given during Google’s software engineer interview process for SWE and other engineering positions. 

The Google OA follows this format:

  • Type: Online remote test, no verbal interview, usually done in plain text form on Google Docs or HackerRank
  • Content: 2-3 questions, similar to LeetCode 
  • Time allowance: 90 minutes

Its format is deceptively simple. But don’t be fooled; the Google OA is designed to be difficult, so it’s better to over-prepare if you want any chance of passing. 

The assessment helps recruiters quickly identify candidates who meet Google’s required baseline skill level. Specifically, it tests you on your:

  1. Technical fundamentals: Recruiters want to test your basic algorithmic thinking and problem-solving abilities. 
  2. Ability to write clean code: Fluency in coding syntax and your preferred coding language is a basic requirement for any SWE role at a top tech company like Google. 
  3. Speed and time management under pressure: It’s a timed test, so you only have a chance of passing if you work efficiently within the time constraint. It encourages candidates to achieve both speed and accuracy.

Additional test: Google Hiring Assessment

Alongside the Google OA, you’ll also be given the Google hiring assessment. This test is more of a behavioral questionnaire where you have the option to choose between “Strongly Agree,” “Agree,” “Neutral,” “Disagree,” and “Strongly Disagree” as answers. Once you’ve answered a question, you cannot go back and change it.

The purpose of this test is to assess how well you align with Google’s professional values and culture. You can prep for this by studying Google’s core values.

If you’re applying for a tech role, you will likely receive both the Google online coding assessment and the Google hiring assessment.

2. How does the online assessment fit into Google’s interview process? 

The Google online assessment is the first step in Google’s interview process for SWE roles. It’s given to candidates who pass the resume screening, but comes before the more advanced initial technical screen.

Take note that the Google OA is separate from the initial technical screen and the more advanced Google coding interview, which is part of Google’s full onsite interview loop. The Google OA is simply a remote non-verbal test, while the technical screen and coding interview are real conversations with an interviewer.

The Google OA helps Google’s recruiters weed out candidates who don’t meet the company’s basic requirement of coding skills. This is why it’s given so early in the interview process. If you don’t pass the Google OA, you won’t be approved to move forward with the technical screen or onsite interviews.

3. What does the Google online assessment aim to evaluate? 

The Google online assessment aims to evaluate the following core competencies if you’re applying for an SWE or engineer role:

Google Online Assessment for SWEs: What does it evaluate?

The Google OA is a highly technical test. Expect the standards to be extremely high, as it’s basically a filter to confirm that you have the technical fundamentals and problem-solving skills needed before moving on to the real interviews.

In the next section, we’ll deep dive into the specific topics and question types you may encounter.

4. Example questions from the Google online assessment 

Google software engineers solve some of the most difficult problems the company faces with code. To qualify, you must have strong problem-solving skills.

As we mentioned in Section 1, the Google OA will ask you to solve 2-3 coding questions. The specific questions and level of difficulty vary. They typically fall between easy to medium LeetCode questions.

The questions you'll face are similar to the types of questions SWEs are asked during the coding interviews at Google. That's good news. It means that your preparation will help with both stages of the interview process.

Note that you'll need to write your own test cases, as you won't be provided with any. You can do that in your own IDE before submitting your solution. 

The Google OA questions focus on different subsets of data structures and algorithms (DSA). Here are the three most common subsets or question types covered, based on user reports we’ve read on LeetCode:

  1. Graphs / trees: Involves navigating or analyzing connections, hierarchies, or paths using nodes and edges. Google uses this to test your ability to reason about structure, traversal, and state changes.
  2. Arrays / strings: Focus on efficiently processing ordered or linear data using techniques like two pointers, hashing, or sliding windows. They evaluate your ability to write clean, optimized solutions for very common data structures.      
  3. Dynamic programming: Requires breaking tasks into overlapping sub-problems and optimizing with memoization or tabulation. Google uses these to test your pattern recognition, optimization skills, and complexity management.

Additionally, you may also want to practice questions under the topics of Recursion and Geometry / maths. While we couldn’t find candidate-reported sample questions for these, they’re often asked in Google’s coding interviews, so we recommend prepping for them just to be sure.

  1. Recursion: Involve solving a problem by repeatedly calling the same function on smaller inputs. They assess your ability to structure solutions cleanly, define base cases, and manage state across recursive calls.
  2. Geometry / maths: Rely on mathematical reasoning or geometric calculations like distances, intersections, or modular arithmetic. They test your ability to convert math logic into correct, efficient code.

Below, we've listed examples for each question type, reported by users on LeetCode as part of the Google online assessment. However, the sample questions under Recursion and Geometry / maths are borrowed from Google’s coding interview questions.

To make these questions easier to study, we've modified the phrasing to match the closest problem on LeetCode, stated the level of difficulty, and linked to a free LeetCode solution if available.

Example coding questions asked in the Google online assessment (Google OA) for software engineers:

Graphs / trees

  • Given the root node of a binary tree, create a string representation of the tree using the aforementioned node class. (Medium)
  • Longest increasing consecutive sequence in a grid, considering up, down, left, and right (horizontal and vertical moves). (Medium)
  • Google has built several servers in a city. Each server can only service requests within its grid. For each request in the REQUESTS list, find out how many servers can service that request and return the answer in a list. (Level unknown)
  • Calculate the shortest path after consuming all burgers in the given path. (Hard)

Arrays / strings

  • Given a string S, 3 palindromes (start(i),end(j)) such that i1<=j1<i2<=j2<i3<=j3. Return how many such palindromic triples are present. (Medium)
  • Write a program to check whether string A contains string B as a subsequence or not. You can change at most 1 character in string B except the first character. Return the starting index of subsequence if found, else return -1. (Easy)
  • You are given a binary string binary. A subsequence of binary is considered good if it is not empty and has no leading zeros (with the exception of "0"). Find the number of unique good subsequences of binary. (Hard)

Dynamic programming

  • You are given an integer array nums and a positive integer k. The value of a sequence seq of size 2 * x is defined as: (seq[0] OR seq[1] OR ... OR seq[x - 1]) XOR (seq[x] OR seq[x + 1] OR ... OR seq[2 * x - 1]). Return the maximum value of any subsequence of nums having size 2 * k. (Hard)
  • Reduce the number n to 1 with the minimum number of operations. (Medium)
  • Given a positive integer x, return any list of values whose squared and summed together produce x. Follow-up question: Find the shortest list that produces x. (Medium)

Recursion

  • Given the root node of a binary search tree, return the sum of values of all nodes with value between L and R (inclusive). The binary search tree is guaranteed to have unique values. (Easy)
  • A strobogrammatic number is a number that looks the same when rotated 180 degrees (looked at upside down). Find all strobogrammatic numbers that are of length = n. (Medium)
  • Given a binary tree, find the length of the longest path where each node in the path has the same value. This path may or may not pass through the root. The length of path between two nodes is represented by the number of edges between them. (Medium)

Geometry / maths

  • A group of two or more people wants to meet and minimize the total travel distance. You are given a 2D grid of values 0 or 1, where each 1 marks the home of someone in the group. The distance is calculated using Manhattan Distance, where distance(p1, p2) = |p2.x - p1.x| + |p2.y - p1.y|. (Medium)
  • You are given two non-empty linked lists representing two non-negative integers. The digits are stored in reverse order and each of their nodes contain a single digit. Add the two numbers and return it as a linked list. (Medium)

For more relevant LeetCode example problems, we recommend browsing through LeetCode’s comprehensive list of Google interview questions compiled from user discussion threads. This collection covers coding questions from other stages of the interview process, but they are still relevant to the Google OA. 

Finally, we recommend reading this guide on how to prepare for coding interviews at FAANG companies and practicing with this list of coding interview examples in addition to those listed below.

5. Preparation tips 

5.1 Start preparing early

You'll probably have a little time between hearing from Google and when you have to complete the online assessment, but it likely won't be very much time.

As a result, it can be a big advantage to start preparing for the online assessment before Google even contacts you.

This could be a huge opportunity for your career, so it's worth the extra up-front time investment to make sure you're ready for the online assessment, even if you don't end up hearing back from Google. Worst-case scenario, you'll be better prepared for future technical tests or interviews.  

5.2 Practice 20+ Leetcode questions

Practice with the questions we mentioned in Section 4, as well as questions from our Google SWE interview guide and our Google coding interview guide.

To broaden your practice, we also recommend practicing with at least 20 LeetCode questions, as that is roughly the number of questions included in LeetCode’s Google online assessment list for the US/EU regions. (The number of questions available for other regions varies.)

But of course, you'll be even better prepared if you take the time to solve more problems. To help you do that, here are a couple of other places on LeetCode you can go to get quality sample questions:

Another good place to find practice questions is from Google’s past coding competitions. Google no longer holds these competitions, but you can still see sample questions in Google’s coding competition question archive on GitHub. We recommend looking at the Code Jam competition in particular.

Finally, if you want even more practice questions, you can buy the Cracking the Coding Interview book.

5.3 Do timed mock tests

One candidate shared that after passing his Google OA, he realized that timing oneself is a crucial part of preparation. When preparing for the Google OA, speed and time management are as important as showing your technical coding skills. 

You’ll want to simulate similar testing conditions when you practice. It will prompt you to solve problems more efficiently and think clearly under pressure. 

Start by practicing questions untimed until you can consistently solve new problems with a high success rate. Once you get the hang of it, you can start timing yourself with sets of two questions on a 90-minute timer.

5.4 Take notes on solutions

As you practice, it's good to cover as many questions as possible. However, after you've tried one question, don't move on too quickly.

Make sure you take the time to study the solution for each question you solve, and keep a notebook of key ideas and important concepts to remember. This can be a quick process when you ace a problem, and you'd only need to record any potential improvements to your approach.

However, if you have no clue how to approach a problem, then take a few minutes to study the solution carefully. Make sure you understand the solution, then make a note of the approach or concept you were missing.

5.5 Use your local IDE

The final tip is to use your local IDE for practice questions and during the actual test. One candidate who passed the Google online assessment used his local IDE in order to write and test code more quickly.

Once you've written the code locally, you can copy and paste it into the online assessment in order to submit your work.

As you can probably imagine, using the IDE you're used to can also help you to feel more comfortable when you're under the pressure of the real test.

Next, let's briefly cover what happens after the online assessment.

6. After the Google online assessment

Once you make it past the online assessment, you'll need to quickly get ready for the technical screen. Here are the steps in the interview process that you'll face after the online assessment:

  1. Technical screen: 1-2 interviews
  2. Onsite interview loop: 4-6 interviews

To make the most of this opportunity and to optimize your chances of getting an offer, we recommend reading our general Google interview process guide. Plus, check out our interview guides for Google engineering roles that usually undergo the Google OA:

Taking part in practice interviews with an ex-Google recruiter or engineer can also significantly boost your odds of landing your desired job. Whether it’s to gain expert insight on coding problems or rehearse your answers for real interviews, use your interview coaching service to connect with skilled interviewers from Google and other top tech companies.

Schedule your session with them on IGotAnOffer.

Related articles:

polling, streaming and sockets system design interview
Software engineeringFeb 10, 2021
Polling, server sent events, and WebSockets: system design interview concepts (8 of 9)
This guide defines polling, server sent events, and WebSockets, how they work, and when you should use them in a system design interview.
Read more
divide and conquer interview questions
Software engineeringDec 17, 2021
50 divide and conquer interview questions [easy, medium, hard]
50 divide and conquer interview questions, all with links to high-quality solutions, plus an interview preparation guide. Part 8 of our algorithms questions series to help you practice for your software engineer interview.
Read more
A man dressed in smart office clothing sits in front of his open laptop
Software engineeringOct 05, 2025
Apple Engineering Manager Interview (questions, process, prep)
Your complete guide to Apple engineering manager interviews. Learn more about the role, the interview process, practice with example questions, and learn key interviewing and preparation tips.
Read more
person preparing for an Uber engineering manager interview
Software engineeringOct 03, 2024
Uber Engineering Manager Interview (questions, process, prep)
Complete guide to Uber engineering manager interviews. Learn more about the role, and the interview process, practice with example questions, and learn key interviewing and preparation tips.
Read more
Graph interview questions and cheatsheet
Software engineeringSep 27, 2021
50+ graph interview questions and cheat sheet
50+ graph interview questions, all with links to high-quality solutions, plus a graph refresher and cheat sheet. Part 6 of our coding prep series to help you ace your software engineer interview.
Read more
woman writing her software engineer resume
Software engineeringDec 09, 2024
11 software engineer resume examples (Google, Amazon, Meta)
REAL software engineer resume examples that worked for Google, Amazon, Meta, etc. Plus, a step-by-step guide on writing a great SWE resume and optimizing it to get the top jobs, and a resume template you can download and customize.
Read more
NVIDIA logo on dark background symbolizing the NVIDIA software engineer interview process, common questions, and preparation tips.
Software engineeringMay 14, 2025
NVIDIA Software Engineer Interview (process, questions, prep)
Prep for your NVIDIA software engineer interview with sample questions and process insights based on real candidate data, as well as expert tips.
Read more
LinkedIn software engineer interview
Software engineeringSep 17, 2020
LinkedIn software engineer interview (questions and process)
This is a complete guide to LinkedIn software engineer (SWE) interviews. It covers LinkedIn's interview process, practice questions, and preparation tips.
Read more