Skip to main content

Google Software Engineer Interview Questions

Review this list of 143 Google Software Engineer interview questions and answers verified by hiring managers and candidates.
  • Google logoAsked at Google 
    Add answer
    Software Engineer
    Coding
    +1 more
  • Google logoAsked at Google 
    1 answer

    "Success for an engineer means using skills and knowledge to solve real-world problems, grow continuously, and build a meaningful career."

    Bhavna S. - "Success for an engineer means using skills and knowledge to solve real-world problems, grow continuously, and build a meaningful career."See full answer

    Software Engineer
    Behavioral
  • Google logoAsked at Google 
    Add answer
    Software Engineer
    Data Structures & Algorithms
    +2 more
  • Google logoAsked at Google 
    Add answer
    Software Engineer
    Behavioral
  • Google logoAsked at Google 
    1 answer

    "When talking about my role in current team, I talked following things: High level technologies used. Collaboration work I did with PM and Design counter parts. Web UX features that we built. Hiring and boot strapping team from 0. Given that there is straight match to the profile hiring manager was looking for, he got pretty excited and spent time selling the job."

    Sudhakar P. - "When talking about my role in current team, I talked following things: High level technologies used. Collaboration work I did with PM and Design counter parts. Web UX features that we built. Hiring and boot strapping team from 0. Given that there is straight match to the profile hiring manager was looking for, he got pretty excited and spent time selling the job."See full answer

    Software Engineer
    Behavioral
    +1 more
  • 🧠 Want an expert answer to a question? Saving questions lets us know what content to make next.

  • Google logoAsked at Google 
    Add answer
    Software Engineer
    Behavioral
    +1 more
  • Software Engineer
    Behavioral
    +1 more
  • Google logoAsked at Google 
    10 answers
    +7

    "function isPalindrome(s, start, end) { while (s[start] === s[end] && end >= start) { start++; end--; } return end <= start; } function longestPalindromicSubstring(s) { let longestPalindrome = ''; for (let i=0; i < s.length; i++) { let j = s.length-1; while (s[i] !== s[j] && i <= j) { j--; } if (s[i] === s[j]) { if (isPalindrome(s, i, j)) { const validPalindrome = s.substring(i, j+1"

    Tiago R. - "function isPalindrome(s, start, end) { while (s[start] === s[end] && end >= start) { start++; end--; } return end <= start; } function longestPalindromicSubstring(s) { let longestPalindrome = ''; for (let i=0; i < s.length; i++) { let j = s.length-1; while (s[i] !== s[j] && i <= j) { j--; } if (s[i] === s[j]) { if (isPalindrome(s, i, j)) { const validPalindrome = s.substring(i, j+1"See full answer

    Software Engineer
    Data Structures & Algorithms
    +3 more
  • "As we can pass info to only one child at a time, I told that from any given node, we have to pass the info to that child(of this node) which has the largest subtree rooted at it. To calculate the subtree sizes, I used DFS. And then to calculate the minimum time to pass info to all the nodes, I used BFS picking the largest subtree child first at every node. I couldn't write the complete code in the given time and also made a mistake in telling the overall time complexity of my approach. I think t"

    Lakshman B. - "As we can pass info to only one child at a time, I told that from any given node, we have to pass the info to that child(of this node) which has the largest subtree rooted at it. To calculate the subtree sizes, I used DFS. And then to calculate the minimum time to pass info to all the nodes, I used BFS picking the largest subtree child first at every node. I couldn't write the complete code in the given time and also made a mistake in telling the overall time complexity of my approach. I think t"See full answer

    Software Engineer
    Data Structures & Algorithms
    +1 more
  • Software Engineer
    Behavioral
  • Google logoAsked at Google 
    Add answer
    Software Engineer
    Behavioral
  • Google logoAsked at Google 
    Add answer
    Software Engineer
    System Design
    +1 more
  • Google logoAsked at Google 
    3 answers

    "Binary search is the technique to search an element in a sorted array in O(log(N)) time. It is also used in problems wherever we find monotonically increasing or decreasing patterns."

    Shivam S. - "Binary search is the technique to search an element in a sorted array in O(log(N)) time. It is also used in problems wherever we find monotonically increasing or decreasing patterns."See full answer

    Software Engineer
    Technical
    +1 more
  • Google logoAsked at Google 
    Add answer
    Software Engineer
    Behavioral
  • Google logoAsked at Google 
    2 answers

    "Here’s a commonly used Git branching and release strategy that we used at my previous role: Branching strategy (Git-based) a. Main Branches main: Production-ready branch. Only tested and stable code is merged here. develop: Feature branches are merged here before being merged into main. b. Supporting Branches Feature Branches (feature/) Release Branches (release/) Hotfix Branches (hotfix/) 2.Release Strategy a. Continuous Deplo"

    Anonymous Dingo - "Here’s a commonly used Git branching and release strategy that we used at my previous role: Branching strategy (Git-based) a. Main Branches main: Production-ready branch. Only tested and stable code is merged here. develop: Feature branches are merged here before being merged into main. b. Supporting Branches Feature Branches (feature/) Release Branches (release/) Hotfix Branches (hotfix/) 2.Release Strategy a. Continuous Deplo"See full answer

    Software Engineer
    Technical
  • " The productofarrays() function works by first creating an empty array to store the product of the two integers. Then, it iterates through the first array and multiplies each element by each element in the second array. The product of each element is then appended to the product array. Finally, the product array is returned def productofarrays(array1, array2): """ Calculates the product of two integers represented by two arrays. Args: array1: The first array. array2: The se"

    Praful B. - " The productofarrays() function works by first creating an empty array to store the product of the two integers. Then, it iterates through the first array and multiplies each element by each element in the second array. The product of each element is then appended to the product array. Finally, the product array is returned def productofarrays(array1, array2): """ Calculates the product of two integers represented by two arrays. Args: array1: The first array. array2: The se"See full answer

    Software Engineer
    Technical
  • Software Engineer
    Behavioral
  • "Steps in booking (eg. movie ticket booking) User logs in User enters details User selects seats User adds meal options User enters payment method User completes payment Scenarios Which can happen agents corner the tickets and then sell them at premium Multiple users booking at the same time and get an error message at the end Money gets stuck and will be refunded later Load at the server and server crashes Multiple users get t"

    P D. - "Steps in booking (eg. movie ticket booking) User logs in User enters details User selects seats User adds meal options User enters payment method User completes payment Scenarios Which can happen agents corner the tickets and then sell them at premium Multiple users booking at the same time and get an error message at the end Money gets stuck and will be refunded later Load at the server and server crashes Multiple users get t"See full answer

    Software Engineer
    Product Design
  • Google logoAsked at Google 
    Add answer
    Software Engineer
    Data Structures & Algorithms
    +2 more
  • Google logoAsked at Google 
    3 answers

    "Recursion: 0 if NULL, else 1+max(height(left), height(right))"

    Mohith J. - "Recursion: 0 if NULL, else 1+max(height(left), height(right))"See full answer

    Software Engineer
    Data Structures & Algorithms
    +3 more
Showing 121-140 of 143
Exponent

Get updates in your inbox with the latest tips, job listings, and more.

Follow Us

Products
Courses
Interview Questions
Interview Experiences
Popular articles
Guides
Coaching
For Partners
Company
Exponent © 2026
Terms of Service | Privacy