Filter interviews by
Algorithm to find 2 numbers in an array whose sum is equal to a target integer
Use a hash table to store the difference between target and each element in the array
Iterate through the array and check if the current element exists in the hash table
Return the pair of elements that sum up to the target integer
Write a select statement to retrieve work of all users who belong to my team.
Join USERS and WORK tables on user_id
Join MANAGERS and USERS tables on team
Filter by manager_id
The manifest.json file contains the most important information of a Chrome extension.
The manifest.json file includes the version number, permissions, content scripts, background scripts, and other important details.
It is located in the root directory of the extension.
It is required for all Chrome extensions.
Example: "manifest_version": 2, "version": "1.0", "permissions": ["tabs", "storage"]
Hashtable is faster for finding an item than a sorted list.
Hashtable has constant time complexity O(1) for finding an item.
Sorted list has logarithmic time complexity O(log n) for finding an item.
Hashtable uses hashing to directly access the item's location.
Sorted list requires binary search to find the item's location.
Hashtable is ideal for large datasets with frequent lookups.
Sorted list is ideal for datasets that re
JSON and XML are the most popular data interchange formats when using APIs.
JSON (JavaScript Object Notation) is a lightweight format that is easy to read and write. It is widely used in web APIs.
XML (Extensible Markup Language) is a more complex format that is also widely used in web APIs.
Other formats include CSV (Comma Separated Values), YAML (YAML Ain't Markup Language), and Protocol Buffers.
Popular APIs for Social Commerce services
Facebook Graph API for social media integration
Instagram API for photo sharing and tagging
Twitter API for real-time updates and customer engagement
Pinterest API for product discovery and sharing
Google Maps API for location-based services
PayPal API for secure payment processing
Use a script to iterate through each HTML page, locate phone numbers, and update their format.
Write a script using a programming language like Python or JavaScript to iterate through each HTML page
Use regular expressions to locate phone numbers in the pages
Update the format of the phone numbers as needed (e.g. adding country code, changing separators)
Save the updated HTML pages with the new phone number format
Designing Google Suggest system
I would start by analyzing user search patterns and frequently searched keywords
Then, I would create a database of these keywords and their associated search results
I would use indexing services to quickly retrieve relevant results for each keyword
I would also implement machine learning algorithms to improve the accuracy of suggestions over time
Check if a number is a power of 2 and odd.
To check if a number is a power of 2, use bitwise AND operator with the number and its predecessor. If the result is 0, it is a power of 2.
To check if a number is odd, use modulus operator with 2. If the result is 1, it is odd.
Example code in Python:
def is_power_of_two(num):
return num & (num - 1) == 0
def is_odd(num):
return num % 2 == 1
By introducing new menu items, optimizing pricing strategy, and improving the overall dining experience.
Conduct a survey to understand the preferences of employees
Introduce healthy and affordable meal options
Offer discounts for bulk orders or loyalty programs
Partner with local vendors to source fresh ingredients
Improve the ambiance and seating arrangements
Implement online ordering and delivery services
Reviewing 30 million ads from 42 languages in Google AdWords and rejecting non-compliant ads requires a systematic approach.
Create a set of specific rules and guidelines for ad compliance
Use automated tools to filter out ads that violate the rules
Assign a team of reviewers to manually check the remaining ads
Ensure that the reviewers are fluent in the languages of the ads they are reviewing
Regularly update the rules and...
ArrayList and LinkedList are both classes in Java that implement the List interface, but they have different underlying data structures.
ArrayList uses a dynamic array to store elements, providing fast random access but slower insertion and deletion.
LinkedList uses a doubly linked list to store elements, providing fast insertion and deletion but slower random access.
Choose ArrayList when you need fast random access and ...
Using synchronized keyword for thread synchronization in Java has advantages like simplicity and disadvantages like potential for deadlock. ReentrantLock offers more flexibility and control.
Advantages of synchronized keyword: simplicity, built-in support in Java
Disadvantages of synchronized keyword: potential for deadlock, lack of flexibility
ReentrantLock offers more control over locking, ability to try and lock with t...
In Java, == compares memory addresses while .equals() compares values of objects. Improper usage can lead to unexpected results.
Use == to compare primitive data types or check if two objects reference the same memory address.
Use .equals() to compare the values of objects, such as strings or custom classes.
Improper usage of == with objects can lead to unexpected results as it compares memory addresses, not values.
The Java garbage collector is responsible for automatically managing memory by reclaiming unused objects.
The garbage collector in Java runs in the background and automatically reclaims memory from objects that are no longer in use.
There are different types of garbage collection algorithms in Java, such as Serial, Parallel, CMS, G1, and ZGC.
Each garbage collection algorithm has its own characteristics and is suitable fo
Java 8 introduced features like lambdas and Stream API which have revolutionized the way Java applications are written.
Lambdas allow for more concise and readable code by enabling functional programming paradigms.
Stream API provides a way to process collections of objects in a functional style, making code more expressive and efficient.
Java 8 also introduced default methods in interfaces, allowing for backward compatib...
Checked exceptions are checked at compile time, while unchecked exceptions are not. Proper handling involves either catching or declaring the exception.
Checked exceptions must be either caught or declared in the method signature using the 'throws' keyword.
Unchecked exceptions do not need to be caught or declared, but can still be handled using try-catch blocks.
Examples of checked exceptions include IOException and Clas...
The Java Memory Model defines how threads interact through memory and how synchronization ensures data consistency.
Java Memory Model specifies how threads interact with memory, ensuring data consistency
It defines rules for reading and writing shared variables in a multithreaded environment
Synchronization mechanisms like synchronized blocks and locks ensure proper visibility and ordering of memory operations
The 'volatil...
Method overloading is when multiple methods have the same name but different parameters, while method overriding is when a subclass provides a specific implementation of a method in its superclass.
Method overloading is achieved within the same class by having multiple methods with the same name but different parameters.
Method overriding occurs in a subclass that provides a specific implementation of a method that is al...
Functional interfaces in Java are interfaces with a single abstract method. They can be used with lambda expressions for functional programming.
Functional interfaces have only one abstract method, but can have multiple default or static methods.
Lambda expressions can be used to implement the abstract method of a functional interface concisely.
An example of a custom functional interface is 'Calculator' with a single abs
Java Stream is a sequence of elements that supports functional-style operations. It differs from Iterator by allowing for more concise and declarative code.
Streams can process elements in a collection in a declarative way, allowing for functional-style operations like map, filter, and reduce.
Streams do not store elements, they operate on the source data structure (e.g., List) directly.
Iterators are used to iterate over...
Immutability in Java means objects cannot be modified after creation. String class achieves immutability by not allowing changes to its value.
Immutability means once an object is created, its state cannot be changed.
String class achieves immutability by making its value final and not providing any methods to modify it.
Advantages of immutable objects include thread safety, caching, and easier debugging.
Example: String s...
final, finally, and finalize have different meanings in Java.
final is a keyword used to declare constants, immutable variables, or prevent method overriding.
finally is a block used in exception handling to execute code after try-catch block.
finalize is a method used for cleanup operations before an object is garbage collected.
Singleton design pattern ensures a class has only one instance and provides a global point of access to it.
Create a private static instance of the class.
Provide a public static method to access the instance.
Use synchronized keyword or double-checked locking to ensure thread safety.
Java annotations are metadata that provide data about a program but do not affect the program itself. They are used in frameworks like Spring to configure and customize behavior.
Java annotations are used to provide metadata about a program, such as information about classes, methods, or fields.
In frameworks like Spring, annotations are used to configure various aspects of the application, such as defining beans, handli...
Java Streams handle parallel processing by splitting the data into multiple chunks and processing them concurrently.
Java Streams use the Fork/Join framework to split the data into chunks and process them in parallel.
Potential pitfalls include increased overhead due to thread management, potential race conditions, and decreased performance for small datasets.
Pitfalls can be mitigated by ensuring thread safety, avoiding ...
ArrayList is preferred for frequent retrieval operations, while LinkedList is suitable for frequent insertions/deletions.
Use ArrayList when you need fast random access and retrieval operations, such as searching for elements in a list.
Choose LinkedList when you need fast insertions/deletions, especially at the beginning or end of the list.
Consider memory overhead and performance trade-offs when deciding between ArrayLi...
ReentrantLock should be used instead of synchronized when more flexibility and control over locking mechanisms is needed.
Use ReentrantLock when you need to implement custom locking strategies or require advanced features like tryLock() and lockInterruptibly()
ReentrantLock supports fair locking mechanisms, ensuring that threads acquire the lock in the order they requested it
ReentrantLock allows for more fine-grained con...
In Java, == checks for reference equality while equals() checks for value equality. Misuse of == can lead to logical errors.
Override equals() when you want to compare the actual content of objects in user-defined classes.
Override hashCode() alongside equals() to ensure consistent behavior in hash-based collections.
Implement Comparable interface and override compareTo() for natural ordering of objects.
Garbage collection in Java automatically reclaims memory occupied by unused objects using different algorithms and memory regions.
Force garbage collection in Java using System.gc() or Runtime.getRuntime().gc()
Not recommended to force garbage collection as it can cause performance issues and disrupt the JVM's optimization
Example: System.gc();
Lambda expressions in Java 8 improve readability and maintainability by allowing concise and functional-style programming.
Lambda expressions reduce boilerplate code by providing a more compact syntax for implementing functional interfaces.
They make code more readable by focusing on the behavior being passed as an argument, rather than the mechanics of how it is implemented.
Lambda expressions enable developers to write ...
What people are saying about Google
I was interviewed in Jan 2025.
ArrayList and LinkedList are both classes in Java that implement the List interface, but they have different underlying data structures.
ArrayList uses a dynamic array to store elements, allowing fast random access but slower insertion and deletion.
LinkedList uses a doubly linked list to store elements, allowing fast insertion and deletion but slower random access.
Choose ArrayList when you need fast random access and kn...
Using synchronized keyword for thread synchronization in Java has advantages like simplicity and disadvantages like potential for deadlock. ReentrantLock offers more flexibility and control.
Advantages of synchronized keyword: simplicity, built-in support in Java
Disadvantages of synchronized keyword: potential for deadlock, lack of flexibility
ReentrantLock offers more control over locking, ability to try and acquire loc
In Java, == compares memory addresses while .equals() compares object contents.
Use == to compare primitive data types and object references.
Use .equals() to compare object contents, such as strings.
Improper usage can lead to unexpected results, as == may not always work as expected with objects.
The Java garbage collector automatically manages memory by reclaiming unused objects.
Java garbage collector runs in the background to reclaim memory from objects that are no longer in use.
Different types of garbage collection algorithms in Java include Serial, Parallel, CMS, G1, and Z Garbage Collector.
For example, Serial GC is a single-threaded collector suitable for small applications, while G1 GC is designed for lar
Java 8 introduced features like lambdas and Stream API which have revolutionized the way Java applications are written.
Lambdas allow for more concise and readable code by enabling functional programming paradigms.
Stream API provides a way to process collections of objects in a functional style, allowing for easier parallel processing and improved performance.
Java 8 also introduced default methods in interfaces, allowin...
Google interview questions for popular designations
posted on 18 Jan 2025
I applied via Company Website and was interviewed in Dec 2024. There were 3 interview rounds.
Get interview-ready with Top Google Interview Questions
I was interviewed in Dec 2024.
Data Analysis and Automation Testing.
Team work and communication
Balancing income and study is possible with proper time management and prioritization.
Prioritize tasks based on importance and deadlines
Create a study schedule that fits around work hours
Utilize breaks at work to study or review material
Consider part-time study options or online courses
Seek financial aid or scholarships to alleviate financial burden
I applied via Approached by Company and was interviewed in Oct 2024. There were 2 interview rounds.
Social networking refers to the use of internet-based platforms to connect with others, share information, and build relationships.
Social networking sites allow users to create profiles, connect with friends, and share updates and photos.
Popular social networking platforms include Facebook, Twitter, Instagram, and LinkedIn.
Social networking can be used for personal connections, professional networking, and marketing pu...
The number of people added in Google is constantly changing due to hiring, acquisitions, and other factors.
Google adds thousands of employees each year through hiring and acquisitions.
As of 2021, Google has over 140,000 employees worldwide.
The exact number of people added in Google can vary depending on the time frame and specific context of the question.
A charts accountant is a professional who specializes in creating and analyzing financial charts and graphs to help businesses make informed decisions.
Charts accountants use data visualization techniques to present financial information in a clear and concise manner.
They often work with software programs like Microsoft Excel or Tableau to create charts and graphs.
Charts accountants help businesses track key performance...
A gaming review is an evaluation of a video game, assessing its gameplay, graphics, sound, and overall quality.
Gaming reviews provide insights into the strengths and weaknesses of a game.
They often include ratings or scores to summarize the reviewer's opinion.
Reviews may also discuss the game's story, mechanics, replay value, and technical performance.
Examples of popular gaming review websites include IGN, GameSpot, an
Very hardworking studying in coding
I applied via Campus Placement
I worked on developing a website for a local non-profit organization.
Collaborated with the organization to understand their needs and goals
Designed a user-friendly interface with donation functionality
Implemented responsive design for mobile compatibility
Tested the website for bugs and usability issues
Provided training to the organization's staff on how to update content
I prioritize tasks by assessing deadlines, importance, and dependencies.
Assess all deadlines and prioritize based on urgency
Consider the importance and impact of each task
Identify any dependencies between tasks and plan accordingly
Break down larger tasks into smaller, manageable sub-tasks
Use tools like to-do lists or project management software to stay organized
I applied via Campus Placement and was interviewed in Sep 2024. There was 1 interview round.
Prioritize tasks based on deadlines, importance, and impact on overall project goals.
Evaluate deadlines and prioritize tasks based on urgency
Consider the importance of each task in relation to project goals
Assess the impact of completing each task on overall project progress
Communicate with stakeholders to understand priorities and expectations
Break down tasks into smaller sub-tasks to manage workload effectively
I handle feedback by actively listening, reflecting on the criticism, and using it to improve my work.
I actively listen to the feedback without getting defensive
I reflect on the criticism to understand the underlying issues
I use the feedback to improve my work and skills
I seek clarification if needed to fully understand the feedback
I appreciate constructive criticism as an opportunity for growth
I applied via AmbitionBox and was interviewed in Dec 2024. There were 2 interview rounds.
Aptitude test for selection.
Data analytics involves analyzing raw data to draw conclusions and make informed decisions.
Data analytics involves collecting, processing, and analyzing data to identify trends and patterns.
It helps businesses make data-driven decisions and improve performance.
Techniques used in data analytics include data mining, machine learning, and statistical analysis.
Examples of data analytics in action include predicting custome...
Data analytics is crucial for extracting insights and patterns from data, and visualizing them in a meaningful way.
Data analytics helps in identifying trends, patterns, and correlations within large datasets.
It enables businesses to make informed decisions based on data-driven insights.
Visualizations such as charts, graphs, and dashboards make complex data easier to understand and interpret.
Data analytics can uncover h...
I applied via Campus Placement and was interviewed in Dec 2024. There were 2 interview rounds.
The coding questions were at Leetcode difficulty level and were derived from the Striver sheet.
Some of the top questions asked at the Google interview -
The duration of Google interview process can vary, but typically it takes about less than 2 weeks to complete.
based on 853 interviews
Interview experience
based on 1.7k reviews
Rating in categories
Bangalore / Bengaluru
3-7 Yrs
Not Disclosed
Software Engineer
1.8k
salaries
| ₹0 L/yr - ₹0 L/yr |
Software Developer
1.1k
salaries
| ₹0 L/yr - ₹0 L/yr |
Senior Software Engineer
680
salaries
| ₹0 L/yr - ₹0 L/yr |
Data Scientist
274
salaries
| ₹0 L/yr - ₹0 L/yr |
Sde1
257
salaries
| ₹0 L/yr - ₹0 L/yr |
Yahoo
Amazon
Microsoft Corporation