i
Amazon
Proud winner of ABECA 2024 - AmbitionBox Employee Choice Awards
Filter interviews by
I applied via Company Website and was interviewed in Sep 2022. There were 2 interview rounds.
Python is a high-level programming language known for its simplicity and readability.
Python is an interpreted language, meaning it does not need to be compiled before running.
It has a large standard library that provides many pre-built functions and modules.
Python supports multiple programming paradigms, including procedural, object-oriented, and functional programming.
It is widely used in web development, data analysi...
Python benefits include simplicity, versatility, and a large community support.
Python is easy to learn and read, making it a great language for beginners.
Python has a wide range of applications, from web development to data analysis and machine learning.
Python has a large and active community, providing extensive documentation, libraries, and frameworks.
Python's simplicity and readability contribute to faster developme...
Python has 35 keywords.
Python has a set of reserved words that cannot be used as variable names or identifiers.
These keywords are used to define the syntax and structure of the Python language.
Examples of Python keywords include 'if', 'else', 'for', 'while', 'def', 'class', 'import', etc.
A set is an unordered collection of unique elements in Python.
Sets are created using curly braces or the set() function.
Sets do not allow duplicate elements.
Sets can perform mathematical operations like union, intersection, difference, and symmetric difference.
Sets are mutable, meaning you can add or remove elements from a set.
Sets are useful for removing duplicates from a list or checking for membership of an element.
Lists are mutable while tuples are immutable.
Lists are enclosed in square brackets [], while tuples are enclosed in parentheses ().
Elements in a list can be added, removed or modified, while elements in a tuple cannot be modified.
Lists are used for collections of homogeneous items, while tuples are used for collections of heterogeneous items.
Lists are generally used for sequences that need to be modified frequently, wh...
I appeared for an interview before Dec 2020.
Round duration - 90 minutes
Round difficulty - Hard
This was an online coding round where we were supposed to solve 2 questions under 90 minutes . Both the questions in my set were related to Graphs and were quite tricky and heavy to implement.
Given a directed graph with a specified number of vertices V
and edges E
, your task is to calculate the total number of distinct paths from a given source node S
to all ot...
Calculate the total number of distinct paths from a given source node to all other nodes in a directed graph.
Use dynamic programming to keep track of the number of paths from the source node to each node in the graph.
Consider using modular arithmetic to handle large numbers and prevent overflow.
Start by initializing the number of paths from the source node to itself as 1.
Iterate through the edges of the graph and updat...
You are provided with a number of courses 'N', some of which have prerequisites. There is a matrix named 'PREREQUISITES' of size 'M' x 2. This matrix indicates that fo...
Given courses with prerequisites, determine a valid order to complete all courses.
Use topological sorting to find a valid order of courses.
Create a graph with courses as nodes and prerequisites as edges.
Start with courses that have no prerequisites and remove them from the graph.
Continue this process until all courses are taken or there are no valid courses left.
If there is a cycle in the graph, it is impossible to com
Round duration - 60 Minutes
Round difficulty - Medium
This was a Data Structures and Algorithms round with some standard questions . I was expected to come up with an
efficient approach and code it as well .
You are provided with 'N' intervals, each containing two integers denoting the start time and end time of the interval.
Your task is to merge all overlapping intervals a...
Merge overlapping intervals and return sorted list of merged intervals.
Sort the intervals based on start times.
Iterate through intervals and merge overlapping intervals.
Return the merged intervals in sorted order.
Given a 2-dimensional binary matrix called Mat
of size N x M that consists solely of 0s and 1s, find the length of the longest path from a specified source cell to a destina...
Find the length of the longest path from a source cell to a destination cell in a binary matrix.
Use depth-first search (DFS) to explore all possible paths from source to destination.
Keep track of visited cells to avoid revisiting them.
Return the length of the longest path found, or -1 if no path exists.
Round duration - 50 Minutes
Round difficulty - Medium
This was also a DSA round where I was asked to code only one of the questions but I eventually ended up coding both
as I had some spare time and explained my approches very smoothly to the interviewer . This round went preety well .
Given an array of integers with 'N' elements, determine the length of the longest subsequence where each element is greater than the previous element. This...
Find the length of the longest strictly increasing subsequence in an array of integers.
Use dynamic programming to solve this problem efficiently.
Initialize an array to store the length of the longest increasing subsequence ending at each index.
Iterate through the array and update the length of the longest increasing subsequence for each element.
Return the maximum value in the array as the result.
Given a rotated sorted array ARR
of size 'N' and an integer 'K', determine the index at which 'K' is present in the array.
1. If 'K' is not present...
Given a rotated sorted array, find the index of a given integer 'K'.
Use binary search to find the pivot point where the array is rotated.
Then perform binary search on the appropriate half of the array to find 'K'.
Handle cases where 'K' is not present in the array by returning -1.
Round duration - 50 Minutes
Round difficulty - Medium
This was also a DSA round with 2 questions of Medium to Hard difficulty . I was expected to follow some clean code and OOPS principles to write the code in this round .
Given an array of integers ARR
and an integer K
, determine the rank of the element ARR[K]
.
The rank of any element in ARR
is defined as the number of elem...
Given an array and an index, find the number of elements smaller than the element at that index appearing before it in the array.
Iterate through the array up to index K and count the number of elements smaller than ARR[K].
Return the count as the rank of ARR[K].
Handle edge cases like empty array or invalid index K.
Design a data structure for a Least Recently Used (LRU) cache that supports the following operations:
1. get(key)
- Return the value of the key if it exists in the cache; otherw...
Design a Least Recently Used (LRU) cache data structure that supports get and put operations with capacity constraint.
Implement a doubly linked list to maintain the order of recently used keys.
Use a hashmap to store key-value pairs for quick access.
Update the order of keys in the linked list on get and put operations.
Evict the least recently used key when the cache reaches its capacity.
Tip 1 : Must do Previously asked Interview as well as Online Test Questions.
Tip 2 : Go through all the previous interview experiences from Codestudio and Leetcode.
Tip 3 : Do at-least 2 good projects and you must know every bit of them.
Tip 1 : Have at-least 2 good projects explained in short with all important points covered.
Tip 2 : Every skill must be mentioned.
Tip 3 : Focus on skills, projects and experiences more.
I appeared for an interview before Mar 2021.
Round duration - 60 minutes
Round difficulty - Easy
In first round they asked me 2 coding questions where he asked me to code as close as possible to the actual one.
Ninja is tasked with merging two given sorted integer arrays ARR1
and ARR2
of sizes 'M' and 'N', respectively, such that the merged result is a single sorted array w...
Merge two sorted arrays into one sorted array in place.
Use two pointers to compare elements from both arrays and place them in the correct position in ARR1.
Start from the end of ARR1 and compare elements from both arrays, placing the larger element at the end of ARR1.
Continue this process until all elements from ARR2 are merged into ARR1.
Given a document represented as an array/list ARR
of words with length N
, find the smallest distance between two given words for multiple queries. The distance is defined as the ...
Find the smallest distance between two words in a document for multiple queries.
Iterate through the document array to find the indices of the two words in each query.
Calculate the absolute difference between the indices to get the distance.
If a word from the query is not present in the document, return the length of the document array.
Repeat the process for each query and output the smallest distance for each.
Round duration - 60 minutes
Round difficulty - Easy
Then in the second round they asked a little about tree and told me to code 2 codes.
Given a binary tree of integers, return the level order traversal of the binary tree.
The first line contains an integer 'T', representing the number of te...
The problem requires implementing a function to return the level order traversal of a binary tree.
Implement a function that takes the root of the binary tree as input and returns the level order traversal of the tree.
Use a queue data structure to perform level order traversal.
Process each level of the tree one by one, starting from the root node.
Print the node values at each level in the order they appear from left to ...
Given an array of distinct positive integers ARR
and a non-negative integer 'B', find all unique combinations in the array where the sum is equal to 'B'. Numbers can be c...
Find all unique combinations in an array where the sum is equal to a given target sum, with elements in non-decreasing order.
Use backtracking to generate all possible combinations.
Sort the array to ensure elements are in non-decreasing order.
Track the current combination and sum while backtracking.
Terminate recursion when the sum equals the target sum.
Avoid duplicates by skipping elements that have been used in previou
Round duration - 30 minutes
Round difficulty - Easy
HR round with typical behavioral problems.
Tip 1 : Must do Previously asked Interview as well as Online Test Questions.
Tip 2 : Go through all the previous interview experiences from Codestudio and Leetcode.
Tip 3 : Do at-least 2 good projects and you must know every bit of them.
Tip 1 : Have at-least 2 good projects explained in short with all important points covered.
Tip 2 : Every skill must be mentioned.
Tip 3 : Focus on skills, projects and experiences more.
I appeared for an interview before Mar 2021.
Round duration - 60 minutes
Round difficulty - Medium
This was a online test round where I was given 3 DSA questions to be solved in 60 minutes.
You are provided with a number of stairs, and initially, you are located at the 0th stair. You need to reach the Nth stair, and you can climb one or tw...
The problem involves finding the number of distinct ways to climb to the Nth stair by taking one or two steps at a time.
Use dynamic programming to solve the problem efficiently.
The number of ways to reach the Nth stair is the sum of the number of ways to reach the (N-1)th stair and the (N-2)th stair.
Handle base cases for N=0 and N=1 separately.
Consider using modulo 10^9+7 to avoid overflow in calculations.
You are playing a coin game with your friend Ninjax. There are N
coins placed in a straight line.
Here are the rules of the game:
1. Each coin has a value associated wit...
The problem involves finding the optimal strategy to accumulate the maximum amount in a coin game with specific rules.
Start by understanding the rules of the game and how players take turns to choose coins.
Consider the scenario where both players play optimally to maximize winnings.
Iterate through different strategies to determine the best approach for selecting coins.
Keep track of the total winnings accumulated by eac...
Given an integer N
, your task is to create all possible valid parentheses configurations that are well-formed using N
pairs. A sequence of parentheses is considered w...
Generate all possible valid parentheses configurations using N pairs.
Use backtracking to generate all possible combinations of parentheses.
Keep track of the number of open and close parentheses used.
Add '(' if there are remaining open parentheses, and add ')' if there are remaining close parentheses.
Base case: when the length of the generated string is 2*N, add it to the result array.
Tip 1 : Must do Previously asked Interview as well as Online Test Questions.
Tip 2 : Go through all the previous interview experiences from Codestudio and Leetcode.
Tip 3 : Do at-least 2 good projects and you must know every bit of them.
Tip 1 : Have at-least 2 good projects explained in short with all important points covered.
Tip 2 : Every skill must be mentioned.
Tip 3 : Focus on skills, projects and experiences more.
I appeared for an interview before Jan 2021.
Round duration - 120 minutes
Round difficulty - Easy
Hello everyone! Expedia came to our campus for full time hiring of final year students. They had shortlisted candidates for the interviews by taking an online test comprised of four sections (Quantitative, C, Logical and English). Every section had a timer attached to it, so you need to think and answer quickly. Although, the questions were easy but cutoff was quite high. This round was followed by a coding round, comprised of two questions.
You are provided with a Circular Linked List of integers and a specific integer, referred to as 'key'
.
Your task is to implement a function that locates the spec...
Implement a function to delete a specific key from a Circular Linked List of integers.
Traverse the Circular Linked List to find the key to be deleted.
Adjust the pointers to remove the node containing the key.
Handle the case where the Circular Linked List becomes empty after deletion.
Return -1 if the Circular Linked List is empty after deletion.
In computing, a page fault occurs when a process accesses a memory page that is not currently mapped by the memory management unit. To handle new pages being b...
The problem involves determining the number of page faults using the Least Recently Used (LRU) replacement algorithm.
Page faults occur when a process accesses a memory page not currently mapped by the memory management unit.
Page replacement algorithm like LRU is used to decide which existing page should be replaced.
The goal is to calculate the number of page faults based on the given input sequences and memory capacity...
Round duration - 60 minutes
Round difficulty - Easy
The man who was taking my first round was my alumni. He started-off by asking my introduction and then gave me 2 programming questions to code. He then navigated on to my Codechef profile and asked a question that I did in the June 14 Long Contest. I explained him and he was satisfied.
Tips : You don’t have to answer the stuffs quickly, rather you need to develop some test cases and have some discussion regarding the structure of the problem, and then answer.
Determine if a given singly linked list of integers forms a cycle or not.
A cycle in a linked list occurs when a node's next
points back to a previous node in the ...
Detect if a singly linked list forms a cycle by checking if a node's next points back to a previous node.
Traverse the linked list using two pointers, one moving one step at a time and the other moving two steps at a time.
If the two pointers meet at any point, it indicates the presence of a cycle in the linked list.
Use Floyd's Cycle Detection Algorithm for efficient detection of cycles in a linked list.
Given an array of integers ARR
of size N
and an integer target
, find three integers in ARR
such that their sum is closest to the target
. If there are two closest sums, return...
Find three integers in an array whose sum is closest to a given target, return the smallest sum if there are two closest sums.
Iterate through all possible triplets in the array to find the sum closest to the target.
Keep track of the closest sum found so far and update it if a closer sum is found.
Return the closest sum at the end of the iteration.
Tip 1 : Must do Previously asked Interview as well as Online Test Questions.
Tip 2 : Go through all the previous interview experiences from Codestudio and Leetcode.
Tip 3 : Do at-least 2 good projects and you must know every bit of them.
Tip 1 : Have at-least 2 good projects explained in short with all important points covered.
Tip 2 : Every skill must be mentioned.
Tip 3 : Focus on skills, projects and experiences more.
Indexes in MySQL are used to improve query performance by allowing faster data retrieval.
Indexes are created on one or more columns of a table.
They work by creating a separate data structure that allows for faster data retrieval.
Indexes can be created using the CREATE INDEX statement.
Indexes can also be dropped using the DROP INDEX statement.
Indexes can be used to speed up SELECT, UPDATE, and DELETE statements.
Indexes ...
include_once and require_once are PHP functions used to include files. The difference is in how they handle errors.
include_once will only include the file once, and will not throw a fatal error if the file is not found
require_once will also only include the file once, but will throw a fatal error if the file is not found
Both functions are used to include files that contain functions or variables that are needed in the
Sessions and cookies are both used for maintaining user state, but sessions are server-side and cookies are client-side.
Sessions store user data on the server, while cookies store data on the client's browser
Sessions are more secure than cookies because the data is not accessible to the client
Cookies can be used for tracking user behavior and preferences
Sessions are typically used for authentication and authorization p...
To find missing number in an array of first n numbers.
Calculate the sum of first n numbers using formula n*(n+1)/2
Calculate the sum of given array using loop
Subtract the sum of array from sum of first n numbers to get the missing number
Design a database schema for a chat application with individual and group messaging.
Create a 'users' table with unique user IDs
Create a 'messages' table with message IDs, sender and receiver IDs, message content, and timestamp
Create a 'groups' table with unique group IDs and group names
Create a 'group_members' table with group ID and user ID to track group membership
Use foreign keys to link tables together
Consider inde
SQL query to retrieve all unread messages upon user sign in
Use a JOIN statement to combine the messages and user tables
Filter the results to only show messages that have not been read by the user
Use the user's sign in information to identify which messages are unread
I am excited to join OLX because of its innovative approach to online marketplaces and its commitment to customer satisfaction.
I am impressed by OLX's user-friendly platform and its ability to connect buyers and sellers from all over the world.
I am excited to work with a team of talented developers who are passionate about creating cutting-edge technology.
I believe that OLX's focus on customer satisfaction aligns with ...
I have faced difficulties in debugging complex code and managing project timelines.
Debugging complex code with multiple dependencies
Managing project timelines with changing requirements
Working with legacy code and outdated technologies
Collaborating with team members in different time zones
Dealing with unexpected bugs and errors
I report to the Technical Lead and am part of the development team.
I report to the Technical Lead
I am part of the development team
Our website receives an average of 10,000 unique visitors per day.
Our website has a steady flow of traffic with a consistent number of unique visitors per day.
We use Google Analytics to track our web traffic and analyze user behavior.
Our peak traffic times are during weekdays from 9am to 5pm.
We have noticed an increase in mobile traffic over the past year.
Our website's traffic is primarily driven by organic search and
I appeared for an interview before Dec 2020.
Round duration - 60 Minutes
Round difficulty - Medium
This was a Data Structures and Algorithms round with preety good questions . I was expected to come up with an efficient approach and code it as well .
Your house is located at the origin (0,0) of a 2-D plane. There are N
neighbors living at different points on the plane. Your goal is to visit exactly K
neighb...
Find the K closest points to the origin in a 2-D plane using Euclidean Distance.
Calculate the Euclidean Distance of each point from the origin
Sort the points based on their distances
Return the first K points as the closest neighbors
Given a sorted array of 'N' integers, your task is to generate the power set for this array. Each subset of this power set should be individually sorted.
A power set of a set 'ARR' i...
Generate the power set of a sorted array of integers with individually sorted subsets.
Use recursion to generate all possible subsets by including or excluding each element in the array.
Sort each subset before adding it to the power set.
Handle base cases for empty array and single element array.
Ensure the subsets are unique by using a set data structure.
Time complexity can be exponential due to the nature of generating
Round duration - 50 Minutes
Round difficulty - Hard
This was also a DSA round where I was asked to code only one of the questions but I eventually ended up coding both as I had some spare time and explained my approches very smoothly to the interviewer . This round went preety well .
Convert a string representing a Roman numeral into its integer equivalent and return the result.
Roman numerals are represented by seven different symbol...
Convert a Roman numeral string to its integer equivalent.
Create a mapping of Roman numeral symbols to their integer values.
Iterate through the input string and add the corresponding integer values.
Handle cases where subtraction is needed (e.g., IV = 4, IX = 9).
You are given an integer array 'ARR' of size 'N' and an integer 'S'. Your task is to find and return a list of all pairs of elements where each sum of a pair equals 'S'.
Find pairs of elements in an array that sum up to a given value, sorted in a specific order.
Iterate through the array and for each element, check if the complement (S - current element) exists in a hash set.
If the complement exists, add the pair to the result list.
Sort the result list based on the criteria mentioned in the question.
Return the sorted list of pairs.
Round duration - 50 Minutes
Round difficulty - Medium
This was also a DSA round with 2 questions . One was implementation heavy and the other was related to recursion and so I handled it carefully so that my code does not run into TLE or Segmentation Fault.
You are provided with a string expression
consisting of characters '+', '-', '*', '/', '(', ')' and digits '0' to '9', representing an arithmetic express...
Evaluate arithmetic expressions in infix notation with given operators and precedence rules.
Parse the infix expression to postfix using a stack.
Evaluate the postfix expression using a stack.
Handle operator precedence and parentheses while evaluating.
Ensure no division by zero cases and operands fit in 32-bit integer.
You are given a sorted integer array ARR
of size N
. Your task is to remove the duplicates in such a way that each element appears only once. The outpu...
Remove duplicates from a sorted array in-place with O(1) extra memory.
Use two pointers - one for iterating through the array and another for placing unique elements.
Compare current element with next element to identify duplicates and skip them.
Update array in-place by moving unique elements to the front.
Return the length of the array after removal of duplicates.
Round duration - 50 Minutes
Round difficulty - Medium
This was a typical System Design round where I was asked about the various features of Facebook and what sort of data structures and algorithms are used in implementing them .
Facebook stores likes and dislikes using a combination of databases and algorithms.
Likes and dislikes are stored in databases such as MySQL or Cassandra.
Algorithms are used to analyze user behavior and recommend content based on likes and dislikes.
User interactions with posts, pages, and ads are tracked to determine likes and dislikes.
Likes and dislikes may also be used to personalize the user's feed and target ads mor
Facebook implements graph search using a graph database to efficiently search for connections between users and their interests.
Facebook uses a graph database to store connections between users, pages, groups, etc.
The graph search algorithm traverses the graph to find relevant connections based on user queries.
It takes into account factors like user relationships, interests, and interactions to provide personalized sea
Round duration - 50 Minutes
Round difficulty - Medium
This was a preety intense round as I was grilled more on my System Design concepts but eventually I was able to asnwers all the questions with some help from the interviewer.
Hadoop is a framework for distributed storage and processing of large data sets.
Hadoop is used for storing and processing big data across a distributed network of computers.
It is based on the MapReduce programming model, which allows for parallel processing of data.
Hadoop consists of HDFS for storage and YARN for resource management.
It is used for tasks like data warehousing, log processing, recommendation systems, and...
Facebook Chat works by using a combination of websockets, long polling, and push technology to deliver real-time messaging.
Facebook Chat uses websockets for real-time communication between the client and server.
Long polling is used to check for new messages when websockets are not supported.
Push technology is used to notify users of new messages even when the chat window is not open.
Messages are stored in a database an...
Tip 1 : Must do Previously asked Interview as well as Online Test Questions.
Tip 2 : Go through all the previous interview experiences from Codestudio and Leetcode.
Tip 3 : Do at-least 2 good projects and you must know every bit of them.
Tip 1 : Have at-least 2 good projects explained in short with all important points covered.
Tip 2 : Every skill must be mentioned.
Tip 3 : Focus on skills, projects and experiences more.
based on 3 reviews
Rating in categories
Customer Service Associate
4.2k
salaries
| ₹0.6 L/yr - ₹6.8 L/yr |
Transaction Risk Investigator
3.1k
salaries
| ₹2 L/yr - ₹6.1 L/yr |
Associate
2.9k
salaries
| ₹0.8 L/yr - ₹7 L/yr |
Senior Associate
2.5k
salaries
| ₹2 L/yr - ₹10.5 L/yr |
Program Manager
2.2k
salaries
| ₹9 L/yr - ₹37 L/yr |
Flipkart
TCS
Netflix