Paytm
30+ Amadasoft Interview Questions and Answers
Aahad and Harshit always have fun by solving problems. Harshit took a sorted array consisting of distinct integers and rotated it clockwise by an unknown amount. For example, he to...read more
You are given a Singly Linked List of integers and a positive integer 'K'. Modify the linked list by reversing every alternate 'K' nodes of the linked list.
A singly linked list is a ty...read more
Design a search service to get relevant results for travel.
Q4. Infinite scroll - how to handle large size data, efficient and smooth loading by scrolling up & down.
To handle large size data for infinite scroll, use virtual scrolling, lazy loading, and optimize data fetching/rendering.
Implement virtual scrolling to render only the visible items on the screen, reducing memory usage and improving performance.
Use lazy loading to fetch more data as the user scrolls, avoiding loading all data at once.
Optimize data fetching and rendering by using efficient algorithms and data structures, and minimizing unnecessary operations.
Consider implement...read more
Q5. What is kafka and your use case where you have used
Kafka is a distributed streaming platform used for building real-time data pipelines and streaming applications.
Kafka is used for real-time data processing, messaging, and event streaming.
It provides high-throughput, fault-tolerant, and scalable messaging system.
Example use case: Implementing a real-time analytics dashboard for monitoring website traffic.
Q6. remove char sequence with a particular number like aaaabcbd remove aaaa
Answering how to remove a character sequence with a particular number from a string.
Identify the character sequence to be removed
Use string manipulation functions to remove the sequence
Repeat until all instances of the sequence are removed
Q7. Create Traffic Lights in react.js with lights changing color with time config
Create a traffic light simulation in react.js with changing colors based on time configuration.
Use React state to manage the current color of the traffic light
Set up a timer to change the color of the traffic light at specified intervals
Use CSS to style the traffic light and different colors for each light
Q8. Write code to find character at given position after expanding the given regex string.
Code to find character at given position after expanding regex string
Use a regex engine to expand the given regex string
Find the substring that matches the given position
Return the character at that position in the substring
Q9. given date, month and year, write a logic to add days to the given date
Logic to add days to a given date
Convert date, month, year to a date object
Use date object's built-in method to add days
Convert the updated date object back to date, month, year format
Q10. How to acheive responsive acrooss all screen sizes
Achieve responsive design by using media queries, flexible layouts, and fluid grids.
Use media queries to adjust styles based on screen size
Create flexible layouts that adapt to different screen sizes
Implement fluid grids to ensure content scales proportionally
Q11. Whole garbage collector and its process in java
Garbage collector in Java manages memory allocation and deallocation automatically.
Garbage collector runs in the background and frees up memory that is no longer in use.
It uses different algorithms like Mark and Sweep, Copying, and Generational.
System.gc() can be used to request garbage collection, but it's not guaranteed to run immediately.
Garbage collector can cause performance issues if not tuned properly.
Java provides tools like jstat and jvisualvm to monitor and analyze ...read more
Q12. what is mean by indexing in database
Indexing in database is a way to optimize search queries by creating a data structure that allows for faster retrieval of data.
Indexing involves creating a separate table that contains the indexed columns and their corresponding row locations.
Indexes can be created on one or multiple columns.
Indexes can be clustered or non-clustered.
Examples of indexing include primary keys, foreign keys, and unique constraints.
Q13. Write program for internal implementation of hash map
Program for internal implementation of hash map
Define a hash function to map keys to indices in an array
Create an array of linked lists to handle collisions
Implement methods for adding, removing, and retrieving key-value pairs
Consider resizing the array when it becomes too full
Handle edge cases such as null keys or values
Q14. Rotate Given 2D matrix 90' anticlockwise.
Rotate a 2D matrix 90' anticlockwise
Transpose the matrix
Reverse each row of the transposed matrix
Alternatively, swap elements in each row with their corresponding elements in the opposite row
Time complexity: O(n^2), Space complexity: O(1)
Q15. Design BookMyShow low level design
BookMyShow low level design for ticket booking system
Use microservices architecture for scalability and flexibility
Implement user authentication and authorization for secure transactions
Utilize databases for storing user and event information
Include payment gateway integration for seamless transactions
Q16. Design System for Chat Application
Design a system for a chat application
Use WebSocket for real-time communication
Implement message queuing for reliable message delivery
Include features like read receipts, typing indicators, and message history
Design a user-friendly interface with customizable themes and emojis
Ensure end-to-end encryption for secure communication
Q17. Find transpose of given square matrix
Transpose of a square matrix
Iterate through each row and column of the matrix
Swap the elements at (i,j) and (j,i) positions
Return the transposed matrix
Q18. create language change functionality using useContext and useReducer
Implement language change functionality using useContext and useReducer
Create a LanguageContext to store the current language state
Use useReducer to handle state changes for language selection
Dispatch actions to update the language state based on user selection
Q19. Design round | Design a notification service
Design a notification service for sending real-time alerts to users.
Use a scalable messaging system like Kafka or RabbitMQ to handle high volume of notifications.
Implement a user preference system to allow users to choose their preferred notification channels (email, SMS, push notifications, etc).
Include a scheduling feature to send notifications at specific times or intervals.
Ensure notifications are personalized and relevant to each user based on their activity or preferenc...read more
Q20. Polyfills of map, reduce, call, apply
Polyfills are used to provide fallback support for older browsers that do not support certain JavaScript methods like map, reduce, call, and apply.
Polyfills are JavaScript code that replicate the functionality of newer features in older browsers.
They are commonly used for methods like map, reduce, call, and apply which may not be supported in all browsers.
For example, a polyfill for the map method would involve iterating over an array and applying a function to each element.
P...read more
Q21. Segregation of number in an array
Segregate numbers in an array of strings based on odd/even
Iterate through the array and separate odd and even numbers into two separate arrays
Use parseInt() to convert strings to numbers for comparison
Return the two arrays of odd and even numbers
Q22. explain lambda expression in java
Lambda expression is a concise way to represent anonymous functions in Java.
Lambda expressions were introduced in Java 8.
They are used to implement functional interfaces.
They reduce the amount of boilerplate code needed for anonymous classes.
Syntax: (parameters) -> expression or (parameters) -> { statements; }
Example: (x, y) -> x + y or (x, y) -> { return x + y; }
Q23. find second best player among n player
Find the second best player among n players.
Sort the players based on their scores and pick the second highest score.
If scores are not available, find the second highest rank or position.
If there are ties for first place, the second best player may be the third or fourth best player.
If there are ties for second place, there may not be a clear second best player.
Q24. Web app Optimization Techniques
Web app optimization techniques focus on improving performance and user experience.
Minify and compress CSS, JavaScript, and HTML files
Optimize images and use lazy loading
Reduce server response time by caching data and using CDNs
Implement asynchronous loading for non-essential resources
Use browser caching and enable Gzip compression
Q25. Serverside vs clientside rendering
Serverside rendering is when the HTML is generated on the server before being sent to the client, while clientside rendering is when the HTML is generated on the client's browser using JavaScript.
Serverside rendering is better for SEO as search engines can easily crawl the content.
Clientside rendering can provide a faster initial load time as only data is sent from the server.
Serverside rendering is more secure as sensitive data is not exposed to the client.
Clientside renderi...read more
Q26. Microservices vs Monolithic architecture
Microservices allow for modular and scalable architecture, while monolithic architecture is simpler but less flexible.
Microservices break down applications into smaller, independent services that communicate through APIs.
Monolithic architecture involves building the entire application as a single unit, making it easier to develop but harder to scale.
Microservices offer better fault isolation and scalability, while monolithic architecture is easier to deploy and manage.
Example...read more
Q27. Rain water trapping dsa problem
Rain water trapping problem involves calculating the amount of rainwater that can be trapped between buildings.
Calculate the maximum height of water that can be trapped at each index
Calculate the water trapped at each index by subtracting the height of the building at that index
Sum up the water trapped at each index to get the total amount of rainwater trapped
Q28. explain streams in java
Streams in Java are a sequence of elements that can be processed in parallel or sequentially.
Streams are used to perform operations on collections of data.
They can be used to filter, map, reduce, and sort data.
Streams can be processed in parallel to improve performance.
Examples include using streams to filter a list of names or map a list of numbers to their squares.
Q29. disadvantages of indexing
Indexing can lead to increased storage requirements and slower write performance.
Indexing can increase the size of the database as additional data structures are created to support the index.
Indexes can slow down write operations as the database must update both the data and the index.
Indexes can become fragmented over time, leading to decreased performance.
Indexes can also lead to increased memory usage and CPU overhead.
In some cases, indexing may not be necessary or may eve...read more
Q30. Oops concepts explanation with framework
Explanation of OOP concepts with framework
OOP concepts include encapsulation, inheritance, and polymorphism
Encapsulation allows bundling of data and methods into a single unit
Inheritance enables the creation of new classes based on existing ones
Polymorphism allows objects of different classes to be treated as the same type
Frameworks provide a structure and set of tools for developing software applications
Frameworks often implement OOP principles to provide reusable components...read more
Q31. Design lru cache and code
LRU cache is a data structure that stores a fixed number of items and removes the least recently used item when the cache is full.
Use a combination of a doubly linked list and a hashmap to implement the LRU cache.
When an item is accessed, move it to the front of the linked list to mark it as the most recently used item.
When adding a new item, check if the cache is full. If it is full, remove the least recently used item from the end of the linked list.
Use a hashmap to store t...read more
Q32. Design movie ticket system
Design a movie ticket system
Create a database to store movie details, showtimes, and seat availability
Implement a user interface for customers to select movies, seats, and purchase tickets
Develop a ticketing algorithm to handle seat reservations and prevent double bookings
Include features like seat selection, payment processing, and ticket confirmation
Consider scalability and performance for handling high traffic during peak times
Q33. HLD Design along with LLD
HLD (High-Level Design) and LLD (Low-Level Design) are two stages in software design process.
HLD focuses on system architecture and overall design.
LLD focuses on detailed design of individual components.
HLD defines the structure and behavior of the system.
LLD defines the implementation details of each component.
HLD is more abstract and conceptual.
LLD is more concrete and specific.
HLD helps in understanding the system's functionality and interactions.
LLD helps in understanding...read more
Q34. Create useDebounce hook
Custom hook for debouncing user input in React applications
Accepts a value and delay as arguments
Uses useEffect to set a timeout to update the debounced value after the specified delay
Returns the debounced value and a function to update the input value
Q35. java 8 new added features
Java 8 introduced several new features including lambda expressions, streams, functional interfaces, and default methods.
Lambda expressions allow you to write code in a more concise and readable way.
Streams provide a new way to work with collections in a functional style.
Functional interfaces are interfaces with a single abstract method, enabling the use of lambda expressions.
Default methods allow interfaces to have method implementations.
Some other features include the new D...read more
Interview Process at Amadasoft
Top Senior Software Engineer Interview Questions from Similar Companies
Reviews
Interviews
Salaries
Users/Month