Filter interviews by
I applied via Naukri.com and was interviewed before Dec 2023. There were 2 interview rounds.
Top trending discussions
Struts is a framework for building Java web applications based on the Model-View-Controller (MVC) design pattern.
Struts framework is based on MVC architecture
It uses ActionServlet as the controller
Struts configuration is done using XML files like struts-config.xml
It provides built-in support for form validation and error handling
Struts actions are mapped to URLs in struts-config.xml
Dependency Injection in Spring is a design pattern where objects are passed their dependencies rather than creating them internally.
In Spring, dependencies are injected into a class through constructor injection, setter injection, or field injection.
This helps in achieving loose coupling between classes and makes the code more testable and maintainable.
Example: @Autowired annotation in Spring is used for dependency inj
I have over 8 years of experience in IT, specializing in software development and project management.
Developed web applications using Java, Spring, and AngularJS
Led a team of developers in implementing a new CRM system for a large client
Managed multiple projects simultaneously, ensuring on-time delivery and client satisfaction
posted on 17 Dec 2024
posted on 23 Mar 2024
Decorators in Python are functions that modify the behavior of other functions or methods. __name__ == __main__ is used to check if a Python script is being run directly or imported as a module.
Decorators are used to add functionality to existing functions without modifying their code.
They are defined using the @decorator syntax before the function definition.
Example: @staticmethod decorator in Python is used to define...
posted on 11 Mar 2024
I applied via Naukri.com and was interviewed in Feb 2024. There was 1 interview round.
I applied via Naukri.com and was interviewed in Jul 2022. There was 1 interview round.
Indexes are used to improve database performance. Clustered indexes determine the physical order of data, while non-clustered indexes do not.
Indexes are used to speed up data retrieval operations in a database.
Clustered indexes determine the physical order of data in a table, while non-clustered indexes do not.
A table can have only one clustered index, but multiple non-clustered indexes.
Clustered indexes are generally ...
Query to delete duplicate rows from a table
Use GROUP BY clause to group the rows by their unique values
Use HAVING clause to filter out the groups with count greater than 1
Use DELETE statement to delete the duplicate rows
Singleton pattern restricts the instantiation of a class to a single instance and provides a global point of access to it.
Create a private constructor to restrict instantiation of the class
Create a private static instance of the class
Create a public static method to access the instance
Ensure thread safety if necessary
Examples: Database connection, Logger, Configuration settings
Handle exceptions in stored procedures by using TRY-CATCH blocks.
Use TRY-CATCH blocks to catch and handle exceptions
Log the error message and severity level
Rollback the transaction if necessary
Rethrow the error if it cannot be handled
Use RAISERROR to raise custom error messages
SOLID principles are a set of five design principles that help in creating maintainable and scalable software.
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: Subtypes should be substitutable for their base types.
I - Interface Segregation Principle: C...
throw is used to throw an exception while throw exception is used to throw a specific exception.
throw is used to throw any type of exception while throw exception is used to throw a specific type of exception.
throw exception is followed by the type of exception that needs to be thrown.
throw can be used to throw any object while throw exception can only be used to throw an exception object.
Example: throw new Exception("
I applied via Naukri.com and was interviewed in Apr 2022. There were 4 interview rounds.
OOPS concepts refer to Object-Oriented Programming principles such as inheritance, encapsulation, polymorphism, and abstraction.
Inheritance: Allows a class to inherit properties and behavior from another class.
Encapsulation: Bundling data and methods that operate on the data into a single unit.
Polymorphism: Ability to present the same interface for different data types.
Abstraction: Hiding the complex implementation det
Await and Sync are programming concepts used for managing asynchronous operations in code execution.
Await is used to pause the execution of a function until a Promise is settled, returning the result.
Sync is used to synchronize multiple threads or processes to ensure they are executed in a specific order.
Example: await fetch('https://api.example.com/data')
Example: sync.Mutex.Lock()
Both Await and Sync are important for ...
Agile methodology is a project management approach that emphasizes flexibility, collaboration, and incremental development.
Agile focuses on delivering working software in short, iterative cycles called sprints.
It values customer collaboration, responding to change, and continuous improvement.
Key principles include individuals and interactions over processes and tools, working software over comprehensive documentation, ...
Code migration involves understanding the existing codebase, planning the migration process, translating code to the new language, testing thoroughly, and ensuring compatibility.
Understand the existing codebase thoroughly to identify dependencies, logic, and functionality.
Plan the migration process by breaking it down into smaller tasks, setting timelines, and allocating resources.
Translate the code to the new language...
I applied via Company Website
Aptitude + Coding Test
I was interviewed in Dec 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...
Approach :
The process is very much similar to binary to decimal conversion. In this case, the base of the given system is to be taken as 26. Also, in this system 1 is represented as ‘A’, 2 is represented as ‘B’ and so on till 26 is represented as ‘Z’
For example-
CDA can be converted as 3*26*26 + 4*26 + 1
= 26(3*26 + 4) + 1
= 26(0*26 + 3*26 + 4) + 1
AB can be converted as 1*26 + 2
TC : O(N), where N = length of the input str
Lambda expression is a type of function without a name. It may or may not have results and parameters. It is known as an anonymous function as it does not have type information by itself. It is executed on-demand. It is beneficial in iterating, filtering, and extracting data from a collection.
As lambda expressions are similar to anonymous functions, they can only be applied to the single abstract method of Functional I...
A stream is an abstraction to express data processing queries in a declarative way.
A Stream, which represents a sequence of data objects & series of operations on that data is a data pipeline that is not related to Java I/O Streams does not hold any data permanently.
The key interface is "java.util.stream.Stream" . It accepts Functional Interfaces so that lambdas can be passed. Streams support a fluent interface or
The Spring container is able to autowire relationships between the collaborating beans. That is, it is possible to let Spring resolve collaborators for your bean automatically by inspecting the contents of the BeanFactory.
Different modes of bean auto-wiring are :
1) no : This is default setting which means no autowiring. Explicit bean reference should be used for wiring.
2) byName : It injects the object dependency...
The @SpringBootApplication annotation is equivalent to using @Configuration, @EnableAutoConfiguration, and @ComponentScan with their default attributes. Spring Boot enables the developer to use a single annotation instead of using multiple. But, as we know, Spring provided loosely coupled features that we can use for each annotation as per our project needs.
The primary annotations that Spring Boot offers reside in its "org.springframework.boot.autoconfigure" and its sub-packages. Here are a couple of basic ones :
@EnableAutoConfiguration – to make Spring Boot look for auto-configuration beans on its classpath and automatically apply them.
@SpringBootApplication – used to denote the main class of a Boot Application. This annotation combines @Configuration, @EnableAutoConfigu...
Round duration - 60 minutes
Round difficulty - Medium
This round focused more on Multithreading concepts from Java and also some core concepts from OOPS.
Threads are basically the lightweight and smallest unit of processing that can be managed independently by a scheduler. Threads are referred to as parts of a process that simply let a program execute efficiently with other parts or threads of the process at the same time. Using threads, one can perform complicated tasks in the easiest way. It is considered the simplest way to take advantage of multiple CPUs available i...
start() : In simple words, the start() method is used to start or begin the execution of a newly created thread. When the start() method is called, a new thread is created and this newly created thread executes the task that is kept in the run() method. One can call the start() method only once.
run() : In simple words, the run() method is used to start or begin the execution of the same thread. When the run() method is...
The Thread can be created by using two ways :
1) By extending the Thread class
2) By implementing the Runnable interface
However, the primary differences between both the ways are given below :
1) By extending the Thread class, we cannot extend any other class, as Java does not allow multiple inheritances while implementing the Runnable interface; we can also extend other base class(if required).
2) By extending the T...
The differences between Abstract Class and Interface are as follows :
Abstract Class :
1) Abstract classes have a default constructor and it is called whenever the concrete subclass is instantiated.
2) It contains Abstract methods as well as Non-Abstract methods.
3) The class which extends the Abstract class shouldn’t require the implementation of all the methods, only Abstract methods need to be implemented in the concret...
1) Garbage Collection in Java is a process by which the programs perform memory management automatically.
2) The Garbage Collector(GC) finds the unused objects and deletes them to reclaim the memory.
3) In Java, dynamic memory allocation of objects is achieved using the new operator that uses some memory and the memory remains allocated until there are references for the use of the object.
4) When there are no refer...
The SOLID principle is an acronym of the five principles which is given below :
1) Single Responsibility Principle (SRP)
2) Open/Closed Principle
3) Liskov’s Substitution Principle (LSP)
4) Interface Segregation Principle (ISP)
5) Dependency Inversion Principle (DIP)
Uses of SOLID design principles :
1) The SOLID principle helps in reducing tight coupling.
2) Tight coupling means a group of classes are highly dependent on one ...
Round duration - 30 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.
Tip 1 : Firstly, remember that the system design round is extremely open-ended and there’s no such thing as a standard answer. Even for the same question, you’ll have a totally different discussion with different interviewers.
Tip 2 : Before you jump into the solution always clarify all the assumptions you’re making at the beginning of the interview. Ask questions to identify the scope of the system. This will clear the...
Design and implement a data structure for a Least Recently Used (LRU) cache that supports the following operations:
get(key)
- Retrieve the value associated with the...Structure of an LRU Cache :
1) In practice, LRU cache is a kind of Queue — if an element is reaccessed, it goes to the end of the eviction order.
2) This queue will have a specific capacity as the cache has a limited size. Whenever a new element is brought in, it is added at the head of the queue. When eviction happens, it happens from the tail of the queue.
3) Hitting data in the cache must be done in constant time, whic...
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 1 interview
Interview experience
Analyst
8
salaries
| ₹2.8 L/yr - ₹4.2 L/yr |
Creative Auditor
8
salaries
| ₹1.8 L/yr - ₹2.8 L/yr |
Senior Analyst
6
salaries
| ₹4.5 L/yr - ₹13 L/yr |
Senior Processing Executive
6
salaries
| ₹2 L/yr - ₹2.6 L/yr |
Junior Analyst
5
salaries
| ₹2.7 L/yr - ₹2.8 L/yr |
Infosys
TCS
Wipro
HCLTech