i
FIS
Filter interviews by
I applied via Naukri.com and was interviewed before Apr 2023. There was 1 interview round.
Sorting array, streamapi example etc
What people are saying about FIS
I was interviewed in Nov 2024.
Berribot test with AI by asking questions on various application level and providing a code snippet to find the longest common prefix in a string array.
Java 8 features like lambda expressions and functional interfaces make coding with streams easier and more efficient.
Lambda expressions allow for concise and readable code when working with streams.
Functional interfaces like Predicate, Function, and Consumer can be used with streams to perform operations on elements.
Stream API provides methods like map, filter, and reduce for processing collections of data in a declara...
Optional in Java 8 is used to represent a value that may or may not be present, reducing the chances of NullPointerException.
Optional is used to avoid NullPointerException by explicitly stating whether a value is present or not.
Commonly used methods with Optional include isPresent(), get(), orElse(), orElseGet(), and map().
Example: Optional<String> optionalString = Optional.ofNullable("Hello");
Multiple inheritance is a feature in object-oriented programming where a class can inherit attributes and methods from more than one parent class.
Allows a class to inherit from multiple parent classes, combining their attributes and methods
Can lead to the diamond problem where ambiguity arises if two parent classes have a method with the same name
Achieved in languages like C++ using virtual inheritance or interfaces in
Steps to write an immutable class
Make the class final so it cannot be extended
Make all fields private and final
Do not provide setter methods for the fields
Ensure that any mutable objects within the class are also immutable
If a mutable object must be returned, make a deep copy before returning it
Types of dependency injection include constructor injection, setter injection, and interface injection.
Constructor injection: Dependencies are provided through a class's constructor.
Setter injection: Dependencies are provided through setter methods.
Interface injection: Dependencies are provided through an interface method.
In Spring framework, @primary is used to specify the primary bean to be autowired, while @qualifier is used to specify a specific bean to be autowired.
Use @Primary when there are multiple beans of the same type and you want to specify the primary one to be autowired.
Use @Qualifier when you want to specify a specific bean to be autowired by its name.
Example: @Primary annotation can be used on a bean definition to mark i...
Transaction management in Spring Boot ensures data integrity by managing database transactions.
Spring Boot uses @Transactional annotation to manage transactions
It ensures that all operations within a transaction are completed successfully or rolled back if an error occurs
Transactions can be managed programmatically using TransactionTemplate
Supports different transaction isolation levels like READ_COMMITTED, REPEATABLE_
Isolation levels in transactions determine the degree to which transactions are isolated from each other. Propagation types define how transactions are propagated between different components.
Isolation levels include READ UNCOMMITTED, READ COMMITTED, REPEATABLE READ, and SERIALIZABLE.
Propagation types include REQUIRED, REQUIRES_NEW, SUPPORTS, MANDATORY, and NEVER.
Isolation levels control the visibility of changes made ...
Design patterns in microservice architecture help in solving common design problems and improving scalability, maintainability, and flexibility.
Service Registry pattern - used for service discovery and registration
Circuit Breaker pattern - used for fault tolerance and resilience
API Gateway pattern - used for routing and load balancing
Saga pattern - used for managing distributed transactions
Event Sourcing pattern - used...
Inter-service communication in microservices involves using protocols like HTTP, gRPC, or messaging queues.
Microservices communicate with each other through APIs using protocols like HTTP or gRPC.
Message queues like RabbitMQ or Kafka can be used for asynchronous communication between services.
Service discovery tools like Consul or Eureka help services locate each other dynamically.
API gateways can be used to manage and...
Fault tolerance in microservices ensures system reliability by handling failures gracefully.
Microservices architecture breaks down applications into smaller, independent services.
Each microservice is designed to be resilient to failures and can continue to operate even if one service fails.
Fault tolerance is achieved through redundancy, monitoring, and graceful degradation.
Examples of fault tolerance mechanisms include...
Apache Kafka is a distributed streaming platform that allows for the publishing and subscribing to streams of records.
Apache Kafka is designed to be highly scalable and fault-tolerant.
It uses a distributed commit log to store messages.
Producers publish messages to topics, and consumers subscribe to topics to receive messages.
Kafka can be used for real-time stream processing, data pipelines, and event sourcing.
It provid...
RestTemplate is a synchronous client for making HTTP requests, while Feign Client is a declarative HTTP client that simplifies making API calls.
RestTemplate is part of the Spring framework and requires manual configuration for each request.
Feign Client is a declarative client that uses annotations to define API endpoints and parameters.
RestTemplate is synchronous, blocking the calling thread until the response is recei...
posted on 5 Jun 2024
I applied via Naukri.com and was interviewed in May 2024. There were 2 interview rounds.
I applied via Approached by Company and was interviewed in Sep 2023. There were 2 interview rounds.
I applied via Naukri.com and was interviewed in Jul 2023. There were 3 interview rounds.
I applied via LinkedIn and was interviewed in Aug 2023. There were 2 interview rounds.
Docker is a platform for developing, shipping, and running applications in containers, which are lightweight, portable, and isolated environments.
Docker is a tool that allows you to package an application and its dependencies into a standardized unit called a container.
Containers are isolated environments that contain everything needed to run the application, including code, runtime, system tools, libraries, and settin...
Jenkins is a popular open-source automation server used for continuous integration and continuous delivery (CI/CD) pipelines.
Jenkins is used to automate the building, testing, and deployment of software projects.
CI/CD pipelines in Jenkins help in automating the software delivery process by integrating code changes frequently and delivering them to production.
Jenkins allows for the creation of pipelines that define the ...
Git is a version control system used for tracking changes in code, while GitHub is a platform for hosting Git repositories and collaborating on code.
Git is a distributed version control system that allows multiple developers to work on the same codebase without conflicts.
GitHub is a web-based platform that provides tools for code collaboration, including issue tracking, pull requests, and code reviews.
Git and GitHub ar...
I applied via Walk-in and was interviewed before Dec 2023. There were 3 interview rounds.
I cannot share specifics, but it is indeed a problem of medium difficulty level on LeetCode.
posted on 6 Mar 2024
I applied via Naukri.com and was interviewed before Mar 2023. There were 2 interview rounds.
Binary search tree is a data structure where each node has at most two children, with the left child being less than the parent and the right child being greater.
Start with a root node and insert new nodes by comparing values and traversing left or right accordingly.
Implement functions for insertion, deletion, search, and traversal (inorder, preorder, postorder).
Ensure the tree remains balanced to maintain efficient se
HashMap in Java is a data structure that stores key-value pairs and allows for fast retrieval of values based on keys.
HashMap uses hashing to store key-value pairs in an array of linked lists.
It uses the hashCode() method of keys to determine the index where the value will be stored.
If two keys have the same hashCode, they are stored in the same linked list at that index.
HashMap allows null keys and values, but only on...
I applied via LinkedIn and was interviewed before Feb 2023. There were 2 interview rounds.
Basic leet code questions on your desired language
I have used various types of API methods including GET, POST, PUT, and DELETE.
GET method is used to retrieve data from a server. For example, I have used GET method to fetch user information from a user API endpoint.
POST method is used to send data to a server to create a new resource. I have used POST method to create new records in a database through API calls.
PUT method is used to update existing data on a server. F...
posted on 12 Jan 2024
I applied via Referral and was interviewed before Jan 2023. There was 1 interview round.
based on 2 interviews
Interview experience
based on 12 reviews
Rating in categories
Senior Software Engineer
2.7k
salaries
| ₹8 L/yr - ₹30 L/yr |
Software Engineer
1.7k
salaries
| ₹4.1 L/yr - ₹16 L/yr |
Lead Engineer
689
salaries
| ₹7.3 L/yr - ₹26.4 L/yr |
Team Member
670
salaries
| ₹1.6 L/yr - ₹6 L/yr |
Senior Leader Engineer
646
salaries
| ₹9.9 L/yr - ₹30.5 L/yr |
TCS
Infosys
Wipro
HCLTech