Filter interviews by
I applied via Approached by Company and was interviewed before Aug 2023. There were 3 interview rounds.
Focus on Coding, Data Structures, Algorithms, Readable and modular code, Tests
Design a web scale web crawler for efficient and effective data retrieval.
Utilize a distributed architecture to handle large amounts of data and parallel processing.
Implement intelligent crawling strategies to prioritize important pages and avoid duplicate content.
Use efficient data storage and indexing techniques to manage the crawled data effectively.
Consider scalability, fault tolerance, and monitoring for a robust
I handled conflicts by addressing issues directly, listening to all parties involved, and finding a mutually beneficial solution.
Addressed conflicts promptly and directly
Listened to all parties involved to understand their perspectives
Worked towards finding a mutually beneficial solution
Maintained professionalism and respect throughout the conflict resolution process
I had to quickly learn a new programming language for a project deadline.
Researched online tutorials and documentation
Practiced coding exercises to gain proficiency
Sought help from colleagues for guidance
I applied via Otta and was interviewed in Aug 2024. There were 3 interview rounds.
I am a seasoned backend developer with expertise in building scalable and efficient systems.
Over 8 years of experience in backend development
Proficient in languages such as Java, Python, and Node.js
Strong understanding of database management and optimization
Experience with cloud technologies like AWS and Azure
Passionate about writing clean and maintainable code
Led a project to develop a real-time messaging system for a large e-commerce platform
Managed a team of 5 developers to design and implement the messaging system
Coordinated with product managers to gather requirements and prioritize features
Implemented WebSocket technology for real-time communication
Integrated the messaging system with existing user accounts and notifications
Conducted regular code reviews and testing to
Create a web crawler. Focus on clean code SOLID tests. Make it multi threaded.
I applied via Approached by Company and was interviewed before Aug 2023. There was 1 interview round.
Design a web crawler to fetch and index web pages
Start by identifying the target websites and their structure
Implement a system to fetch web pages using HTTP requests
Parse the HTML content to extract relevant information
Store the extracted data in a database for indexing and searching
Implement a scheduling mechanism to regularly crawl and update the data
Top trending discussions
I applied via Approached by Company and was interviewed in May 2023. There were 5 interview rounds.
I was interviewed in Dec 2024.
I chose Flask over Django and FastAPI due to its simplicity, flexibility, and ease of use for smaller projects.
Flask is lightweight and minimalistic, making it easier to set up and use for smaller projects.
Flask allows for more flexibility in terms of project structure and customization compared to Django.
Flask is well-suited for rapid prototyping and smaller applications where simplicity is key.
Django, on the other ha...
Flask request and response block code snippet
Use Flask's request object to access incoming request data
Use Flask's jsonify function to create a JSON response
Handle different HTTP methods like GET, POST, etc. in the route function
ORM stands for Object-Relational Mapping, a programming technique for converting data between incompatible type systems in object-oriented programming languages.
ORM is used to map objects from an application to tables in a relational database.
It simplifies data manipulation by allowing developers to work with objects instead of SQL queries.
Popular ORM tools include Hibernate for Java, Entity Framework for .NET, and Seq
Use ORM code to select item from a table in database.
Use ORM query methods like find(), findOne(), or where() to select items from a table.
Specify the table name and any conditions for the selection.
Example: User.find({ where: { id: 1 } }) will select a user with id 1 from the User table.
Node.js is a runtime environment that allows you to run JavaScript code outside of a web browser.
Node.js is built on Chrome's V8 JavaScript engine.
It uses an event-driven, non-blocking I/O model that makes it lightweight and efficient.
Node.js is commonly used for building server-side applications and APIs.
It has a large ecosystem of open-source libraries and frameworks, such as Express.js.
Middleware is a software component that acts as a bridge between an application's request and response.
Middleware functions have access to the request and response objects
They can modify the request and response objects
Middleware can be used for tasks like authentication, logging, error handling, etc.
A promise is an object representing the eventual completion or failure of an asynchronous operation.
Promises are used to handle asynchronous operations in JavaScript.
They can be in one of three states: pending, fulfilled, or rejected.
Promises can be chained using .then() to handle success and .catch() to handle errors.
Example: new Promise((resolve, reject) => { setTimeout(() => resolve('Done!'), 1000); });
promise.all is a method in JavaScript that takes an array of promises and returns a single promise that resolves when all of the input promises have resolved.
Used to handle multiple asynchronous operations at once
Returns a single promise that resolves when all input promises have resolved
If any of the input promises is rejected, the returned promise is rejected with the reason of the first rejected promise
A callback is a function passed as an argument to another function to be executed later.
Callbacks are commonly used in asynchronous programming to handle tasks that take time to complete.
They are often used in event handling, timers, and AJAX requests.
Callbacks can be synchronous or asynchronous, depending on when they are executed.
Example: setTimeout(callback, 1000) will execute the callback function after 1 second.
I was interviewed in Jul 2024.
Idempotent term in patch and put means that multiple identical requests have the same effect as a single request.
Idempotent means that the result of a successful request is the same regardless of how many times it is repeated.
In PATCH and PUT requests, idempotent means that sending the same request multiple times will not have any additional side effects.
For example, if a PATCH request updates a resource with specific ...
Java memory types and where objects are stored
Java memory consists of stack and heap
Primitive data types are stored in stack
Objects and arrays are stored in heap
References to objects are stored in stack
Example: int num = 5; // num is stored in stack, value 5 is stored in stack
Example: String str = new String(); // str reference is stored in stack, actual String object is stored in heap
Yes, hash map stores unique keys.
Hash map in Java does not allow duplicate keys. If you try to insert a duplicate key, it will replace the existing value with the new one.
However, hash map allows duplicate values.
Example: HashMap
Java 8 introduced new methods for HashMap such as forEach, compute, merge, etc.
Java 8 introduced new methods like forEach, compute, merge for HashMap operations
Java 8 allows using lambda expressions for iterating over HashMap entries
Java 8 introduced default methods in Map interface for HashMap
No, static methods or variables cannot be created inside static main() method.
Static methods or variables cannot be created inside another static method.
Static methods or variables can only be created at the class level, outside of any method.
Example: public class MyClass { static int myVariable = 10; }
Array,Tree, Behaviour questions 2 hr duration easy-medium
Topological sort can be used to traverse an array of strings in a specific order.
Topological sort is used to order elements based on their dependencies.
In the context of array traversal, we can use topological sort to determine the order in which strings should be processed.
For example, if strings represent tasks and their dependencies, we can use topological sort to ensure tasks are executed in the correct order.
The rightmost node in an almost complete binary search tree is the last node in the last level of the tree.
In an almost complete binary search tree, all levels are completely filled except possibly for the last level, which is filled from left to right.
To find the rightmost node, start at the root and traverse the tree by always going to the right child until reaching the last level.
The rightmost node will be the last
I am a passionate Backend Developer with 5 years of experience in building scalable and efficient web applications.
5 years of experience in backend development
Proficient in programming languages like Java, Python, and Node.js
Strong understanding of database management systems such as MySQL and MongoDB
Experience in developing RESTful APIs and microservices
Familiar with cloud technologies like AWS and Azure
Interview experience
Paytm
PhonePe
Payed
Razorpay