Google Data Scientist Interview Questions

Review this list of 18 Google data scientist interview questions and answers verified by hiring managers and candidates.
  • Google logoAsked at Google 
    +33

    "You shouldn't hire me if you're looking for someone to simply write code in large volumes without considering the bigger picture. I'm someone who thrives on solving root problems, building, cohesive systems, and ensuring stakeholder alignment. If the priority is speed over thoughtful analysis, I might not be the best fit. However, if you're looking for someone who can drive meaningful and scalable solutions, collaborate effectively, and contribute to long-term success, then I believe I'd bring s"

    Nicola R. - "You shouldn't hire me if you're looking for someone to simply write code in large volumes without considering the bigger picture. I'm someone who thrives on solving root problems, building, cohesive systems, and ensuring stakeholder alignment. If the priority is speed over thoughtful analysis, I might not be the best fit. However, if you're looking for someone who can drive meaningful and scalable solutions, collaborate effectively, and contribute to long-term success, then I believe I'd bring s"See full answer

    Data Scientist
    Behavioral
    +4 more
  • Google logoAsked at Google 
    +33

    "Was this for an entry level engineer role?"

    Yeshwanth D. - "Was this for an entry level engineer role?"See full answer

    Data Scientist
    Data Structures & Algorithms
    +4 more
  • +11

    "I work at a startup that makes software for Law Enforcement and the FBI. Our product analyzes calls being made by prison inmates and "listens" for predictors of violence and criminal behavior. Our clients are some of the top state prisons in the country. Recently one of the largest states in the country decided to evaluate our product for their prison system. I demo'd the product to the officers and they seemed to like everything. During the presentation they asked us if the product was ADA com"

    Aabid S. - "I work at a startup that makes software for Law Enforcement and the FBI. Our product analyzes calls being made by prison inmates and "listens" for predictors of violence and criminal behavior. Our clients are some of the top state prisons in the country. Recently one of the largest states in the country decided to evaluate our product for their prison system. I demo'd the product to the officers and they seemed to like everything. During the presentation they asked us if the product was ADA com"See full answer

    Data Scientist
    Behavioral
    +5 more
  • +41

    "Lyft at its core is a marketplace with drivers and cars on the supply side, and passengers on the demand side. I would begin by dividing the goal of the dashboard into two categories : Health of the marketplace Health of the app/ reliability from a technical perspective The second one is more straightforward so I’ll briefly mention some overarching metrics I would look at and come back to it later if time allows. Health or reliability of the app can be further divided into the following -"

    Sukriti C. - "Lyft at its core is a marketplace with drivers and cars on the supply side, and passengers on the demand side. I would begin by dividing the goal of the dashboard into two categories : Health of the marketplace Health of the app/ reliability from a technical perspective The second one is more straightforward so I’ll briefly mention some overarching metrics I would look at and come back to it later if time allows. Health or reliability of the app can be further divided into the following -"See full answer

    Data Scientist
    Analytical
  • +6

    "As a PM i received a feedback from my program manager on my style of verbal communication. It is about me speaking faster when i wanted to get away with a topic that i wasn't confident (may be not backed up with data, or still in process of getting detailed insight of a problem etc.). Whereas when I'm confident I tend to speak slowly or more assertively that made people to follow easily. I welcomed that feedback so from then on when I'm not confident in a topic I became more assertive to let pe"

    Rajesh V. - "As a PM i received a feedback from my program manager on my style of verbal communication. It is about me speaking faster when i wanted to get away with a topic that i wasn't confident (may be not backed up with data, or still in process of getting detailed insight of a problem etc.). Whereas when I'm confident I tend to speak slowly or more assertively that made people to follow easily. I welcomed that feedback so from then on when I'm not confident in a topic I became more assertive to let pe"See full answer

    Data Scientist
    Behavioral
    +9 more
  • 🧠 Want an expert answer to a question? Saving questions lets us know what content to make next.

  • +10

    "Would be better to adjust resolution in the video player directly."

    Anonymous Prawn - "Would be better to adjust resolution in the video player directly."See full answer

    Data Scientist
    Data Structures & Algorithms
    +4 more
  • Google logoAsked at Google 

    "Precision - Out of all the things we picked as correct, how many were actually correct? recall - Out of all the things that were truly correct, how many did we actually find?"

    Vineet M. - "Precision - Out of all the things we picked as correct, how many were actually correct? recall - Out of all the things that were truly correct, how many did we actually find?"See full answer

    Data Scientist
    Statistics & Experimentation
  • Google logoAsked at Google 
    +22

    "def reverseString(s): chars = list(s) l, r = 0, len(s) - 1 while l < r: chars[l], chars[r] = chars[r], chars[l] l += 1 r -= 1 reversed_str = "".join(chars) return reversed_str `"

    Erjan G. - "def reverseString(s): chars = list(s) l, r = 0, len(s) - 1 while l < r: chars[l], chars[r] = chars[r], chars[l] l += 1 r -= 1 reversed_str = "".join(chars) return reversed_str `"See full answer

    Data Scientist
    Data Structures & Algorithms
    +4 more
  • "The distribution of daily search queries per user, as shown in the histogram, can be described as approximately normal (or bell-shaped) with a slight positive skew. Key Characteristics: Shape: The distribution is roughly symmetrical around its center, resembling a bell curve. This indicates that most users perform a moderate number of daily search queries. Central Tendency: The peak of the distribution, representing the highest density of users, appears to be around **8"

    Sam A. - "The distribution of daily search queries per user, as shown in the histogram, can be described as approximately normal (or bell-shaped) with a slight positive skew. Key Characteristics: Shape: The distribution is roughly symmetrical around its center, resembling a bell curve. This indicates that most users perform a moderate number of daily search queries. Central Tendency: The peak of the distribution, representing the highest density of users, appears to be around **8"See full answer

    Data Scientist
    Statistics & Experimentation
  • Google logoAsked at Google 
    +2

    "WITH RECURSIVE fibonacci_series AS ( SELECT 1 AS n, 0 AS fib1, 1 AS fib2 UNION ALL SELECT n + 1 AS n, fib2 AS fib1, fib1 + fib2 AS fib2 FROM fibonacci_series WHERE n < 20 -- Limit the series to 20 numbers ) SELECT n, fib1 AS fib FROM fibonacci_series ORDER BY n; `"

    Yashasvi V. - "WITH RECURSIVE fibonacci_series AS ( SELECT 1 AS n, 0 AS fib1, 1 AS fib2 UNION ALL SELECT n + 1 AS n, fib2 AS fib1, fib1 + fib2 AS fib2 FROM fibonacci_series WHERE n < 20 -- Limit the series to 20 numbers ) SELECT n, fib1 AS fib FROM fibonacci_series ORDER BY n; `"See full answer

    Data Scientist
    Coding
    +4 more
  • Google logoAsked at Google 
    +6

    " function climbStairs(n) { // 4 iterations of Dynamic Programming solutions: // Step 1: Recursive: // if (n <= 2) return n // return climbStairs(n-1) + climbStairs(n-2) // Step 2: Top-down Memoization // const memo = {0:0, 1:1, 2:2} // function f(x) { // if (x in memo) return memo[x] // memo[x] = f(x-1) + f(x-2) // return memo[x] // } // return f(n) // Step 3: Bottom-up Tabulation // const tab = [0,1,2] // f"

    Matthew K. - " function climbStairs(n) { // 4 iterations of Dynamic Programming solutions: // Step 1: Recursive: // if (n <= 2) return n // return climbStairs(n-1) + climbStairs(n-2) // Step 2: Top-down Memoization // const memo = {0:0, 1:1, 2:2} // function f(x) { // if (x in memo) return memo[x] // memo[x] = f(x-1) + f(x-2) // return memo[x] // } // return f(n) // Step 3: Bottom-up Tabulation // const tab = [0,1,2] // f"See full answer

    Data Scientist
    Data Structures & Algorithms
    +3 more
  • Google logoAsked at Google 
    +2

    "Situation: COVID has impacted everyone's lives, especially small businesses. Earlier this year, during the second lockdown in Malaysia, it was estimated that 50%-70% of small businesses have closed. It got me thinking, beyond the existing training programmes, what can my company do to support small businesses? Task: So, I took the initiative to gather our Comms and Government Affairs team, to work together and explore how we can: 1) meaningfully demonstrate our company's commitment in"

    Judy W. - "Situation: COVID has impacted everyone's lives, especially small businesses. Earlier this year, during the second lockdown in Malaysia, it was estimated that 50%-70% of small businesses have closed. It got me thinking, beyond the existing training programmes, what can my company do to support small businesses? Task: So, I took the initiative to gather our Comms and Government Affairs team, to work together and explore how we can: 1) meaningfully demonstrate our company's commitment in"See full answer

    Data Scientist
    Behavioral
    +1 more
  • "If you effectively listen and understand their point of view, then take action to address the issue quickly. Don't let too much time slip between the conflict and the resolution. If resolving the concern will take more time, communicate the current status and next steps with the stakeholder."

    Abdurhman M. - "If you effectively listen and understand their point of view, then take action to address the issue quickly. Don't let too much time slip between the conflict and the resolution. If resolving the concern will take more time, communicate the current status and next steps with the stakeholder."See full answer

    Data Scientist
    Behavioral
    +1 more
  • Google logoAsked at Google 
    Video answer for 'Merge k sorted linked lists.'
    +7

    "A much better solution than the one in the article, below: It looks like the ones writing articles here in Javascript do not understand the time/space complexity of javascript methods. shift, splice, sort, etc... In the solution article you have a shift and a sort being done inside a while, that is, the multiplication of Ns. My solution, below, iterates through the list once and then sorts it, separately. It´s O(N+Log(N)) class ListNode { constructor(val = 0, next = null) { th"

    Guilherme F. - "A much better solution than the one in the article, below: It looks like the ones writing articles here in Javascript do not understand the time/space complexity of javascript methods. shift, splice, sort, etc... In the solution article you have a shift and a sort being done inside a while, that is, the multiplication of Ns. My solution, below, iterates through the list once and then sorts it, separately. It´s O(N+Log(N)) class ListNode { constructor(val = 0, next = null) { th"See full answer

    Data Scientist
    Data Structures & Algorithms
    +4 more
  • Google logoAsked at Google 
    +1

    "Deep Learning is a part of Artificial Intelligence, it's like teaching the machine to think and make decisions on its own. It's like how we teach a child the concept of an apple - it's round, red, has a stem on top. We show them multiple pictures of apples and then they understand and can recognize an apple in future. Similarly, we feed lots of data to the machine, and slowly, it starts learning from that data, and can then make relevant predictions or decisions based on what it has learnt. A co"

    Surbhi G. - "Deep Learning is a part of Artificial Intelligence, it's like teaching the machine to think and make decisions on its own. It's like how we teach a child the concept of an apple - it's round, red, has a stem on top. We show them multiple pictures of apples and then they understand and can recognize an apple in future. Similarly, we feed lots of data to the machine, and slowly, it starts learning from that data, and can then make relevant predictions or decisions based on what it has learnt. A co"See full answer

    Data Scientist
    Concept
    +3 more
  • Google logoAsked at Google 

    "Clarification questions What is the purpose of connecting the DB? Do we expect high-volumes of traffic to hit the DB Do we have scalability or reliability concerns? Format Code -> DB Code -> Cache -> DB API -> Cache -> DB - APIs are built for a purpose and have a specified protocol (GET, POST, DELETE) to speak to the DB. APIs can also use a contract to retrieve information from a DB much faster than code. Load balanced APIs -> Cache -> DB **Aut"

    Aaron W. - "Clarification questions What is the purpose of connecting the DB? Do we expect high-volumes of traffic to hit the DB Do we have scalability or reliability concerns? Format Code -> DB Code -> Cache -> DB API -> Cache -> DB - APIs are built for a purpose and have a specified protocol (GET, POST, DELETE) to speak to the DB. APIs can also use a contract to retrieve information from a DB much faster than code. Load balanced APIs -> Cache -> DB **Aut"See full answer

    Data Scientist
    Concept
    +5 more
  • Google logoAsked at Google 

    "Law is my passion. Traveling all over the world in 5 years"

    Moshe S. - "Law is my passion. Traveling all over the world in 5 years"See full answer

    Data Scientist
    Behavioral
    +4 more
  • Google logoAsked at Google 

    Permutations

    IDE
    Medium

    " import java.util.*; import java.util.stream.Collectors; class Solution { public static List> permute(int[] nums) { List> resList=new ArrayList(); List list=new ArrayList(); Set visited=new HashSet(); permute(nums, resList, list, visited); return resList; } public static void permute(int[] nums, List> resList, List list, Set visited) { if(vis"

    Divya R. - " import java.util.*; import java.util.stream.Collectors; class Solution { public static List> permute(int[] nums) { List> resList=new ArrayList(); List list=new ArrayList(); Set visited=new HashSet(); permute(nums, resList, list, visited); return resList; } public static void permute(int[] nums, List> resList, List list, Set visited) { if(vis"See full answer

    Data Scientist
    Data Structures & Algorithms
    +3 more
Showing 1-18 of 18