Upload Button Icon Add office photos
Engaged Employer

i

This company page is being actively managed by Wipro Team. If you also belong to the team, you can get access from here

Wipro Verified Tick

Compare button icon Compare button icon Compare
3.7

based on 51.6k Reviews

Filter interviews by

Wipro Java Software Engineer Interview Questions and Answers

Updated 12 Jun 2021

Wipro Java Software Engineer Interview Experiences

1 interview found

I applied via Naukri.com

Interview Questionnaire 

3 Questions

  • Q1. Write a user microservice to get the data from h2DB.
  • Ans. 

    A user microservice to retrieve data from h2DB

    • Create a REST API endpoint to handle user requests

    • Use JDBC to connect to the h2DB and retrieve data

    • Implement caching to improve performance

    • Ensure proper error handling and logging

    • Secure the API with authentication and authorization

  • Answered by AI
  • Q2. How to create thread singleton
  • Ans. 

    To create thread singleton, use double-checked locking or enum.

    • Use double-checked locking to ensure only one instance is created

    • Alternatively, use enum to create a singleton with thread safety

    • Ensure proper synchronization to avoid race conditions

  • Answered by AI
  • Q3. What does spring boot starter pom
  • Ans. 

    Spring Boot Starter POM is a parent POM that provides a set of dependencies for Spring Boot applications.

    • It includes commonly used dependencies such as Spring Framework, Spring Boot, and Spring Data.

    • It simplifies the process of configuring and deploying Spring Boot applications.

    • Developers can add additional dependencies to the POM file as needed.

    • Examples of Spring Boot Starter POMs include spring-boot-starter-web, spri...

  • Answered by AI

Interview Preparation Tips

Interview preparation tips for other job seekers - they dont care much about your previuos projects and all its really good thing, you will be having direct technical questions , should have strong knowledge in multithreading and singleton classes, they dont ask basic questions you must have strong knowledge in that area
be prepared to able to write programs in numbers series, good to have knowledge in data structues its really helpful..

ALL THE BEST.. MY BEST WISHES

Skills evaluated in this interview

Interview questions from similar companies

Interview Questionnaire 

1 Question

  • Q1. All java areas - basics Like inheritance polymorphism, method overloading, overriding, garbage collection, collections, data structure their implimentation, exception handling, java 8, on Postgres -...

I applied via Referral and was interviewed in Mar 2021. There were 3 interview rounds.

Interview Questionnaire 

1 Question

  • Q1. Oops, Collections, spring hibernate

Interview Preparation Tips

Interview preparation tips for other job seekers - Many questions in spring and hibernate

I applied via Naukri.com and was interviewed in Nov 2020. There were 6 interview rounds.

Interview Questionnaire 

2 Questions

  • Q1. Oops concepts, collection, multithreading
  • Q2. Data structures

Interview Preparation Tips

Interview preparation tips for other job seekers - Prepare well java , ds and your resume
Interview experience
5
Excellent
Difficulty level
Easy
Process Duration
Less than 2 weeks
Result
Selected Selected

I was interviewed in Dec 2024.

Round 1 - Technical 

(22 Questions)

  • Q1. API Gateway implementation
  • Ans. 

    API Gateway implementation is a centralized service that routes, manages, and secures API calls.

    • API Gateway acts as a single entry point for all API calls

    • It can handle authentication, rate limiting, caching, and request/response transformations

    • Examples include AWS API Gateway, Apigee, Kong

  • Answered by AI
  • Q2. Circuit breaker implementation
  • Ans. 

    Circuit breaker is a design pattern used to prevent system overload by temporarily stopping requests to a failing service.

    • Circuit breaker monitors requests to a service and opens when the service fails repeatedly.

    • It helps prevent cascading failures and allows the system to gracefully degrade.

    • Once the circuit breaker is open, it can periodically check if the service has recovered before allowing requests again.

  • Answered by AI
  • Q3. What is deadlock? How to avoid it?
  • Ans. 

    Deadlock is a situation in which two or more processes are unable to proceed because each is waiting for the other to release a resource.

    • Avoid circular wait by ensuring processes request resources in the same order.

    • Prevent hold and wait by requiring processes to request all needed resources at once.

    • Implement a timeout mechanism to break potential deadlocks.

    • Use resource allocation graphs to detect and prevent deadlocks.

    • ...

  • Answered by AI
  • Q4. Explain equals() method
  • Ans. 

    The equals() method is used to compare the contents of two objects for equality.

    • The equals() method is a method of the Object class in Java.

    • It is used to compare the contents of two objects for equality.

    • The default implementation of equals() in the Object class compares memory addresses, so it is often overridden in custom classes to compare content.

    • Example: String class overrides equals() method to compare the content

  • Answered by AI
  • Q5. How mongodb was integrated in your application?
  • Ans. 

    MongoDB was integrated in the application by using the official Java driver and configuring connection settings.

    • Used the official MongoDB Java driver to interact with the database

    • Configured connection settings such as host, port, database name, and authentication credentials

    • Implemented CRUD operations using MongoDB Java driver methods

    • Utilized MongoDB aggregation framework for complex queries

  • Answered by AI
  • Q6. What is hibernate?
  • Ans. 

    Hibernate is an open-source Java framework that simplifies the development of database interactions in Java applications.

    • Hibernate is an Object-Relational Mapping (ORM) tool that maps Java objects to database tables.

    • It provides a way to perform database operations using Java objects instead of writing SQL queries.

    • Hibernate handles the mapping of Java classes to database tables and vice versa, as well as the generation ...

  • Answered by AI
  • Q7. Runnable vs Callable interface
  • Ans. 

    Runnable is a functional interface with a single run() method, while Callable is a functional interface with a single call() method.

    • Runnable is used for tasks that do not return a result, while Callable is used for tasks that return a result.

    • Callable can throw checked exceptions, while Runnable cannot.

    • Callable returns a Future object, which can be used to retrieve the result of the computation.

    • Example: Runnable - execu...

  • Answered by AI
  • Q8. Which type of data is returned by Callable interface?
  • Ans. 

    The Callable interface in Java returns a Future object.

    • Callable interface returns a Future object which represents the result of a computation that may not be available yet.

    • The Future object can be used to retrieve the result of the computation, check if it is done, or cancel the computation.

    • Example: Callable<Integer> task = () -> { return 42; }

  • Answered by AI
  • Q9. HashMap internal working
  • Q10. Concurrent HashMap internal working
  • Q11. How to monitor health of your application?
  • Ans. 

    Monitor application health using metrics, logs, alerts, and performance monitoring tools.

    • Use monitoring tools like Prometheus, Grafana, or New Relic to track key metrics such as CPU usage, memory usage, response times, and error rates.

    • Implement logging to record important events and errors in your application. Use tools like ELK stack (Elasticsearch, Logstash, Kibana) for log analysis.

    • Set up alerts to notify you of any...

  • Answered by AI
  • Q12. How to call an API in a Microservice architecture?
  • Ans. 

    To call an API in a Microservice architecture, use HTTP requests or messaging protocols like gRPC.

    • Use HTTP requests to communicate between microservices

    • Implement RESTful APIs for easy integration

    • Leverage messaging protocols like gRPC for efficient communication

    • Consider using service discovery mechanisms for dynamic API calls

  • Answered by AI
  • Q13. Explain Profiles
  • Ans. 

    Profiles in Java are configurations that define the capabilities of a Java platform.

    • Profiles allow developers to target specific types of devices or applications.

    • They help in reducing the size of the Java runtime environment by including only the necessary APIs.

    • Examples include Java SE Embedded Profile for embedded devices and Java SE Compact Profile for resource-constrained environments.

  • Answered by AI
  • Q14. What is OpenFeign, and how is it used in microservices architecture?
  • Ans. 

    OpenFeign is a declarative web service client used to simplify the process of making HTTP requests in microservices architecture.

    • OpenFeign allows developers to define RESTful web services as interfaces and automatically generate the necessary implementation code.

    • It integrates seamlessly with Spring Cloud and other microservices frameworks to facilitate communication between services.

    • OpenFeign supports features like loa...

  • Answered by AI
  • Q15. What is the implementation process for service registry and discovery?
  • Ans. 

    Service registry and discovery involves registering services and allowing clients to discover and connect to them.

    • Implement a service registry where services can register themselves with metadata

    • Use a service discovery mechanism for clients to find and connect to services

    • Implement health checks to ensure services are available and healthy

    • Use a load balancer to distribute traffic among multiple instances of a service

  • Answered by AI
  • Q16. What are Spring boot actuators?
  • Ans. 

    Spring Boot Actuators are built-in tools that provide insight into the running application.

    • Actuators expose various endpoints to monitor and manage the application.

    • They can be used to check health, metrics, environment details, and more.

    • Examples include /actuator/health, /actuator/metrics, and /actuator/env.

  • Answered by AI
  • Q17. Synchronous vs Asynchronous communication
  • Ans. 

    Synchronous communication is blocking, while asynchronous communication is non-blocking.

    • Synchronous communication waits for a response before continuing, while asynchronous communication does not wait.

    • Examples of synchronous communication include traditional function calls, while examples of asynchronous communication include callbacks and promises.

    • Synchronous communication can lead to performance issues if there are d...

  • Answered by AI
  • Q18. Explain Synchronized keyword
  • Ans. 

    Synchronized keyword is used in Java to control access to shared resources by multiple threads.

    • Synchronized keyword can be applied to methods or code blocks to ensure only one thread can access the synchronized code at a time.

    • It prevents race conditions and ensures thread safety by creating a lock on the object or class.

    • Example: synchronized void myMethod() { // synchronized code block }

  • Answered by AI
  • Q19. What are the consequences of excessively using synchronized blocks and methods in Java?
  • Ans. 

    Excessive use of synchronized blocks and methods in Java can lead to performance issues and potential deadlocks.

    • Decreased performance due to increased contention for locks

    • Potential deadlocks if multiple threads are waiting for each other to release locks

    • Increased complexity and difficulty in debugging and maintaining code

    • Use synchronized sparingly and consider alternatives like ConcurrentHashMap or Lock interface

  • Answered by AI
  • Q20. How can you determine the number of threads needed for your application?
  • Ans. 

    The number of threads needed for an application can be determined based on factors like the type of tasks, hardware resources, and performance requirements.

    • Consider the type of tasks your application needs to perform - CPU-bound tasks may benefit from more threads, while I/O-bound tasks may not.

    • Take into account the hardware resources available - more threads may be beneficial on a multi-core processor compared to a si...

  • Answered by AI
  • Q21. Explain Executor framework
  • Ans. 

    Executor framework is a framework in Java that provides a way to manage and execute tasks asynchronously.

    • Allows for managing thread execution in a more efficient way

    • Provides a way to decouple task submission from task execution

    • Supports various types of executors like ThreadPoolExecutor and ScheduledExecutorService

    • Helps in handling tasks concurrently and asynchronously

  • Answered by AI
  • Q22. Explain BlockingQueue
  • Ans. 

    BlockingQueue is an interface in Java that represents a queue which supports operations that wait for the queue to become non-empty when retrieving an element and wait for space to become available in the queue when adding an element.

    • BlockingQueue is part of the java.util.concurrent package.

    • It is used for implementing producer-consumer scenarios where multiple threads are involved.

    • Methods like put() and take() are used...

  • Answered by AI
Round 2 - HR 

(2 Questions)

  • Q1. Why did you leave your previous company?
  • Ans. 

    Seeking new challenges and opportunities for growth.

    • Desire for career advancement

    • Looking for new challenges

    • Seeking better work-life balance

    • Company restructuring or downsizing

    • Relocation to a new area

  • Answered by AI
  • Q2. Other basic questions asked regarding the relevant skills and technologies I have worked with.
Interview experience
5
Excellent
Difficulty level
Moderate
Process Duration
Less than 2 weeks
Result
Selected Selected

I applied via Approached by Company and was interviewed in Dec 2024. There was 1 interview round.

Round 1 - Technical 

(8 Questions)

  • Q1. What improvements to interfaces were introduced in Java 8 that were missing in Java 7, specifically regarding static and default methods?
  • Ans. 

    Java 8 introduced static and default methods in interfaces, allowing for method implementation and code reusability.

    • Java 8 introduced static methods in interfaces, allowing for method implementation directly in the interface itself.

    • Default methods were also introduced in Java 8, enabling interfaces to have method implementations without affecting implementing classes.

    • Static methods in interfaces can be called using the...

  • Answered by AI
  • Q2. Explain internal working of HashMap ? How to synchronize it ?
  • Ans. 

    HashMap is a data structure that stores key-value pairs and uses hashing to efficiently retrieve values.

    • HashMap uses an array of linked lists to store key-value pairs.

    • When a key-value pair is added, the key is hashed to determine the index in the array where it will be stored.

    • If multiple keys hash to the same index, a linked list is used to handle collisions.

    • To synchronize a HashMap, you can use the synchronizedMap() m...

  • Answered by AI
  • Q3. Given a list of employees with their ratings, how can you sort the employees based on their ratings using the Java 8 Streaming API?
  • Q4. Will the program compile if the parent class throws a runtime exception while the child class throws an arithmetic exception?
  • Ans. 

    No, the program will not compile if the parent class throws a runtime exception while the child class throws an arithmetic exception.

    • In Java, if a parent class method throws a checked exception, the child class method can only throw the same exception or its subclasses.

    • ArithmeticException is an unchecked exception, so if the parent class throws a checked exception and the child class throws an unchecked exception, the ...

  • Answered by AI
  • Q5. In a Spring Boot application with two databases, how can you configure JDBC to specify which database to use?
  • Ans. 

    Configure JDBC in Spring Boot to specify which database to use

    • Define multiple DataSource beans in the configuration class

    • Use @Primary annotation to specify the primary DataSource

    • Use @Qualifier annotation to specify the secondary DataSource

    • Inject the DataSource beans where needed in the application

  • Answered by AI
  • Q6. How to use a jetty server in your spring boot application ?
  • Ans. 

    To use a Jetty server in a Spring Boot application, you can configure it as a dependency and customize its settings.

    • Add Jetty server dependency in your pom.xml file

    • Exclude Tomcat server dependency if it's included by default in Spring Boot

    • Configure Jetty server settings in application.properties or application.yml file

    • Example: Add Jetty dependency - <dependency> <groupId>org.springframework.boot</groupId...

  • Answered by AI
  • Q7. Difference between @RequestParam and @PathVariable ?
  • Ans. 

    RequestParam is used to extract query parameters from the URL, while PathVariable is used to extract values from the URI path.

    • RequestParam is used for query parameters in the URL, while PathVariable is used for values in the URI path.

    • RequestParam is optional, while PathVariable is required.

    • RequestParam is used with the @RequestParam annotation, while PathVariable is used with the @PathVariable annotation.

    • Example: @Requ...

  • Answered by AI
  • Q8. How would you handle a scenario where one microservice is awaiting a response from another microservice that is taking an extended time to respond?
  • Ans. 

    I would implement timeout mechanisms and retries to handle the scenario of one microservice awaiting a response from another microservice taking an extended time.

    • Implement timeout mechanisms in the calling microservice to limit the waiting time for a response.

    • Set up retry logic to automatically resend the request to the slow microservice if no response is received within the specified timeout period.

    • Use circuit breaker...

  • Answered by AI

Interview Preparation Tips

Interview preparation tips for other job seekers - Prepare the basics about Java 8 , Core Java , Springboot , Microservices and MySql.
Interview experience
4
Good
Difficulty level
Easy
Process Duration
Less than 2 weeks
Result
Not Selected

I applied via Walk-in and was interviewed in Nov 2024. There was 1 interview round.

Round 1 - Technical 

(4 Questions)

  • Q1. Given an array {1, 2, 1, 4, 5, 4, 8, 7}, how can you use Streams to remove duplicates while retaining only the even numbers?
  • Ans. 

    Use Streams to remove duplicates and retain only even numbers from an array.

    • Convert the array to a stream using Arrays.stream()

    • Use distinct() to remove duplicates

    • Filter out odd numbers using filter()

    • Collect the result using collect(Collectors.toList())

  • Answered by AI
  • Q2. What is the use of Static and final when you will use Static methods
  • Ans. 

    Static methods can be accessed without creating an instance of the class, while final keyword makes the method unchangeable.

    • Static methods belong to the class itself, not to any specific instance

    • Final keyword ensures that the method cannot be overridden in subclasses

    • Static methods are commonly used for utility methods that do not require access to instance variables

    • Example: Math class in Java has static methods like Ma

  • Answered by AI
  • Q3. What is the difference between @restController and @controller Annotation
  • Ans. 

    The @RestController annotation is used to define RESTful web services while @Controller annotation is used to define MVC controller.

    • RestController is a specialized version of Controller used for RESTful web services

    • RestController eliminates the need for @ResponseBody annotation

    • Controller is used for traditional MVC controller functionality

    • RestController returns data directly without needing to go through a view resolve...

  • Answered by AI
  • Q4. What is microservices why we use it
  • Ans. 

    Microservices are a software development technique where applications are composed of small, independent services that communicate with each other.

    • Microservices allow for easier scalability and maintenance of complex applications.

    • Each service in a microservices architecture can be developed, deployed, and scaled independently.

    • Microservices promote flexibility and agility in software development.

    • Examples of companies us...

  • Answered by AI

Interview Preparation Tips

Topics to prepare for Cognizant Senior Java Developer interview:
  • Java SpringBoot
Interview preparation tips for other job seekers - Need to have strong knowledge on basics Java Spring boot and Microservices
Interview experience
5
Excellent
Difficulty level
Easy
Process Duration
4-6 weeks
Result
Selected Selected

I applied via Approached by Company and was interviewed in Dec 2024. There was 1 interview round.

Round 1 - Technical 

(3 Questions)

  • Q1. Project based questions
  • Q2. Scenario based question (multithreading and caching related scenarios were asked to me)
  • Q3. One coding challenge

Interview Preparation Tips

Interview preparation tips for other job seekers - Questions vary from team to team.
Interview experience
4
Good
Difficulty level
-
Process Duration
-
Result
Not Selected
Round 1 - Technical 

(2 Questions)

  • Q1. Different types of streams based questions
  • Q2. Collection , competable future, java 8 features
Interview experience
4
Good
Difficulty level
Moderate
Process Duration
Less than 2 weeks
Result
Not Selected

I applied via Naukri.com and was interviewed in Aug 2024. There was 1 interview round.

Round 1 - Technical 

(9 Questions)

  • Q1. Transactions in springboot
  • Ans. 

    Transactions in Spring Boot manage database operations as a single unit of work to ensure data integrity.

    • Spring Boot provides support for declarative transaction management using @Transactional annotation.

    • Transactions can be configured at class or method level.

    • Transactions can be rolled back in case of exceptions to maintain data consistency.

    • Example: @Transactional annotation on a service method ensures that all databa...

  • Answered by AI
  • Q2. Difference between arraylist and linked list
  • Ans. 

    ArrayList is resizable array implementation, LinkedList is doubly linked list implementation.

    • ArrayList uses dynamic array to store elements, LinkedList uses doubly linked list.

    • ArrayList is faster for accessing elements by index, LinkedList is faster for adding/removing elements.

    • Example: ArrayList arrList = new ArrayList<>(); LinkedList linkedList = new LinkedList<>();

Answered by AI
  • Q3. How REST API used
  • Ans. 

    REST API is used to communicate between client and server using HTTP methods like GET, POST, PUT, DELETE.

    • REST API allows clients to access and manipulate resources on a server using standard HTTP methods.

    • It uses URLs to identify resources and HTTP methods to perform actions on those resources.

    • Common HTTP methods used in REST API are GET (retrieve data), POST (create data), PUT (update data), DELETE (remove data).

    • REST A...

  • Answered by AI
  • Q4. Annotations in springboot
  • Ans. 

    Annotations in Spring Boot are used to provide metadata about the application and its components.

    • Annotations are used to configure Spring Boot applications, define beans, handle requests, etc.

    • Examples include @SpringBootApplication, @RestController, @Autowired, @RequestMapping, etc.

  • Answered by AI
  • Q5. Features of java 8
  • Ans. 

    Java 8 introduced several new features including lambda expressions, functional interfaces, streams, and default methods in interfaces.

    • Lambda expressions allow for more concise code and enable functional programming.

    • Functional interfaces are interfaces with a single abstract method, used for lambda expressions.

    • Streams provide a way to work with collections of objects in a functional style.

    • Default methods in interfaces ...

  • Answered by AI
  • Q6. How interface is implemented in java
  • Ans. 

    Interfaces in Java are implemented using the 'implements' keyword, allowing classes to provide specific implementations for methods defined in the interface.

    • Interfaces in Java define a contract for classes to implement, specifying method signatures without implementations.

    • A class can implement multiple interfaces by separating them with commas.

    • Classes implementing an interface must provide concrete implementations for ...

  • Answered by AI
  • Q7. How stream API works
  • Ans. 

    Stream API in Java provides a way to process collections of objects in a functional style.

    • Stream API allows for functional-style operations on collections like map, filter, reduce, etc.

    • It supports lazy evaluation, meaning operations are only performed when needed.

    • Streams can be sequential or parallel, depending on the source and operations used.

  • Answered by AI
  • Q8. Benefits of springboot over spring
  • Ans. 

    Spring Boot simplifies the setup and development of Spring applications by providing a convention-over-configuration approach.

    • Spring Boot eliminates the need for XML configuration by using annotations and sensible defaults.

    • It includes embedded servers like Tomcat, Jetty, or Undertow, making it easy to deploy standalone applications.

    • Auto-configuration feature reduces the amount of boilerplate code needed to set up a Spr...

  • Answered by AI
  • Q9. Difference between throw and throwable
  • Ans. 

    throw is a keyword used to explicitly throw an exception, while Throwable is a class that serves as the base class for all exceptions in Java.

    • throw is used to throw an exception in a method, while Throwable is the superclass of all exceptions in Java.

    • throw is followed by an instance of Throwable class or its subclasses, while Throwable is a class that provides common methods for handling exceptions.

    • Example: throw new N...

  • Answered by AI

    Interview Preparation Tips

    Interview preparation tips for other job seekers - Try to speak about one topic of more time it will increase the time of interview.

    Skills evaluated in this interview

    Wipro Interview FAQs

    How to prepare for Wipro Java Software Engineer interview?
    Go through your CV in detail and study all the technologies mentioned in your CV. Prepare at least two technologies or languages in depth if you are appearing for a technical interview at Wipro. The most common topics and skills that interviewers at Wipro expect are Java, Javascript, MongoDB, NoSQL and PLSQL.
    What are the top questions asked in Wipro Java Software Engineer interview?

    Some of the top questions asked at the Wipro Java Software Engineer interview -

    1. write a user microservice to get the data from h2...read more
    2. what does spring boot starter ...read more
    3. how to create thread single...read more

    Tell us how to improve this page.

    Interview Questions from Similar Companies

    TCS Interview Questions
    3.7
     • 10.4k Interviews
    Accenture Interview Questions
    3.9
     • 8.1k Interviews
    Infosys Interview Questions
    3.6
     • 7.6k Interviews
    Cognizant Interview Questions
    3.8
     • 5.6k Interviews
    Capgemini Interview Questions
    3.7
     • 4.8k Interviews
    Tech Mahindra Interview Questions
    3.5
     • 3.8k Interviews
    HCLTech Interview Questions
    3.5
     • 3.8k Interviews
    Genpact Interview Questions
    3.8
     • 3k Interviews
    LTIMindtree Interview Questions
    3.8
     • 3k Interviews
    IBM Interview Questions
    4.0
     • 2.4k Interviews
    View all
    Wipro Java Software Engineer Salary
    based on 5 salaries
    ₹5.5 L/yr - ₹11.6 L/yr
    24% more than the average Java Software Engineer Salary in India
    View more details
    Project Engineer
    32.7k salaries
    unlock blur

    ₹1.8 L/yr - ₹8.3 L/yr

    Senior Software Engineer
    23k salaries
    unlock blur

    ₹5.8 L/yr - ₹22.4 L/yr

    Senior Associate
    21.2k salaries
    unlock blur

    ₹0.8 L/yr - ₹5.5 L/yr

    Senior Project Engineer
    20.5k salaries
    unlock blur

    ₹5 L/yr - ₹19.5 L/yr

    Technical Lead
    18.6k salaries
    unlock blur

    ₹8.3 L/yr - ₹36.5 L/yr

    Explore more salaries
    Compare Wipro with

    TCS

    3.7
    Compare

    Infosys

    3.6
    Compare

    Tesla

    4.3
    Compare

    Amazon

    4.1
    Compare
    Did you find this page helpful?
    Yes No
    write
    Share an Interview