Proud winner of ABECA 2024 - AmbitionBox Employee Choice Awards
Filter interviews by
Multiple data structures are used to print nodes in a specific order. One data structure cannot be used alone.
The given order suggests a depth-first search traversal of a tree-like structure.
A stack can be used to keep track of the nodes to be visited.
A queue can be used to store the children of a node in the order they are visited.
An array can be used to store the nodes in the required order.
A linked list can be used ...
Find largest pen using minimum comparisons with tops.
Divide pens into two groups and compare largest pen from each group with largest top.
Repeat the process with the group containing the largest pen until only one pen is left.
The remaining pen is the largest pen.
Total number of comparisons required is 2n-3.
Given n dice with 'a' sides and sum b, return no. of ways to obtain b. Optimize time and space complexity.
Use dynamic programming to reduce time complexity
Create a 2D array to store the number of ways to obtain each sum for each number of dice
Use rolling arrays to optimize space complexity
Example: n=2, a=6, b=7 -> 6 ways to obtain sum 7
Example: n=3, a=4, b=8 -> 21 ways to obtain sum 8
Sort 128 GB data on 2 machines with 64 GB RAM each. Extend to 1000 machines.
Use external sorting algorithm like merge sort or quick sort
Divide data into smaller chunks and sort them individually
Merge sorted chunks using additional RAM
For 1000 machines, use distributed sorting algorithms like MapReduce or Hadoop
Ensure data consistency and fault tolerance in distributed sorting
I am a software developer with 5 years of experience in Java, Python, and SQL.
5 years of experience in Java, Python, and SQL
Worked on developing web applications using Java Spring framework
Proficient in database management with SQL
I applied via campus placement at Indian Institute of Technology (IIT), Jodhpur
What people are saying about Google
I applied via AmbitionBox and was interviewed in Apr 2024. There were 3 interview rounds.
An aptitude test is an exam used to determine an individual's skill or propensity to succeed in a given activity.
Java is platform independent due to its bytecode and JVM implementation.
Java code is compiled into bytecode, which can run on any platform with a Java Virtual Machine (JVM)
JVM acts as an interpreter, translating bytecode into machine code specific to the underlying platform
This allows Java programs to be written once and run anywhere, without the need for recompilation
Static binding is resolved at compile time, while dynamic binding is resolved at runtime.
Static binding is also known as early binding, where the method call is resolved at compile time based on the type of the object.
Dynamic binding is also known as late binding, where the method call is resolved at runtime based on the actual type of the object.
Example of static binding: method overloading.
Example of dynamic binding:
JVM is a virtual machine that enables a computer to run Java programs.
JVM is platform-independent and converts Java bytecode into machine code.
It consists of class loader, runtime data areas, execution engine, and native method interface.
JVM manages memory, garbage collection, and exception handling.
Examples of JVM implementations include Oracle HotSpot, OpenJ9, and GraalVM.
Lambda expression in JAVA is a concise way to represent a method implementation using a functional interface.
Lambda expressions are used to provide a more concise way to implement functional interfaces in JAVA.
They are similar to anonymous classes but with less boilerplate code.
Lambda expressions can be used to pass behavior as an argument to a method.
Syntax: (parameters) -> expression or (parameters) -> { statements;
Google interview questions for designations
Binary search is a fast search algorithm that finds the position of a target value within a sorted array.
Ensure the array is sorted before performing binary search.
Compare the target value with the middle element of the array.
If the target value is less than the middle element, search the left half of the array. If it is greater, search the right half.
Repeat the process until the target value is found or the subarray i
Multi-source BFS on an array of strings involves finding the shortest path from multiple starting points to a target point.
Implement BFS algorithm to traverse the array of strings starting from multiple sources simultaneously.
Maintain a queue of nodes to visit next, and keep track of visited nodes to avoid revisiting.
Update the distance of each node from the sources as you traverse the array.
Example: Given an array of ...
Get interview-ready with Top Google Interview Questions
I applied via Referral and was interviewed in Sep 2024. There was 1 interview round.
Developed a web application for online shopping with user authentication and payment gateway integration.
Implemented user authentication using JWT tokens
Integrated Stripe API for payment processing
Designed responsive UI using React and Bootstrap
Utilized Node.js for backend development
DSA hard of dp and tree and graph, segments
DSA medium questions were asked in the interview
Test was conducted online on HAckerrank platform
A HashMap is a data structure that stores key-value pairs. To find all buddies in a HashMap, we need to iterate through the entries and compare values.
Iterate through the entries of the HashMap
Compare values to find buddies
Store buddies in an array of strings
C++ and Java have different strengths and weaknesses, it's not accurate to say one is 'bad' compared to the other.
C++ is closer to the hardware and allows for more low-level programming, while Java is more platform-independent and easier to learn.
C++ gives more control over memory management, but this can lead to more bugs if not handled properly.
Java has automatic garbage collection, making memory management easier fo...
Google is better than Facebook due to its focus on search and information retrieval.
Google's primary focus is on search and information retrieval, while Facebook is more focused on social networking.
Google's search algorithm is more advanced and accurate compared to Facebook's search functionality.
Google offers a wide range of services beyond social networking, such as Google Maps, Gmail, and Google Drive.
Google has a ...
Return the palindrome of a given number
Check if the number is equal to its reverse to determine if it is a palindrome
Convert the number to a string to easily reverse it
Handle negative numbers by converting them to positive before checking for palindrome
Coding programs can vary in complexity depending on the requirements and functionalities needed.
Complexity can be measured using Big O notation, which describes the worst-case scenario for time and space complexity.
Factors affecting complexity include data structures used, algorithms implemented, and the size of input data.
Examples of complex programs include machine learning algorithms, large-scale distributed systems
I have over 5 years of experience in software development, with a strong focus on web applications and database management.
Developed web applications using HTML, CSS, JavaScript, and various frameworks like Angular and React
Proficient in database management with SQL and NoSQL databases such as MySQL and MongoDB
Experience in version control systems like Git for collaborative development
Strong problem-solving skills and ...
Some of the top questions asked at the Google Software Developer interview -
The duration of Google Software Developer interview process can vary, but typically it takes about less than 2 weeks to complete.
based on 106 interviews
3 Interview rounds
based on 176 reviews
Rating in categories
Software Engineer
1.7k
salaries
| ₹19 L/yr - ₹77.5 L/yr |
Software Developer
1.1k
salaries
| ₹20.1 L/yr - ₹60 L/yr |
Senior Software Engineer
666
salaries
| ₹24 L/yr - ₹85.4 L/yr |
Data Scientist
274
salaries
| ₹12 L/yr - ₹50 L/yr |
Sde1
257
salaries
| ₹14 L/yr - ₹55 L/yr |
Yahoo
Amazon
Microsoft Corporation