Filter interviews by
Clear (1)
I applied via Approached by Company and was interviewed in Jan 2023. There were 4 interview rounds.
Multiple choice question asked
Top trending discussions
posted on 22 Oct 2024
posted on 11 Mar 2022
I was interviewed in Oct 2021.
Round duration - 60 Minutes
Round difficulty - Medium
This round had 1 very simple coding problem followed by some questions from Java and Spring.
Given a column title as it appears in an Excel sheet, your task is to return its corresponding column number.
S = "AB"
28
The seq...
Convert Excel column title to corresponding column number.
Iterate through the characters in the input string from right to left
Calculate the corresponding value of each character based on its position and multiply by 26^position
Sum up all the values to get the final column number
Lambda expression in Java is a concise way to represent a method implementation. It is related to functional interfaces by providing a single abstract method implementation.
Lambda expressions allow you to write concise code by providing a way to represent a method implementation in a more compact form.
Functional interfaces are interfaces with a single abstract method. Lambda expressions can be used to provide the imple...
Java 8 streams are a sequence of elements that support functional-style operations.
Streams allow for processing collections of data in a declarative way.
They support operations like filter, map, reduce, and collect.
Streams can be sequential or parallel, allowing for efficient processing of large datasets.
Example: List<String> names = Arrays.asList("Alice", "Bob", "Charlie"); Stream<String> stream = names.st
Autowiring in Spring Boot is a feature that allows Spring to automatically inject dependencies into a Spring bean.
Autowiring eliminates the need for explicit bean wiring in the Spring configuration file.
There are different modes of autowiring in Spring Boot: 'byName', 'byType', 'constructor', 'autodetect', and 'no'.
For example, in 'byName' mode, Spring looks for a bean with the same name as the property that needs to b
The @SpringBootApplication annotation is used to mark the main class of a Spring Boot application.
It is a combination of @Configuration, @EnableAutoConfiguration, and @ComponentScan annotations.
It tells Spring Boot to start adding beans based on classpath settings, other beans, and various property settings.
It is often placed on the main class that contains the main method to bootstrap the Spring Boot application.
Spring Boot offers basic annotations like @SpringBootApplication, @RestController, @Autowired, @RequestMapping, @Component, @Service, @Repository.
@SpringBootApplication - Used to mark the main class of a Spring Boot application.
@RestController - Used to define a RESTful controller.
@Autowired - Used for automatic dependency injection.
@RequestMapping - Used to map web requests to specific handler methods.
@Component - Use...
Round duration - 60 Minutes
Round difficulty - Medium
This round focused more on Multithreading concepts from Java and also some core concepts from OOPS.
A thread in Java is a lightweight sub-process that allows concurrent execution within a single process.
Threads allow multiple tasks to be executed concurrently in a Java program.
Each thread has its own stack and program counter, but share the same memory space.
Threads can be created by extending the Thread class or implementing the Runnable interface.
Example: Thread t1 = new Thread(new MyRunnable()); t1.start();
The start() method is used to start a new thread, while the run() method contains the code that will be executed by the thread.
start() method is used to start a new thread and calls the run() method internally
run() method contains the code that will be executed by the thread
It is recommended to override the run() method with the desired functionality
Thread class is a class in Java that extends the Thread class, while Runnable interface is an interface that implements the run() method.
Thread class extends the Thread class, while Runnable interface implements the run() method.
A class can only extend one class, so using Runnable interface allows for more flexibility in the class hierarchy.
Using Runnable interface separates the task from the thread, promoting better d...
Abstract class can have both abstract and non-abstract methods, while interface can only have abstract methods.
Abstract class can have constructor, fields, and methods, while interface cannot have any implementation.
A class can only extend one abstract class, but can implement multiple interfaces.
Abstract classes are used to define common behavior among subclasses, while interfaces are used to define a contract for cla...
Garbage collector in Java is a built-in mechanism that automatically manages memory by reclaiming unused objects.
Garbage collector runs in the background to identify and delete objects that are no longer needed.
It helps prevent memory leaks and optimize memory usage.
Examples of garbage collectors in Java include Serial, Parallel, CMS, and G1.
SOLID principles are a set of five design principles in object-oriented programming to make software designs more understandable, flexible, and maintainable.
S - Single Responsibility Principle: A class should have only one reason to change.
O - Open/Closed Principle: Software entities should be open for extension but closed for modification.
L - Liskov Substitution Principle: Objects of a superclass should be replaceable...
Round duration - 60 minutes
Round difficulty - Medium
This was a System Design Round where I was asked a LLD question to design a URL Shortener followed by a very standard question of LRU Cache. Overall this round went well and the interviewer was also quite satisfied by my answers.
A URL shortener service that generates short URLs for long links.
Generate a unique short code for each long URL
Store the mapping of short code to long URL in a database
Redirect users from short URL to original long URL
Implement analytics to track click-through rates
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 keep track of the order of keys based on their recent usage.
Use a hashmap to store key-value pairs for quick access and updates.
When capacity is reached, evict the least recently used item before inserting a new item.
Update the order of keys in the linked list whenever
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.
posted on 6 Feb 2024
I applied via LinkedIn and was interviewed in Aug 2023. There were 2 interview rounds.
Basic DSA questions were asked with hashmaps and collections
Rotate a 2-D matrix
Iterate through each layer of the matrix
For each layer, swap the elements in a cyclic manner
Repeat the process for all layers until the entire matrix is rotated
posted on 9 Feb 2024
Virtual functions are functions that can be overridden in derived classes. vTable is a lookup table used to resolve virtual function calls.
Virtual functions allow polymorphism and dynamic binding
vTable is a table of function pointers used to resolve virtual function calls
vPtr is a pointer to the vTable of an object
Smart pointers are objects that manage the lifetime of dynamically allocated memory
Types of smart pointers...
posted on 15 Apr 2024
posted on 19 Apr 2024
I applied via LinkedIn and was interviewed before Apr 2023. There were 4 interview rounds.
Coding skills dynamic programming
Technical coding skills
posted on 21 May 2024
Transaction management in Java involves managing database transactions to ensure data integrity and consistency.
Use JDBC or JPA for transaction management
Begin a transaction with 'beginTransaction()' method
Commit the transaction with 'commit()' method
Rollback the transaction with 'rollback()' method
Api design using Spring boot involves creating RESTful APIs with Spring framework for efficient communication between client and server.
Use @RestController annotation to define RESTful web services
Utilize @RequestMapping annotation to map HTTP requests to specific handler methods
Implement request and response bodies using @RequestBody and @ResponseBody annotations
Leverage Spring Boot's auto-configuration and embedded s
Design patterns are reusable solutions to common problems in software design.
Design patterns help in creating flexible, maintainable, and scalable software.
Some common design patterns include Singleton, Factory, Observer, and Strategy.
Each design pattern has a specific purpose and can be applied in different scenarios.
Understanding design patterns can improve code quality and make development more efficient.
posted on 5 Feb 2024
I applied via Referral and was interviewed before Feb 2023. There was 1 interview round.
posted on 13 Jul 2022
I was interviewed in Jun 2022.
Spark accumulators are used to accumulate values across multiple tasks in a distributed manner.
Accumulators are used to accumulate values across multiple tasks in a distributed manner
They are used to implement counters and sums in Spark
Accumulators are read-only variables that can only be updated by an associative and commutative operation
Partitioning is the process of dividing a large dataset into smaller, more manage...
based on 1 interview
Interview experience
based on 16 reviews
Rating in categories
Assistant Manager
2.6k
salaries
| ₹0 L/yr - ₹0 L/yr |
Manager
2.1k
salaries
| ₹0 L/yr - ₹0 L/yr |
Senior Software Engineer
1.7k
salaries
| ₹0 L/yr - ₹0 L/yr |
Assistant Vice President
1.5k
salaries
| ₹0 L/yr - ₹0 L/yr |
Software Engineer
1.4k
salaries
| ₹0 L/yr - ₹0 L/yr |
Standard Chartered
ICICI Bank
Axis Bank
HDFC Bank