i
UST
Work with us
Filter interviews by
Questions related to Java concepts and frameworks
Fail safe fail fast - used in concurrent programming to handle exceptions and ensure thread safety
String is immutable to ensure thread safety and prevent unintended changes to the string
String buffer vs String builder - both are used to manipulate strings, but string builder is faster and not thread-safe
Executor framework - used for asynchronous task execution and t...
MVC components include Model (data), View (UI), and Controller (logic) for organizing code in a software application.
Model: Represents data and business logic, interacts with the database. Example: User model storing user information.
View: Represents the UI, displays data to the user. Example: HTML/CSS templates for displaying user profile.
Controller: Handles user input, updates the model, and selects the view to ...
OAuth is an open standard for access delegation, commonly used for enabling secure authorization between applications.
OAuth allows a user to grant a third-party application access to their resources without sharing their credentials.
It uses tokens (access token, refresh token) to provide secure access to resources.
OAuth is commonly used in scenarios where a user wants to grant access to their social media accounts...
Routing in MVC is the process of mapping URLs to controller actions.
Routing is defined in the RouteConfig.cs file in ASP.NET MVC applications.
Routes are defined using the MapRoute method, which specifies the URL pattern and the controller and action to handle the request.
Routes are matched in the order they are defined, with the first match being used to handle the request.
Route parameters can be defined in the UR...
Hibernate provides several concurrency strategies like optimistic locking, pessimistic locking, and versioning.
Optimistic locking: Allows multiple transactions to read a row simultaneously, but only one can update it at a time.
Pessimistic locking: Locks the row for exclusive use by one transaction, preventing other transactions from accessing it.
Versioning: Uses a version number to track changes to an entity, allo...
Virtual functions in C++ allow a function to be overridden in a derived class, enabling polymorphic behavior.
Virtual functions are declared in a base class with the 'virtual' keyword.
They are meant to be overridden in derived classes to provide specific implementations.
When a virtual function is called through a base class pointer or reference, the actual function to be executed is determined at runtime based on t...
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 replac...
PUT is used to update or replace an existing resource, while POST is used to create a new resource.
PUT is idempotent, meaning multiple identical requests will have the same effect as a single request
POST is not idempotent, meaning multiple identical requests may have different effects
PUT requests are used to update an existing resource with a new representation, while POST requests are used to create a new resourc...
Dependency injection is a design pattern where components are provided with their dependencies rather than creating them internally.
Allows for easier testing by providing mock dependencies
Promotes loose coupling between components
Improves code reusability and maintainability
Examples: Constructor injection, Setter injection, Interface injection
ConcurrentHashMap in Java is a thread-safe version of HashMap, allowing multiple threads to access and modify the map concurrently.
ConcurrentHashMap achieves thread-safety by dividing the map into segments, each guarded by a separate lock.
It allows multiple threads to read and write to the map concurrently, without blocking each other.
It provides better performance than synchronized HashMap for concurrent operatio...
Python core concepts and basic coding challenges
I applied via Referral and was interviewed before Apr 2023. There was 1 interview round.
I appeared for an interview in Oct 2021.
Round duration - 60 minutes
Round difficulty - Medium
This round had 1 question related to DSA and then the rest of the questions were from Java , OOPS and Spring Boot.
Given the head node of a singly linked list, your task is to return a pointer to the middle node of the linked list.
If there are an odd number of elements, return the middle elemen...
Return the middle node of a singly linked list, considering odd and even number of elements.
Traverse the linked list with two pointers, one moving twice as fast as the other
When the fast pointer reaches the end, the slow pointer will be at the middle
Return the node pointed by the slow pointer as the middle node
ConcurrentHashMap in Java is a thread-safe version of HashMap, allowing multiple threads to access and modify the map concurrently.
ConcurrentHashMap achieves thread-safety by dividing the map into segments, each guarded by a separate lock.
It allows multiple threads to read and write to the map concurrently, without blocking each other.
It provides better performance than synchronized HashMap for concurrent operations.
Ex...
Lambda expressions in Java 8 are used to provide a concise way to represent a single method interface.
Lambda expressions are used to provide implementation of functional interfaces.
They enable you to treat functionality as a method argument, or code as data.
Syntax of lambda expressions is (argument) -> (body).
Example: (int a, int b) -> a + b
Dependency injection is a design pattern where components are provided with their dependencies rather than creating them internally.
Allows for easier testing by providing mock dependencies
Promotes loose coupling between components
Improves code reusability and maintainability
Examples: Constructor injection, Setter injection, Interface injection
PUT is used to update or replace an existing resource, while POST is used to create a new resource.
PUT is idempotent, meaning multiple identical requests will have the same effect as a single request
POST is not idempotent, meaning multiple identical requests may have different effects
PUT requests are used to update an existing resource with a new representation, while POST requests are used to create a new resource
PUT ...
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...
Virtual functions in C++ allow a function to be overridden in a derived class, enabling polymorphic behavior.
Virtual functions are declared in a base class with the 'virtual' keyword.
They are meant to be overridden in derived classes to provide specific implementations.
When a virtual function is called through a base class pointer or reference, the actual function to be executed is determined at runtime based on the ob...
Round duration - 60 minutes
Round difficulty - Medium
This round started with some questions from Spring Boot and Hibernate and then the interviewer moved on to some more questions from MVC and Microservices.
Spring Boot offers basic annotations like @Controller, @RestController, @Service, @Repository, @Component.
@Controller - Used to mark a class as a Spring MVC controller.
@RestController - Combination of @Controller and @ResponseBody, used to create RESTful web services.
@Service - Used to mark a class as a service component in Spring.
@Repository - Used to mark a class as a data access component in Spring.
@Component - Gene...
The @RestController annotation in Spring Boot is used to define a class as a RESTful controller.
Used to create RESTful web services in Spring Boot
Combines @Controller and @ResponseBody annotations
Eliminates the need to annotate every method with @ResponseBody
Returns data directly in the response body as JSON or XML
Hibernate caching is a mechanism used to improve the performance of applications by reducing the number of database queries.
Hibernate caching stores frequently accessed data in memory to reduce the need for repeated database queries.
There are different levels of caching in Hibernate, such as first-level cache and second-level cache.
First-level cache is associated with the Session object and is enabled by default.
Second...
N+1 SELECT problem in Hibernate occurs when a query results in N+1 database queries being executed instead of just one.
Occurs when a query fetches a collection of entities and then for each entity, another query is executed to fetch related entities individually
Can be resolved by using fetch joins or batch fetching to fetch all related entities in a single query
Example: Fetching a list of orders and then for each order...
Hibernate provides several concurrency strategies like optimistic locking, pessimistic locking, and versioning.
Optimistic locking: Allows multiple transactions to read a row simultaneously, but only one can update it at a time.
Pessimistic locking: Locks the row for exclusive use by one transaction, preventing other transactions from accessing it.
Versioning: Uses a version number to track changes to an entity, allowing ...
MVC components include Model (data), View (UI), and Controller (logic) for organizing code in a software application.
Model: Represents data and business logic, interacts with the database. Example: User model storing user information.
View: Represents the UI, displays data to the user. Example: HTML/CSS templates for displaying user profile.
Controller: Handles user input, updates the model, and selects the view to displ...
Routing in MVC is the process of mapping URLs to controller actions.
Routing is defined in the RouteConfig.cs file in ASP.NET MVC applications.
Routes are defined using the MapRoute method, which specifies the URL pattern and the controller and action to handle the request.
Routes are matched in the order they are defined, with the first match being used to handle the request.
Route parameters can be defined in the URL pat...
Independent microservices communicate through APIs, messaging queues, or event-driven architecture.
Use RESTful APIs for synchronous communication between microservices
Implement messaging queues like RabbitMQ or Kafka for asynchronous communication
Leverage event-driven architecture with tools like Apache Kafka or AWS SNS/SQS
Consider gRPC for high-performance communication between microservices
OAuth is an open standard for access delegation, commonly used for enabling secure authorization between applications.
OAuth allows a user to grant a third-party application access to their resources without sharing their credentials.
It uses tokens (access token, refresh token) to provide secure access to resources.
OAuth is commonly used in scenarios where a user wants to grant access to their social media accounts or c...
Round duration - 30 minutes
Round difficulty - Easy
This was a Technical Cum HR round where I was first asked some basic Java related concepts and then we discussed about my expectations from the company , learnings and growth in the forthcomig years. I would suggest be honest and try to communicate your thoughts properly in these type of rounds to maximise your chances of getting selected.
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 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.
I applied via Referral and was interviewed in Sep 2021. There was 1 interview round.
Questions related to Java concepts and frameworks
Fail safe fail fast - used in concurrent programming to handle exceptions and ensure thread safety
String is immutable to ensure thread safety and prevent unintended changes to the string
String buffer vs String builder - both are used to manipulate strings, but string builder is faster and not thread-safe
Executor framework - used for asynchronous task execution and thread...
Pointers
What people are saying about UST
posted on 26 Feb 2021
I applied via Company Website and was interviewed before Feb 2020. There were 4 interview rounds.
Handled high pressure from client by prioritizing tasks and communicating effectively.
Identified critical issues and addressed them first
Communicated regularly with the client to provide updates and manage expectations
Collaborated with team members to delegate tasks and ensure timely delivery
Maintained a calm and professional demeanor to avoid escalating the situation
Release management is the process of planning, scheduling, coordinating, and deploying software releases.
It involves identifying the scope of the release and the features to be included
Creating a release plan and schedule
Coordinating with different teams involved in the release process
Testing the release to ensure it meets quality standards
Deploying the release to production
Monitoring the release to ensure it is stable...
posted on 11 Apr 2021
I'm a passionate software engineer with a strong background in full-stack development and a love for solving complex problems.
Experience in developing web applications using React and Node.js.
Worked on a team project that improved application performance by 30%.
Strong understanding of algorithms and data structures, demonstrated in coding competitions.
Enjoy collaborating with cross-functional teams to deliver high-qual...
I applied via Company Website and was interviewed before Oct 2020. There were 3 interview rounds.
I applied via LinkedIn and was interviewed before Jul 2021. There were 2 interview rounds.
Easy logical questions
basic quant
Easy level coding questions
Counting frequency of alphabets
based on 2 interview experiences
Difficulty level
Duration
based on 114 reviews
Rating in categories
Software Developer
2.2k
salaries
| ₹4.1 L/yr - ₹19.5 L/yr |
Senior Software Engineer
1.7k
salaries
| ₹7 L/yr - ₹28.5 L/yr |
Software Engineer
1.5k
salaries
| ₹3.8 L/yr - ₹15.7 L/yr |
System Analyst
1.1k
salaries
| ₹6.3 L/yr - ₹22.6 L/yr |
Senior Software Developer
957
salaries
| ₹5.5 L/yr - ₹20.5 L/yr |
Accenture
Wipro
Cognizant
Capgemini