i
Tavant
Technologies
Filter interviews by
A singleton class is a class that can only be instantiated once. It is important to secure it in a multi-threading environment.
Create a private constructor to prevent external instantiation
Create a private static instance of the class
Create a public static method to return the instance
Use synchronized keyword to ensure thread safety
Consider using double-checked locking to improve performance
I have experience using containerization tools like Docker and Kubernetes for microservices deployment.
I have used Docker to create container images for each microservice.
I have used Kubernetes to manage the deployment, scaling, and load balancing of the microservices.
I have also used Helm charts to package and deploy the microservices as a group.
I have implemented CI/CD pipelines using tools like Jenkins or GitLa...
Autowire simplifies dependency injection in Spring by automatically wiring beans together.
Autowire eliminates the need for manual bean wiring in XML configuration files.
It reduces the amount of boilerplate code needed to configure dependencies.
Autowire can be used with different types of injection, such as constructor, setter, and field injection.
Example: @Autowired private MyService myService; will automatically ...
Constructor injection is preferred over Setter injection.
Constructor injection ensures that all required dependencies are provided at the time of object creation.
Setter injection allows for optional dependencies and can be used for dynamic changes.
Constructor injection is more secure as the object is fully initialized before use.
Setter injection can lead to inconsistent object states if not used carefully.
Construc...
JWT tokens are implemented and validated using a combination of server-side and client-side code.
The server generates a JWT token and sends it to the client upon successful authentication.
The client stores the token in local storage or a cookie.
For each subsequent request, the client sends the token in the Authorization header.
The server verifies the token's signature and expiration time before processing the requ...
Circuit breaker is used to prevent cascading failures in distributed systems.
Circuit breaker is used to handle faults in microservices architecture.
It is used to prevent overloading of a service by temporarily stopping requests to it.
It helps in improving the resilience of the system by handling failures gracefully.
Example: If a service is down, circuit breaker will stop sending requests to it and will try again a...
We secure our microservices using a combination of authentication, authorization, encryption, and monitoring.
We use OAuth2 for authentication and authorization.
We encrypt sensitive data using AES-256 encryption.
We use SSL/TLS for secure communication between microservices.
We implement rate limiting to prevent DDoS attacks.
We monitor our microservices using tools like Prometheus and Grafana.
We perform regular secur...
I have used various design patterns such as Singleton, Factory, Observer, and Decorator.
Singleton pattern was used to ensure only one instance of a class is created.
Factory pattern was used to create objects without exposing the instantiation logic to the client.
Observer pattern was used to notify the dependent objects when there is a change in the state of an object.
Decorator pattern was used to add new functiona...
I have worked with various design patterns including MVC, Singleton, Factory, and Observer.
MVC pattern for separating concerns in web applications
Singleton pattern for ensuring only one instance of a class is created
Factory pattern for creating objects without exposing the instantiation logic
Observer pattern for implementing event-driven architectures
Difference between @Configuration and @Component annotations
The @Configuration annotation is used to define a configuration class that provides bean definitions
The @Component annotation is used to mark a class as a Spring component
Configuration classes can be imported into other configuration classes using @Import annotation
Components can be scanned and automatically registered as beans using @ComponentScan annota...
I applied via Job Portal and was interviewed in Dec 2023. There were 4 interview rounds.
Basic java problem string collections map array
I applied via Company Website and was interviewed in Nov 2022. There were 5 interview rounds.
I applied via Referral and was interviewed in Jan 2022. There were 3 interview rounds.
I have experience using containerization tools like Docker and Kubernetes for microservices deployment.
I have used Docker to create container images for each microservice.
I have used Kubernetes to manage the deployment, scaling, and load balancing of the microservices.
I have also used Helm charts to package and deploy the microservices as a group.
I have implemented CI/CD pipelines using tools like Jenkins or GitLab to ...
I have used various design patterns such as Singleton, Factory, Observer, and Decorator.
Singleton pattern was used to ensure only one instance of a class is created.
Factory pattern was used to create objects without exposing the instantiation logic to the client.
Observer pattern was used to notify the dependent objects when there is a change in the state of an object.
Decorator pattern was used to add new functionality ...
A singleton class is a class that can only be instantiated once. It is important to secure it in a multi-threading environment.
Create a private constructor to prevent external instantiation
Create a private static instance of the class
Create a public static method to return the instance
Use synchronized keyword to ensure thread safety
Consider using double-checked locking to improve performance
String is immutable to ensure thread safety and security. Yes, we can write our own immutable class.
String is immutable to prevent accidental modification of data.
Immutable classes ensure thread safety and security.
We can write our own immutable class by making all fields final and not providing any setters.
Examples of immutable classes are String, Integer, and LocalDate.
Code to find repeated characters in string with count using Java 8
Convert string to char array
Use streams to group by character and count
Filter out characters with count less than 2
Print the repeated characters with their count
Get third highest salary in given employee list using Java 8
Sort the employee list in descending order of salary using Comparator
Use distinct() to remove duplicates
Skip the first two highest salaries using skip()
Use findFirst() to get the third highest salary
Functional programming focuses on functions while object oriented programming focuses on objects and their interactions.
Functional programming emphasizes immutability and avoids side effects.
Object oriented programming uses classes and objects to encapsulate data and behavior.
Functional programming languages include Haskell and Lisp while object oriented programming languages include Java and C++.
Functional programming...
In a microservices environment, service discovery and load balancing are key to managing dynamic port assignments in cloud deployments.
Use a service discovery tool like Consul or Eureka to register and discover services dynamically.
Implement API Gateway patterns to route requests to the appropriate service instance without needing to know the port.
Utilize container orchestration platforms like Kubernetes, which manage ...
Yes, I have configured saga design pattern in my project.
I have used saga design pattern to manage complex workflows and transactions.
I have implemented sagas using libraries like Redux-Saga and NServiceBus.
I have used sagas to handle scenarios like order processing, payment processing, and inventory management.
I have also used sagas to handle compensating transactions in case of failures.
We secure our microservices using a combination of authentication, authorization, encryption, and monitoring.
We use OAuth2 for authentication and authorization.
We encrypt sensitive data using AES-256 encryption.
We use SSL/TLS for secure communication between microservices.
We implement rate limiting to prevent DDoS attacks.
We monitor our microservices using tools like Prometheus and Grafana.
We perform regular security a...
Yes, I have extensive experience in implementing CI/CD pipelines.
I have worked with tools like Jenkins, GitLab CI/CD, and Travis CI.
I have automated build, test, and deployment processes for multiple projects.
I have integrated code quality checks and security scans into the pipeline.
I have also implemented blue-green and canary deployment strategies.
Overall, I understand the importance of continuous integration and del...
Circuit breaker is used to prevent cascading failures in distributed systems.
Circuit breaker is used to handle faults in microservices architecture.
It is used to prevent overloading of a service by temporarily stopping requests to it.
It helps in improving the resilience of the system by handling failures gracefully.
Example: If a service is down, circuit breaker will stop sending requests to it and will try again after ...
Orchestration and choreography are design patterns used in distributed systems.
Orchestration involves a central controller that coordinates the interactions between services.
Choreography involves services communicating with each other directly without a central controller.
Orchestration is more suitable for complex workflows while choreography is more flexible.
Examples of orchestration tools include Kubernetes and Apach...
JWT tokens are implemented and validated using a combination of server-side and client-side code.
The server generates a JWT token and sends it to the client upon successful authentication.
The client stores the token in local storage or a cookie.
For each subsequent request, the client sends the token in the Authorization header.
The server verifies the token's signature and expiration time before processing the request.
I...
Constructor injection is preferred over Setter injection.
Constructor injection ensures that all required dependencies are provided at the time of object creation.
Setter injection allows for optional dependencies and can be used for dynamic changes.
Constructor injection is more secure as the object is fully initialized before use.
Setter injection can lead to inconsistent object states if not used carefully.
Constructor i...
Autowire simplifies dependency injection in Spring by automatically wiring beans together.
Autowire eliminates the need for manual bean wiring in XML configuration files.
It reduces the amount of boilerplate code needed to configure dependencies.
Autowire can be used with different types of injection, such as constructor, setter, and field injection.
Example: @Autowired private MyService myService; will automatically injec...
Difference between @Configuration and @Component annotations
The @Configuration annotation is used to define a configuration class that provides bean definitions
The @Component annotation is used to mark a class as a Spring component
Configuration classes can be imported into other configuration classes using @Import annotation
Components can be scanned and automatically registered as beans using @ComponentScan annotation
I have worked with various design patterns including MVC, Singleton, Factory, and Observer.
MVC pattern for separating concerns in web applications
Singleton pattern for ensuring only one instance of a class is created
Factory pattern for creating objects without exposing the instantiation logic
Observer pattern for implementing event-driven architectures
I applied via Naukri.com and was interviewed before Mar 2023. There was 1 interview round.
Prevent SQL injection by using parameterized queries and input validation.
Use parameterized queries instead of concatenating user input with SQL statements
Sanitize and validate user input before using it in a query
Limit database privileges for the user account used by the application
Use prepared statements and stored procedures
Avoid displaying database error messages to users
Top trending discussions
I applied via Referral and was interviewed before Jan 2021. There were 3 interview rounds.
OOPs concepts are used in real life to model objects and their behavior.
Encapsulation: A car's engine is encapsulated and can only be accessed through specific methods.
Inheritance: A sports car is a type of car that inherits properties and methods from the car class.
Polymorphism: A person can be a student, teacher, or employee, each with their own unique behavior.
Abstraction: A TV remote has buttons that abstract the c...
Hashmap is a data structure that stores key-value pairs and uses hashing to locate values based on their keys.
Hashmap uses an array of linked lists to store key-value pairs.
The hash function is used to convert the key into an index of the array.
If two keys have the same hash value, they are stored in the same linked list.
Hashmap provides constant time complexity for insertion, deletion, and retrieval of values.
Java's H...
I applied via Other and was interviewed in May 2021. There were 4 interview rounds.
I applied via Referral and was interviewed in Jul 2021. There were 4 interview rounds.
I applied via Recruitment Consulltant and was interviewed before Feb 2023. There were 3 interview rounds.
Coding test on Angular to test the basic concepts
Promises are used for a single async operation while observables are used for multiple async operations and can be cancelled.
Promises are eager, meaning they start immediately upon creation.
Observables are lazy, meaning they only start when subscribed to.
Promises can only handle a single value or error, while observables can handle multiple values over time.
Observables can be cancelled, while promises cannot.
Promises a...
Call stack is a data structure that stores function calls in JavaScript, while event loop manages asynchronous operations.
Call stack is a mechanism for managing function invocation in JavaScript.
Functions are added to the call stack when they are invoked and removed when they are completed.
Event loop is responsible for handling asynchronous operations in JavaScript.
Event loop continuously checks the call stack and the ...
I applied via Referral and was interviewed before Feb 2023. There were 2 interview rounds.
Transaction propagation in Hibernate allows the management of multiple database operations within a single transaction.
Hibernate supports different transaction propagation modes such as REQUIRED, REQUIRES_NEW, SUPPORTS, MANDATORY, NOT_SUPPORTED, and NEVER.
The propagation mode determines how the transaction should be handled when a method is called within an existing transaction.
REQUIRED is the default propagation mode,...
Spring MVC is a framework for building web applications in Java.
Spring MVC is a part of the Spring Framework, which provides a model-view-controller architecture for developing web applications.
It follows the MVC design pattern, where the model represents the data, the view represents the user interface, and the controller handles the requests and manages the flow of data.
It provides features like request mapping, data...
Some of the top questions asked at the Tavant Technologies Technical Lead interview -
based on 3 interview experiences
Difficulty level
Duration
based on 51 reviews
Rating in categories
Senior Software Engineer
929
salaries
| ₹10.9 L/yr - ₹20 L/yr |
Technical Lead
519
salaries
| ₹16.7 L/yr - ₹30 L/yr |
Software Engineer
464
salaries
| ₹5.4 L/yr - ₹12 L/yr |
Senior Quality Engineer
274
salaries
| ₹8 L/yr - ₹14 L/yr |
Associate Technical Architect
244
salaries
| ₹14 L/yr - ₹45.8 L/yr |
Xoriant
Photon Interactive
CitiusTech
Iris Software